Application Load Balancer (ALB) Ingress memungkinkan Anda menggunakan anotasi alb.ingress.kubernetes.io/actions.<Service name> untuk mengonfigurasi grup server untuk Layanan. Anda dapat mengaitkan pod dalam kluster dan Instance Elastic Compute Service (ECS) di luar kluster dengan Layanan melalui nama Layanan atau ID grup server. Untuk mengaitkan Instance ECS dengan instance ALB di virtual private cloud (VPC) di wilayah berbeda, gunakan kombinasi ALB, router transit, dan Cloud Enterprise Network (CEN). Metode ini juga dapat digunakan untuk mengaitkan server lokal dengan instance ALB. Topik ini menjelaskan cara mengonfigurasi grup server hybrid, mengaitkan Instance ECS dengan instance ALB di wilayah berbeda, serta mengaitkan server lokal dengan instance ALB.
Daftar isi
Catatan penggunaan
Nama Layanan dalam anotasi
alb.ingress.kubernetes.io/actions.<Service name>harus sesuai dengan yang tercantum di bawah bidangbackendpada bagianrules.Saat mengonfigurasi grup server, atur nama port Layanan di bawah bidang
backendpada bagianrulesmenjadiuse-annotation.Anda dapat menggunakan anotasi
alb.ingress.kubernetes.io/actions.<Service name>untuk mengaitkan beberapa grup server dengan instance ALB.Anda dapat mengaitkan hingga lima grup server dengan instance ALB dasar.
Pengaturan
ServerGroupIDakan berlaku saat menggunakan pengaturanServerGroupIDdanServiceName+ServicePortsecara bersamaan untuk mengaitkan grup server.
Skenario 1: Meneruskan permintaan ke beberapa Layanan dalam kluster ACK atau kluster ACK Serverless
Prasyarat
VPC bernama VPC1 dibuat di suatu wilayah. Dua vSwitch bernama VSW1 dan VSW2 dibuat di zona berbeda dari VPC1. Untuk informasi lebih lanjut, lihat Buat dan Kelola VPC dan Buat dan Kelola vSwitch.
Kluster Container Service for Kubernetes (ACK) atau kluster ACK Serverless dibuat di VPC1. Untuk informasi lebih lanjut, lihat Membuat Kluster ACK Terkelola dan Membuat Kluster ACK Serverless.
Kontroler ALB Ingress diinstal di kluster ACK atau kluster ACK Serverless. Untuk informasi lebih lanjut, lihat Kelola Kontroler ALB Ingress.
Instance ALB dibuat dari ALBConfig di kluster ACK atau kluster ACK Serverless, serta Layanan bernama
tea-svcdancoffee-svcditerapkan di kluster. Untuk informasi lebih lanjut, lihat Akses Layanan menggunakan ALB Ingress.
Skenario
Dalam gambar berikut, pengaturan ServiceName+ServicePort digunakan untuk mengaitkan beberapa grup server dengan ALB Ingress. Beberapa aturan pengalihan dikonfigurasi untuk ALB Ingress agar meneruskan permintaan ke Layanan berbeda dalam kluster.
Prosedur
Konfigurasikan ALB Ingress.
Buat file bernama
tea-ingress.yamldan tambahkan konten berikut ke file tersebut. Terapkan file ini untuk meneruskan permintaan ke beberapa Layanan dalam kluster.# Meneruskan permintaan ke Layanan berbeda berdasarkan nama host dan jalur permintaan serta tentukan bobot setiap Layanan. apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: tea-ingress annotations: alb.ingress.kubernetes.io/actions.forward: | [{ "type": "ForwardGroup", "ForwardConfig": { "ServerGroups" : [{ "ServiceName": "tea-svc", "Weight": 80, "ServicePort": 80 }, { "ServiceName": "coffee-svc", "Weight": 20, "ServicePort": 80 }] } }] spec: ingressClassName: alb rules: - host: demo.domain.ingress.top http: paths: - path: /path pathType: Prefix backend: service: name: forward port: name: use-annotationAkses Layanan menggunakan CLI. Untuk informasi lebih lanjut, lihat bagian Langkah 4: Akses Layanan dari topik "Akses Layanan menggunakan ALB Ingress".
Skenario 2: Meneruskan permintaan ke pod yang diterapkan dalam kluster ACK atau kluster ACK Serverless dan Instance ECS yang diterapkan di luar kluster
Prasyarat
VPC bernama VPC1 dibuat di suatu wilayah. Untuk informasi lebih lanjut, lihat Membuat dan Mengelola VPC.
Kluster ACK atau kluster ACK Serverless dibuat di VPC1. Untuk informasi lebih lanjut, lihat Membuat Kluster ACK Terkelola dan Membuat Kluster ACK Serverless.
Setidaknya satu Instance ECS dibuat di VPC1, dan layanan web diterapkan pada Instance ECS. Untuk informasi lebih lanjut, lihat Buat Instance di Tab Peluncuran Kustom dan Deploy an LNMP stack.
Grup server dibuat. Untuk informasi lebih lanjut, lihat Membuat dan Mengelola Grup Server.
Instance ECS ditambahkan ke grup server yang Anda buat. Untuk informasi lebih lanjut, lihat Membuat dan Mengelola Grup Server.
Anotasi
alb.ingress.kubernetes.io/actions.<Service name>digunakan untuk mengonfigurasi aturan pengalihan dan mengaitkan grup server dengan ALB Ingress.
Skenario
Dalam gambar berikut, ALB Ingress digunakan untuk meneruskan permintaan ke pod dalam kluster dan Instance ECS di luar kluster. Untuk melakukannya, Anda perlu membuat grup server di konsol ALB atau dengan memanggil API ALB, dan menambahkan Instance ECS ke grup server. Kemudian, catat ID grup server dan tentukan ID tersebut dalam konfigurasi ALB Ingress.
Prosedur
Konfigurasikan ALB Ingress.
Buat file bernama
tea-ingress.yamldan tambahkan konten berikut ke file tersebut. Terapkan file ini untuk meneruskan permintaan ke pod dalam kluster dan Instance ECS di luar kluster.apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: tea-ingress annotations: alb.ingress.kubernetes.io/actions.forward: | [{ "type": "ForwardGroup", "ForwardConfig": { "ServerGroups" : [{ "ServiceName": "tea-svc", "Weight": 30, "ServicePort": 80 }, { "ServiceName": "coffee-svc", "Weight": 20, "ServicePort": 80 }, { "ServerGroupID": "sgp-71aexb9y93ypo*****", "Weight": 30 }, { "ServerGroupID": "sgp-slygpbvm2cydo*****", "Weight": 20 }] } }] spec: ingressClassName: alb rules: - host: demo.domain.ingress.top http: paths: - path: /path pathType: Prefix backend: service: name: forward port: name: use-annotationAkses Layanan menggunakan CLI. Untuk informasi lebih lanjut, lihat Akses Layanan menggunakan ALB Ingress.
Skenario 3: Meneruskan permintaan ke pod dalam kluster dan Instance ECS dalam VPC yang diterapkan di wilayah berbeda
Prasyarat
Dua VPC dibuat di wilayah berbeda. vSwitch dibuat di zona berbeda dari setiap VPC. Sebagai contoh, VPC1 dibuat di wilayah Tiongkok (Chengdu) dan VPC2 dibuat di wilayah Tiongkok (Hangzhou).
VSW1 dan VSW2 dibuat di VPC1. VSW1 diterapkan di Zona A dan VSW2 diterapkan di Zona B.
VSW3 dan VSW4 dibuat di VPC2. VSW3 diterapkan di Zona H dan VSW4 diterapkan di Zona I.
Untuk informasi lebih lanjut, lihat Buat dan Kelola VPC dan Buat dan Kelola vSwitch.
Kluster ACK atau kluster ACK Serverless dibuat di VPC1, dan instance ALB dibuat dari ALBConfig di kluster tersebut. Untuk informasi lebih lanjut, lihat Buat Kluster ACK Terkelola dan Akses Layanan menggunakan ALB Ingress.
Setidaknya satu Instance ECS dibuat di VPC2, dan layanan web diterapkan pada Instance ECS. Untuk informasi lebih lanjut, lihat Buat Instance di Tab Peluncuran Kustom dan Deploy an LNMP stack.
Instance CEN dibuat dan rencana bandwidth dikaitkan dengan instance CEN. Untuk informasi lebih lanjut, lihat Instance CEN dan bagian Beli Rencana Bandwidth dari topik "Bekerja dengan Rencana Bandwidth".
Router transit dibuat di wilayah China (Chengdu). Router transit lain dibuat di wilayah China (Hangzhou). Untuk informasi lebih lanjut, lihat bagian Buat Router Transit dari topik "Router Transit".
Skenario
Dalam gambar berikut, ALB Ingress digunakan untuk meneruskan permintaan ke pod dalam kluster dan Instance ECS dalam VPC di wilayah berbeda. Untuk melakukannya, Anda perlu membuat instance CEN, lampirkan VPC1 dan VPC2 ke instance CEN, dan tambahkan Instance ECS di VPC2 ke grup server. Kemudian, catat ID grup server dan tentukan ID tersebut dalam konfigurasi ALB Ingress.
Sebagai contoh, kluster ACK atau kluster ACK Serverless dibuat di VPC1 di wilayah Tiongkok (Chengdu), dan instance ALB dibuat dari ALBConfig di VPC1. Anda dapat menggunakan ALB bersama dengan CEN untuk meneruskan permintaan ke Instance ECS di VPC2 di wilayah Tiongkok (Hangzhou).
Prosedur
Konfigurasikan instance CEN dan buat koneksi VPC antar-wilayah.
Untuk informasi lebih lanjut, lihat Tentukan Server Backend yang Berada di VPC di Wilayah Berbeda untuk ALB.
Tambahkan Instance ECS di VPC2 ke grup server instance ALB.
Untuk detail lebih lanjut, lihat bagian Tambahkan server backend pada topik "Buat dan kelola grup server".
Gunakan anotasi
alb.ingress.kubernetes.io/actions.<Service name>untuk mengonfigurasi aturan pengalihan, mengaitkan grup server dengan ALB Ingress, serta meneruskan permintaan ke pod dalam kluster dan Instance ECS di VPC2.Buat file bernama
tea-ingress.yamldan tambahkan konten berikut ke dalam file tersebut:apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: tea-ingress annotations: alb.ingress.kubernetes.io/actions.forward: | [{ "type": "ForwardGroup", "ForwardConfig": { "ServerGroups" : [{ "ServiceName": "tea-svc", "Weight": 30, "ServicePort": 80 }, { "ServiceName": "coffee-svc", "Weight": 20, "ServicePort": 80 }, { "ServerGroupID": "sgp-71aexb9y93ypo*****", "Weight": 30 }, { "ServerGroupID": "sgp-slygpbvm2cydo*****", "Weight": 20 }] } }] spec: ingressClassName: alb rules: - host: demo.domain.ingress.top http: paths: - path: /path pathType: Prefix backend: service: name: forward port: name: use-annotation
Skenario 4: Meneruskan permintaan ke pod dalam kluster dan server lokal
Prasyarat
Instance CEN dibuat dan router transit dibuat untuk instance CEN. Untuk informasi lebih lanjut, lihat Instance CEN dan bagian Buat Router Transit dari topik "Router Transit".
Rangkaian Express Connect dan virtual border router (VBR) dibuat. Untuk informasi lebih lanjut, lihat Mode Klasik dan Buat dan Kelola VBR.
Catatan penggunaan
Untuk informasi lebih lanjut tentang catatan penggunaan untuk mengaitkan server lokal dengan instance ALB, lihat bagian Tambahkan Server Lokal ke Instance ALB dalam Wilayah yang Sama dari topik "Tambahkan Server Lokal ke Instance ALB dalam Wilayah yang Sama".
Skenario
Dalam gambar berikut, ALB Ingress digunakan untuk meneruskan permintaan ke pod dalam kluster dan server lokal. Untuk mencapai ini, Anda perlu mengonfigurasi instance CEN, sirkuit Express Connect, dan VBR, serta menambahkan server lokal ke grup server. Catat ID grup server dan tentukan ID tersebut dalam konfigurasi ALB Ingress.
Sebagai contoh, kluster ACK atau kluster ACK Serverless diterapkan di VPC1 di wilayah China (Chengdu), dan instance ALB dibuat dari ALBConfig di VPC tersebut. Anda dapat menggunakan kombinasi ALB, CEN, VBR, dan Express Connect untuk meneruskan permintaan ke server lokal di wilayah tersebut. Gambar berikut menunjukkan kombinasi tersebut.
Prosedur
Konfigurasikan instance CEN, lampirkan VBR dan VPC1 tempat instance ALB berada ke router transit, dan gunakan VBR untuk menghubungkan pusat data ke Alibaba Cloud. Untuk informasi lebih lanjut, lihat Tambahkan Server Lokal ke Instance ALB dalam Wilayah yang Sama.
Gunakan anotasi
alb.ingress.kubernetes.io/actions.<Service name>untuk mengonfigurasi aturan pengalihan, mengaitkan grup server dengan ALB Ingress, dan meneruskan permintaan ke pod dalam kluster dan server lokal.Buat file bernama
tea-ingress.yamldan tambahkan konten berikut ke file tersebut:apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: tea-ingress annotations: alb.ingress.kubernetes.io/actions.forward: | [{ "type": "ForwardGroup", "ForwardConfig": { "ServerGroups" : [{ "ServiceName": "tea-svc", "Weight": 30, "ServicePort": 80 }, { "ServiceName": "coffee-svc", "Weight": 20, "ServicePort": 80 }, { "ServerGroupID": "sgp-ihydxb9y93ypo*****", "Weight": 30 }, { "ServerGroupID": "sgp-pd0ipbvm2cydo*****", "Weight": 20 }] } }] spec: ingressClassName: alb rules: - host: demo.domain.ingress.top http: paths: - path: /path pathType: Prefix backend: service: name: forward port: name: use-annotation