Untuk mengaktifkan fitur load balancing lanjutan, gunakan anotasi dalam file YAML Service guna mengonfigurasi tiga jenis resource: CLB, listener, dan grup server backend.
Indeks
Konten utama | Tautan cepat |
Anotasi
Anotasi bersifat case-sensitive.
Sebelum menggunakan anotasi, periksa topik ini untuk versi Cloud Controller Manager yang didukung. Untuk meningkatkan Cloud Controller Manager, lihat manage components. Untuk log perubahan CCM, lihat Cloud Controller Manager.
Sejak 11 September 2019, awalan
alicloudpadaannotationstelah diperbarui menjadialibaba-cloud.Contohnya:
Sebelum pembaruan:
service.beta.kubernetes.io/alicloud-loadbalancer-idSetelah pembaruan:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-idSistem tetap kompatibel dengan format
alicloud. Tidak diperlukan perubahan pada konfigurasi yang sudah ada.
Operasi CLB
Buat load balancer publik
apiVersion: v1
kind: Service
metadata:
name: nginx
namespace: default
spec:
ports:
- port: 80
protocol: TCP
targetPort: 80
selector:
run: nginx
type: LoadBalancerBuat load balancer pribadi
Anotasi: service.beta.kubernetes.io/alibaba-cloud-loadbalancer-address-type
Deskripsi | Default | Versi CCM yang didukung |
Menentukan jenis alamat load balancer. Nilai yang valid:
| internet | v1.9.3 dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-address-type: "intranet"
name: nginx
namespace: default
spec:
ports:
- port: 80
protocol: TCP
targetPort: 80
selector:
run: nginx
type: LoadBalancerTentukan spesifikasi load balancer
Anotasi: Beberapa, seperti yang ditunjukkan pada tabel berikut.
Anotasi | Deskripsi | Default | Versi CCM yang didukung |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-instance-charge-type | Menentukan metode penagihan instans. Gunakan
| PayBySpec | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-spec | Spesifikasi instans load balancer. Untuk informasi selengkapnya, lihat CreateLoadBalancer. Gunakan anotasi ini untuk membuat instans CLB dengan spesifikasi tertentu, atau untuk memperbarui spesifikasi instans yang sudah ada. Penting Jika Anda memodifikasi spesifikasi di konsol CLB (operasi ini hanya didukung untuk instans bayar-per-spesifikasi), CCM dapat mengembalikan perubahan tersebut. | slb.s1.small | v1.9.3 dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-instance-charge-type: "PayBySpec"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-spec: "slb.s1.small"
name: nginx
namespace: default
spec:
ports:
- port: 443
protocol: TCP
targetPort: 443
selector:
run: nginx
type: LoadBalancerGunakan load balancer yang sudah ada
Anotasi: service.beta.kubernetes.io/alibaba-cloud-loadbalancer-id
Deskripsi | Default | Versi CCM yang didukung |
ID instans load balancer. Gunakan anotasi ini untuk menentukan instans CLB yang sudah ada.
| Tidak ada | v1.9.3.81-gca19cd4-aliyun dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-id: "${YOUR_LOADBALANCER_ID}" # Beberapa kelompok kebijakan tidak dapat dikonfigurasi.
name: nginx
namespace: default
spec:
ports:
- port: 443
protocol: TCP
targetPort: 443
selector:
run: nginx
type: LoadBalancerGunakan load balancer yang sudah ada dan timpa listener
Anotasi: Beberapa, seperti yang ditunjukkan pada tabel berikut. Operasi ini secara paksa menimpa listener yang sudah ada. Jika terjadi konflik port listener, listener yang sudah ada akan dihapus.
Anotasi | Deskripsi | Default | Versi CCM yang didukung |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-id | ID instans CLB yang sudah ada.
| ||
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-force-override-listeners | Menentukan apakah akan secara paksa menimpa listener instans CLB. Nilai yang valid:
Penting Saat Anda menggunakan kembali CLB yang sudah ada dan mengatur | "false" | v1.9.3.81-gca19cd4-aliyun dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-id: "${YOUR_LOADBALANCER_ID}"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-force-override-listeners: "true"
name: nginx
namespace: default
spec:
ports:
- port: 443
protocol: TCP
targetPort: 443
selector:
run: nginx
type: LoadBalancerTentukan zona ketersediaan primer dan cadangan
Anotasi: Beberapa, seperti yang ditunjukkan pada tabel berikut. Zona ketersediaan primer dan cadangan tidak dapat diubah setelah instans dibuat.
Fitur ini tidak tersedia di semua wilayah. Lihat halaman pembuatan instans CLB untuk informasi ketersediaannya.
Anotasi | Deskripsi | Default | Versi CCM yang didukung |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-master-zoneid | ID zona ketersediaan primer. | Tidak ada | v1.9.3.10-gfb99107-aliyun dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-slave-zoneid | ID zona ketersediaan cadangan. | Tidak ada | v1.9.3.10-gfb99107-aliyun dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-master-zoneid: "cn-hangzhou-k"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-slave-zoneid: "cn-hangzhou-j"
name: nginx
namespace: default
spec:
ports:
- port: 80
protocol: TCP
targetPort: 80
selector:
run: nginx
type: LoadBalancerBuat load balancer bayar-per-bandwidth
Anotasi: Beberapa, seperti yang ditunjukkan pada tabel berikut. Dua anotasi berikut wajib digunakan.
Anotasi | Deskripsi | Default | Versi CCM yang didukung |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-charge-type | Metode penagihan instans load balancer. Nilai yang valid:
| paybytraffic | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-bandwidth | Bandwidth puncak instans load balancer. Anotasi ini hanya berlaku untuk instans load balancer publik. Untuk batasan lainnya, lihat Ubah metode penagihan instans load balancer publik. | 50 | v1.9.3.10-gfb99107-aliyun dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-charge-type: "paybybandwidth"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-bandwidth: "2"
name: nginx
namespace: default
spec:
ports:
- port: 443
protocol: TCP
targetPort: 443
selector:
run: nginx
type: LoadBalancerTentukan VSwitch untuk load balancer
Anotasi: Beberapa, seperti yang ditunjukkan pada tabel berikut. Dua anotasi berikut wajib digunakan.
Anotasi | Deskripsi | Default | Versi CCM yang didukung |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-address-type | Menentukan jenis alamat load balancer. Nilai yang valid:
| internet | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-vswitch-id | ID VSwitch tempat instans load balancer berada. VSwitch harus berada di VPC yang sama dengan kluster Kubernetes. Anotasi ini mengharuskan pengaturan Anda dapat menemukan ID VSwitch di konsol VPC. | Tidak ada | v1.9.3 dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-address-type: "intranet"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-vswitch-id: "${YOUR_VSWITCH_ID}"
name: nginx
namespace: default
spec:
ports:
- port: 443
protocol: TCP
targetPort: 443
selector:
run: nginx
type: LoadBalancerTentukan alamat IP untuk load balancer pribadi
Anotasi: Beberapa, seperti yang ditunjukkan pada tabel berikut. Tiga anotasi berikut wajib digunakan.
Anotasi | Deskripsi | Default | Versi CCM yang didukung |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-address-type | Menentukan jenis alamat load balancer. Nilai yang valid:
| internet | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-vswitch-id | ID VSwitch tempat instans load balancer berada. VSwitch harus berada di VPC yang sama dengan kluster Kubernetes. Anotasi ini mengharuskan pengaturan Anda dapat menemukan ID VSwitch di konsol VPC. | Tidak ada | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-ip | Alamat IP instans load balancer pribadi.
| Tidak ada | v2.7.0 dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-address-type: "intranet"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-vswitch-id: "${YOUR_VSWITCH_ID}"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-ip: "192.168.x.x"
name: nginx
namespace: default
spec:
type: LoadBalancer
ports:
- port: 80
targetPort: 80
name: http
selector:
app: nginxTambahkan tag ke load balancer
Anotasi: service.beta.kubernetes.io/alibaba-cloud-loadbalancer-additional-resource-tags
Deskripsi | Default | Versi CCM yang didukung |
Daftar tag yang dipisahkan koma untuk ditambahkan, contohnya | Tidak ada | v1.9.3 dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-additional-resource-tags: "Key1=Value1,Key2=Value2"
name: nginx
namespace: default
spec:
ports:
- port: 80
protocol: TCP
targetPort: 80
selector:
run: nginx
type: LoadBalancerBuat load balancer IPv6
Anotasi: service.beta.kubernetes.io/alibaba-cloud-loadbalancer-ip-version
Deskripsi | Default | Versi CCM yang didukung |
Versi IP instans load balancer. Versi IP tidak dapat diubah setelah instans dibuat. Untuk menggunakan fitur ini, kube-proxy di kluster Anda harus berjalan dalam mode IPVS. Nilai yang valid:
| ipv4 | v1.9.3.220-g24b1885-aliyun dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-ip-version: "ipv6"
name: nginx
spec:
ports:
- port: 80
protocol: TCP
targetPort: 80
selector:
app: nginx
type: LoadBalancerAktifkan perlindungan penghapusan untuk load balancer
Anotasi: service.beta.kubernetes.io/alibaba-cloud-loadbalancer-delete-protection
Deskripsi | Default | Versi CCM yang didukung |
Menentukan apakah perlindungan penghapusan diaktifkan untuk instans load balancer. Nilai yang valid:
Penting Perhatikan bahwa jika Anda mengaktifkan perlindungan penghapusan di konsol CLB, instans load balancer masih dapat dihapus dengan menjalankan perintah | on | v1.9.3.313-g748f81e-aliyun dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-delete-protection: "on"
name: nginx
spec:
externalTrafficPolicy: Local
ports:
- port: 80
protocol: TCP
targetPort: 80
selector:
app: nginx
type: LoadBalancerAktifkan perlindungan modifikasi untuk load balancer
Anotasi: service.beta.kubernetes.io/alibaba-cloud-loadbalancer-modification-protection
Deskripsi | Default | Versi CCM yang didukung |
Menentukan status perlindungan modifikasi untuk instans load balancer. Nilai yang valid:
| ConsoleProtection | v1.9.3.313-g748f81e-aliyun dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-modification-protection: "ConsoleProtection"
name: nginx
spec:
externalTrafficPolicy: Local
ports:
- port: 80
protocol: TCP
targetPort: 80
selector:
app: nginx
type: LoadBalancerTentukan nama load balancer
Anotasi: service.beta.kubernetes.io/alibaba-cloud-loadbalancer-name
Deskripsi | Default | Versi CCM yang didukung |
Nama instans load balancer. Nama harus terdiri dari 2 hingga 128 karakter, dimulai dengan huruf atau karakter Tionghoa, dan dapat berisi angka, titik (.), garis bawah (_), dan tanda hubung (-). | Tidak ada | v1.9.3.313-g748f81e-aliyun dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-name: "your-svc-name"
name: nginx
spec:
externalTrafficPolicy: Local
ports:
- port: 80
protocol: TCP
targetPort: 80
selector:
app: nginx
type: LoadBalancerTentukan kelompok sumber daya untuk load balancer
Anotasi: service.beta.kubernetes.io/alibaba-cloud-loadbalancer-resource-group-id
Deskripsi | Default | Versi CCM yang didukung |
ID kelompok sumber daya untuk instans load balancer. ID kelompok sumber daya tidak dapat diubah setelah ditetapkan. Anda dapat menemukan ID kelompok sumber daya di konsol Resource Management. | Tidak ada | v1.9.3.313-g748f81e-aliyun dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-resource-group-id: "rg-xxxx"
name: nginx
spec:
externalTrafficPolicy: Local
ports:
- port: 80
protocol: TCP
targetPort: 80
selector:
app: nginx
type: LoadBalancerTetapkan hostname untuk Service
Anotasi: Beberapa, seperti yang ditunjukkan pada tabel berikut.
Anotasi | Deskripsi | Default | Versi CCM yang didukung |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-protocol-port | Pisahkan beberapa nilai dengan koma (,), contohnya | Tidak ada | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-hostname | Menentukan hostname untuk Service. Hostname harus sesuai dengan konvensi penamaan DNS. Perhatikan hal berikut:
| Tidak ada | v2.3.0 dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-protocol-port: "http:80"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-hostname: "${your_service_hostname}"
name: nginx-svc
namespace: default
spec:
ports:
- name: http
port: 80
protocol: TCP
targetPort: 80
selector:
app: nginx
type: LoadBalancerOutput yang diharapkan:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
nginx-svc LoadBalancer 47.100.XX.XX www.example.com 80/TCP,443/TCP 10sBuat load balancer bayar sesuai konsumsi
Anotasi: service.beta.kubernetes.io/alibaba-cloud-loadbalancer-instance-charge-type
Deskripsi | Default | Versi CCM yang didukung |
Metode penagihan instans. Nilai yang valid:
Penting Anda tidak dapat menetapkan spesifikasi untuk instans load balancer yang ditagih berdasarkan konsumsi. Nilai | PayBySpec | v2.4.0 dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-instance-charge-type: "PayByCLCU"
name: nginx
namespace: default
spec:
ports:
- port: 80
protocol: TCP
targetPort: 80
selector:
run: nginx
type: LoadBalancerAksi listener umum
Konfigurasikan persistensi sesi TCP
Anotasi: service.beta.kubernetes.io/alibaba-cloud-loadbalancer-persistence-timeout
Deskripsi | Default | Versi CCM yang didukung |
Menentukan waktu persistensi sesi untuk listener TCP. Jika instans load balancer memiliki beberapa listener TCP, pengaturan ini berlaku untuk semuanya secara default. Nilainya dalam detik dan berkisar antara 0 hingga 3600. Nilai default adalah 0, yang menonaktifkan persistensi sesi. Untuk informasi selengkapnya, lihat CreateLoadBalancerTCPListener. | 0 | v1.9.3 dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-persistence-timeout: "1800"
name: nginx
namespace: default
spec:
ports:
- port: 443
protocol: TCP
targetPort: 443
selector:
run: nginx
type: LoadBalancerKonfigurasikan sesi lengket (insert cookie)
Fitur ini dikonfigurasi menggunakan beberapa anotasi, seperti yang ditunjukkan pada tabel berikut. Untuk menggunakan metode insert cookie, tiga anotasi ini wajib digunakan.
Fitur ini hanya berlaku untuk instans load balancer dengan listener HTTP atau HTTPS.
Secara default, pengaturan sesi lengket ini berlaku untuk semua listener HTTP dan HTTPS yang dikonfigurasi.
Anotasi | Deskripsi | Default | Versi CCM yang didukung |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-sticky-session | Mengaktifkan atau menonaktifkan sesi lengket. Pengaturan ini hanya berlaku untuk listener HTTP dan HTTPS. Nilai yang valid:
Untuk informasi selengkapnya, lihat CreateLoadBalancerHTTPListener dan CreateLoadBalancerHTTPSListener. | off | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-sticky-session-type | Menentukan metode penanganan cookie. Pengaturan ini hanya efektif untuk listener HTTP dan HTTPS. Anotasi ini wajib digunakan saat
Untuk informasi selengkapnya, lihat CreateLoadBalancerHTTPListener dan CreateLoadBalancerHTTPSListener. | Tidak ada | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-cookie-timeout | Timeout cookie dalam detik. Rentang nilai yang valid adalah 1 hingga 86.400. Anotasi ini wajib digunakan saat Untuk informasi selengkapnya, lihat CreateLoadBalancerHTTPListener dan CreateLoadBalancerHTTPSListener. | Tidak ada | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-cookie | Nama cookie yang dikonfigurasi di server. Nama harus terdiri dari 1 hingga 200 karakter dan hanya berisi huruf ASCII dan angka. Tidak boleh berisi koma (,), titik koma (;), atau spasi, dan tidak boleh dimulai dengan tanda dolar ($). Anotasi ini wajib digunakan saat Untuk informasi selengkapnya, lihat CreateLoadBalancerHTTPListener dan CreateLoadBalancerHTTPSListener. | Tidak ada | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-protocol-port | Menentukan port listener yang diterapkan pengaturan sesi lengket. Secara default, pengaturan berlaku untuk semua listener. Pisahkan beberapa entri dengan koma (,). Contoh: | Tidak ada | v1.9.3 dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-sticky-session: "on"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-sticky-session-type: "insert"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-cookie-timeout: "1800"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-protocol-port: "http:80"
name: nginx
namespace: default
spec:
ports:
- port: 80
protocol: TCP
targetPort: 80
selector:
run: nginx
type: LoadBalancerKonfigurasikan daftar kontrol akses
Catatan: Tiga anotasi pada tabel berikut wajib digunakan.
Sebelum menggunakan anotasi ini, buat daftar kontrol akses di konsol Classic Load Balancer (CLB) dan catat ID-nya.
Anotasi | Deskripsi | Default | Versi yang didukung |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-acl-status | Menentukan apakah akan mengaktifkan kontrol akses. Nilai yang valid:
| off | v1.9.3.164-g2105d2e-aliyun dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-acl-id | ID daftar kontrol akses yang akan dikaitkan dengan listener. Parameter ini wajib digunakan saat | Tidak ada | v1.9.3.164-g2105d2e-aliyun dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-acl-type | Jenis kontrol akses. Nilai yang mungkin:
| Tidak ada | v1.9.3.164-g2105d2e-aliyun dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-acl-status: "on"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-acl-id: "${YOUR_ACL_ID}"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-acl-type: "white"
name: nginx
namespace: default
spec:
ports:
- port: 443
protocol: TCP
targetPort: 443
selector:
run: nginx
type: LoadBalancerKonfigurasikan penerusan port untuk load balancer
Penerusan port mengalihkan permintaan dari port HTTP ke port HTTPS.
Anotasi: Tiga anotasi berikut wajib digunakan.
Anotasi | Deskripsi | Default | Versi CCM yang didukung |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-protocol-port | Pisahkan beberapa nilai dengan koma, contohnya | Tidak ada | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-cert-id | ID sertifikat Alibaba Cloud. Masuk ke konsol CLB dan lihat ID sertifikat pada halaman Certificates. Catatan Untuk membuat sertifikat, lihat Pilih sertifikat yang dikeluarkan Alibaba Cloud. | Tidak ada | v1.9.3.164-g2105d2e-aliyun dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-forward-port | Meneruskan permintaan HTTP ke port HTTPS, contohnya | Tidak ada | v1.9.3.164-g2105d2e-aliyun dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-protocol-port: "https:443,http:80"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-cert-id: "${YOUR_CERT_ID}"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-forward-port: "80:443"
name: nginx
namespace: default
spec:
ports:
- name: https
port: 443
protocol: TCP
targetPort: 80
- name: http
port: 80
protocol: TCP
targetPort: 80
selector:
run: nginx
type: LoadBalancerAlgoritma penjadwalan load balancer
Anotasi: service.beta.kubernetes.io/alibaba-cloud-loadbalancer-scheduler
Deskripsi | Default | Versi yang didukung |
Algoritma penjadwalan. Nilai yang valid:
| rr | v1.9.3 dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-scheduler: "wrr"
name: nginx
namespace: default
spec:
ports:
- port: 443
protocol: TCP
targetPort: 443
selector:
run: nginx
type: LoadBalancerBuat listener UDP
apiVersion: v1
kind: Service
metadata:
name: nginx
namespace: default
spec:
ports:
- port: 80
protocol: UDP
targetPort: 80
selector:
run: nginx
type: LoadBalancerBuat listener HTTP
Anotasi: service.beta.kubernetes.io/alibaba-cloud-loadbalancer-protocol-port
Deskripsi | Default | Versi CCM yang didukung |
Pisahkan beberapa nilai dengan koma, contohnya | Tidak ada | v1.9.3 dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-protocol-port: "http:80"
name: nginx
namespace: default
spec:
ports:
- port: 80
protocol: TCP
targetPort: 80
selector:
run: nginx
type: LoadBalancerBuat listener HTTPS
Anotasi: Untuk anotasi yang diperlukan, lihat tabel berikut.
Lapisan CLB mendekripsi permintaan HTTPS dan mengirimkannya ke Pod backend sebagai permintaan HTTP.
Anotasi | Deskripsi | Default | Versi CCM yang didukung |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-protocol-port | Pisahkan beberapa nilai dengan koma, contohnya | Tidak ada | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-cert-id | ID sertifikat Alibaba Cloud. Login ke konsol CLB dan lihat ID sertifikat di halaman Certificates. Catatan Untuk membuat sertifikat, lihat Pilih sertifikat yang dikeluarkan Alibaba Cloud. | Tidak ada | v1.9.3.164-g2105d2e-aliyun dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-protocol-port: "https:443"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-cert-id: "${YOUR_CERT_ID}"
name: nginx
namespace: default
spec:
ports:
- port: 443
protocol: TCP
targetPort: 80
selector:
run: nginx
type: LoadBalancerBuat listener dengan pemeriksaan kesehatan
Konfigurasikan pemeriksaan kesehatan TCP
Anotasi: Tabel berikut mencantumkan anotasi yang diperlukan.
Secara default, pemeriksaan kesehatan diaktifkan untuk port TCP.
Anotasi | Deskripsi | Default | Versi CCM yang didukung |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-switch | Menentukan apakah akan mengaktifkan pemeriksaan kesehatan untuk listener TCP dan UDP. Nilai yang valid:
| on | v2.6.0 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-type | Jenis pemeriksaan kesehatan. Nilai yang valid:
Untuk informasi selengkapnya, lihat CreateLoadBalancerTCPListener. | tcp | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-connect-timeout | Waktu tunggu respons pemeriksaan kesehatan, dalam detik. Jika server backend tidak merespons dalam periode ini, pemeriksaan kesehatan gagal. Nilai yang valid: 1–300. Jika nilai | 5 | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-healthy-threshold | Jumlah pemeriksaan kesehatan berhasil berturut-turut yang diperlukan untuk mengubah status server backend dari Nilai yang valid: 2–10. Untuk informasi selengkapnya, lihat CreateLoadBalancerTCPListener. | 3 | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-unhealthy-threshold | Jumlah pemeriksaan kesehatan gagal berturut-turut yang diperlukan untuk mengubah status server backend dari | 3 | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-interval | Interval antar pemeriksaan kesehatan, dalam detik. Nilai yang valid: 1–50. Untuk informasi selengkapnya, lihat CreateLoadBalancerTCPListener. | 2 | v1.9.3 dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-switch: "on"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-type: "tcp"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-connect-timeout: "8"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-healthy-threshold: "4"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-unhealthy-threshold: "4"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-interval: "3"
name: nginx
namespace: default
spec:
ports:
- port: 80
protocol: TCP
targetPort: 80
selector:
run: nginx
type: LoadBalancerKonfigurasikan pemeriksaan kesehatan UDP
Anotasi: Beberapa, seperti yang ditunjukkan pada tabel berikut. Semua anotasi berikut wajib digunakan.
Secara default, pemeriksaan kesehatan diaktifkan untuk port UDP.
Anotasi | Deskripsi | Default | Versi CCM yang didukung |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-switch | Menentukan apakah akan mengaktifkan pemeriksaan kesehatan untuk listener TCP dan UDP. Nilai yang valid:
| on | v2.6.0 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-connect-timeout | Timeout respons untuk pemeriksaan kesehatan. Parameter ini berlaku untuk listener UDP. Jika server backend gagal merespons dalam timeout ini, pemeriksaan kesehatan gagal. Satuan: detik. Rentang nilai: [1, 300]. Jika nilai | 5 | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-healthy-threshold | Jumlah pemeriksaan kesehatan berhasil berturut-turut yang diperlukan untuk mengubah status server backend dari Rentang nilai: [2, 10]. Untuk informasi selengkapnya, lihat CreateLoadBalancerUDPListener. | 3 | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-unhealthy-threshold | Jumlah pemeriksaan kesehatan gagal berturut-turut yang diperlukan untuk mengubah status server backend dari | 3 | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-interval | Interval antar pemeriksaan kesehatan. Satuan: detik. Rentang nilai: [1, 50]. Untuk informasi selengkapnya, lihat CreateLoadBalancerUDPListener. | 2 | v1.9.3 dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-switch: "on"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-interval: "5"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-connect-timeout: "10"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-healthy-threshold: "3"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-unhealthy-threshold: "3"
name: nginx
namespace: default
spec:
ports:
- port: 80
protocol: UDP
targetPort: 80
selector:
run: nginx
type: LoadBalancerNonaktifkan pemeriksaan kesehatan untuk TCP dan UDP
Anotasi: service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-switch
Deskripsi | Default | Versi CCM yang didukung |
Menentukan apakah akan mengaktifkan pemeriksaan kesehatan untuk listener TCP dan UDP. Nilai yang valid:
| on | v2.6.0 atau yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-switch: "off" # Nonaktifkan pemeriksaan kesehatan.
name: nginx
namespace: default
spec:
ports:
- port: 443
protocol: TCP
targetPort: 443
selector:
run: nginx
type: LoadBalancerKonfigurasikan pemeriksaan kesehatan HTTP
Anotasi: Beberapa, seperti yang ditunjukkan pada tabel berikut.
Anotasi | Deskripsi | Default | Versi CCM yang didukung |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-flag | Nilai yang valid:
| off | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-type | Protokol untuk pemeriksaan kesehatan. Nilai yang valid:
Untuk informasi selengkapnya, lihat CreateLoadBalancerHTTPListener. | tcp | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-uri | Jalur URI untuk pemeriksaan kesehatan. Anotasi ini hanya diperlukan untuk pemeriksaan kesehatan HTTP. | Tidak ada | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-httpcode | Kode status HTTP yang menunjukkan pemeriksaan kesehatan berhasil. Pisahkan beberapa nilai dengan koma. Nilai yang valid:
Untuk informasi selengkapnya, lihat CreateLoadBalancerHTTPListener. | http_2xx | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-domain | Nama domain yang digunakan untuk pemeriksaan kesehatan. Nilai yang valid:
Untuk informasi selengkapnya, lihat CreateLoadBalancerHTTPListener. | Tidak ada | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-timeout | Waktu, dalam detik, untuk menunggu respons pemeriksaan kesehatan HTTP. Jika tidak ada respons dalam periode ini, pemeriksaan kesehatan gagal. Satuan: detik. Nilai yang valid: 1 hingga 300. Jika nilai Untuk informasi selengkapnya, lihat CreateLoadBalancerHTTPListener. | Tidak ada | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-healthy-threshold | Jumlah pemeriksaan kesehatan berhasil berturut-turut yang diperlukan sebelum server backend dianggap sehat (status berubah dari fail menjadi success). Nilai yang valid: 2 hingga 10. Untuk informasi selengkapnya, lihat CreateLoadBalancerHTTPListener. | 3 | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-unhealthy-threshold | Jumlah pemeriksaan kesehatan gagal berturut-turut yang diperlukan sebelum server backend dianggap tidak sehat (status berubah dari success menjadi fail). Nilai yang valid: 2 hingga 10. Untuk informasi selengkapnya, lihat CreateLoadBalancerHTTPListener. | 3 | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-interval | Interval antar pemeriksaan kesehatan. Satuan: detik. Nilai yang valid: 1 hingga 50. Untuk informasi selengkapnya, lihat CreateLoadBalancerHTTPListener. | 2 | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-protocol-port | Pisahkan beberapa nilai dengan koma, contohnya | Tidak ada | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-method | Metode HTTP yang digunakan untuk pemeriksaan kesehatan. Nilai yang valid:
| Tidak ada | v2.3.0 dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-flag: "on"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-type: "http"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-uri: "/test/index.html"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-healthy-threshold: "4"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-unhealthy-threshold: "4"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-timeout: "10"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-interval: "3"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-protocol-port: "http:80"
# Tetapkan kode status HTTP untuk pemeriksaan kesehatan (opsional)
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-httpcode: "http_4xx"
# Tetapkan nama domain untuk pemeriksaan kesehatan (opsional)
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-domain: "www.aliyun.com"
# Tetapkan metode pemeriksaan kesehatan (opsional)
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-health-check-method: "head"
name: nginx
namespace: default
spec:
ports:
- port: 80
protocol: TCP
targetPort: 80
selector:
run: nginx
type: LoadBalancerPengurasan koneksi
Anotasi: Beberapa, seperti yang ditunjukkan pada tabel berikut. Semua anotasi ini wajib digunakan.
Hanya TCP dan UDP yang didukung.
Anotasi | Deskripsi | Default | Versi CCM yang didukung |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-connection-drain | Mengaktifkan atau menonaktifkan pengurasan koneksi. Nilai yang valid:
| Tidak ada | v2.0.1 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-connection-drain-timeout | Menetapkan timeout pengurasan koneksi dalam detik. Rentang nilai yang valid adalah 10 hingga 900. | Tidak ada | v2.0.1 dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-connection-drain: "on"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-connection-drain-timeout: "30"
name: nginx
namespace: default
spec:
ports:
- port: 80
protocol: TCP
targetPort: 80
selector:
run: nginx
type: LoadBalancerKonfigurasikan header permintaan tambahan untuk listener
Konfigurasi: Gunakan anotasi pada tabel berikut untuk mengonfigurasi fitur ini.
Fitur ini hanya mendukung listener HTTP dan HTTPS.
Anotasi | Deskripsi | Default | Versi CCM yang didukung |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-protocol-port | Pisahkan beberapa nilai dengan koma, contohnya | Tidak ada | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-xforwardedfor-proto | Menentukan apakah akan menggunakan field header X-Forwarded-Proto untuk mengambil protokol listener instans CLB. Nilai yang valid:
| off | v2.1.0 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-xforwardedfor-slbport | Menentukan apakah akan menggunakan field header XForwardedFor_SLBPORT untuk mengambil port listener instans load balancer. Nilai yang valid:
| off | v2.9.1 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-xforwardedfor-clientsrcport | Menentukan apakah akan menggunakan field header XForwardedFor_ClientSrcPort untuk mengambil port sumber klien. Nilai yang valid:
| off | v2.9.1 dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-protocol-port: "http:80"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-xforwardedfor-proto: "on"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-xforwardedfor-slbport: "on"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-xforwardedfor-clientsrcport: "on"
name: nginx
namespace: default
spec:
ports:
- port: 80
protocol: TCP
targetPort: 80
selector:
run: nginx
type: LoadBalancerTetapkan timeout idle untuk listener
Anotasi: Lihat tabel berikut.
Fitur ini hanya mendukung listener yang menggunakan protokol HTTP atau HTTPS.
Anotasi | Deskripsi | Default | Versi CCM yang didukung |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-protocol-port | Pisahkan beberapa nilai dengan koma (,), contohnya | Tidak ada | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-idle-timeout | Menentukan timeout idle untuk listener. Satuan: detik. Nilai yang valid: [1, 60]. | 15 | v2.1.0 dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-protocol-port: "http:80"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-idle-timeout: "30"
name: nginx
namespace: default
spec:
ports:
- port: 80
protocol: TCP
targetPort: 80
selector:
run: nginx
type: LoadBalancerNonaktifkan HTTP/2 untuk listener
Anotasi: Beberapa anotasi digunakan, seperti yang ditunjukkan pada tabel berikut.
Fitur ini hanya tersedia untuk listener HTTPS.
Anotasi | Deskripsi | Default | Versi CCM yang didukung |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-protocol-port | Gunakan koma (,) untuk memisahkan beberapa nilai, contohnya | Tidak ada | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-cert-id | ID sertifikat di Alibaba Cloud. Masuk ke Konsol CLB dan temukan ID sertifikat di halaman Certificates. Catatan Untuk membuat sertifikat, lihat Pilih sertifikat yang dikeluarkan Alibaba Cloud. | Tidak ada | v1.9.3.164-g2105d2e-aliyun dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-http2-enabled | Mengaktifkan atau menonaktifkan fitur HTTP/2. Nilai yang valid:
| on | v2.1.0 dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-protocol-port: "https:443"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-cert-id: "${YOUR_CERT_ID}"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-http2-enabled: "off"
name: nginx
namespace: default
spec:
ports:
- port: 443
protocol: TCP
targetPort: 80
selector:
run: nginx
type: LoadBalancerTimeout permintaan untuk listener
Anotasi: Anotasi yang diperlukan tercantum pada tabel berikut.
Fitur ini hanya mendukung listener yang menggunakan protokol HTTP atau HTTPS.
Anotasi | Deskripsi | Default | Versi CCM yang didukung |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-protocol-port | Pisahkan beberapa nilai dengan koma, contohnya | Tidak ada | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-request-timeout | Menentukan timeout permintaan dalam detik. Nilainya harus antara 1 dan 180. Jika server backend tidak merespons dalam timeout yang ditentukan, load balancer mengembalikan error HTTP 504 ke klien. | 60 | v2.3.0 dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-protocol-port: "http:80"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-request-timeout: "60"
name: nginx
namespace: default
spec:
ports:
- port: 80
protocol: TCP
targetPort: 80
selector:
run: nginx
type: LoadBalancerTentukan timeout koneksi
Anotasi: service.beta.kubernetes.io/alibaba-cloud-loadbalancer-established-timeout
Hanya listener TCP yang didukung.
Deskripsi | Default | Versi CCM yang didukung |
Menentukan timeout koneksi dalam detik. Nilainya harus bilangan bulat dari 10 hingga 900. Untuk informasi selengkapnya, lihat CreateLoadBalancerTCPListener. | Tidak ada | v2.3.0 dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-established-timeout: "60"
name: nginx
namespace: default
spec:
ports:
- port: 80
protocol: TCP
targetPort: 80
selector:
run: nginx
type: LoadBalancerKonfigurasikan kebijakan keamanan listener
Anotasi: Lihat tabel berikut untuk anotasi yang diperlukan.
Hanya protokol HTTPS yang didukung.
Anotasi | Deskripsi | Default | Versi CCM yang didukung |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-protocol-port | Pisahkan beberapa nilai dengan koma, contohnya | Tidak ada | v1.9.3 dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-cert-id | Menentukan ID sertifikat Alibaba Cloud. Di konsol SLB, temukan ID sertifikat di halaman Certificates. Catatan Untuk membuat sertifikat, lihat Pilih sertifikat yang dikeluarkan Alibaba Cloud. | Tidak ada | v1.9.3.164-g2105d2e-aliyun dan yang lebih baru |
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-tls-cipher-policy | Menentukan kebijakan keamanan, yang menentukan versi protokol TLS dan paket sandi yang didukung untuk listener HTTPS. Untuk informasi selengkapnya, lihat CreateLoadBalancerHTTPSListener. Nilai yang valid:
| tls_cipher_policy_1_0 | v2.4.0 dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-protocol-port: "https:443,http:80"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-cert-id: "${YOUR_CERT_ID}"
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-tls-cipher-policy: "tls_cipher_policy_1_2"
name: nginx
namespace: default
spec:
ports:
- name: https
port: 443
protocol: TCP
targetPort: 443
- name: http
port: 80
protocol: TCP
targetPort: 80
selector:
run: nginx
type: LoadBalancerKonfigurasikan TCP dan UDP
apiVersion: v1
kind: Service
metadata:
name: nginx
namespace: default
spec:
ports:
- name: tcp
port: 80
protocol: TCP
targetPort: 80
- name: udp
port: 80
protocol: UDP
targetPort: 81
selector:
app: nginx
sessionAffinity: None
type: LoadBalancerKonfigurasikan Proxy Protocol untuk listener TCP dan UDP
Anotasi: service.beta.kubernetes.io/alibaba-cloud-loadbalancer-proxy-protocol
Deskripsi | Default | Versi yang didukung |
Mengaktifkan Proxy Protocol untuk listener TCP dan UDP. Saat diaktifkan, load balancer meneruskan alamat sumber klien ke server backend. Nilai yang valid:
Penting Fitur ini tidak mendukung migrasi mulus. Mengaktifkan atau menonaktifkan Proxy Protocol memerlukan peningkatan layanan, menyebabkan gangguan layanan. Konfigurasikan pengaturan ini dengan hati-hati. | off | v2.6.0 dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-proxy-protocol: "on"
name: nginx
namespace: default
spec:
ports:
- port: 443
protocol: TCP
targetPort: 443
selector:
run: nginx
type: LoadBalancerOperasi grup server backend
Gunakan kembali grup server virtual yang sudah ada
Anotasi: service.beta.kubernetes.io/alibaba-cloud-loadbalancer-vgroup-port. Anotasi ini memungkinkan Anda menggunakan kembali grup server virtual yang sudah ada. Ini hanya berlaku saat Anda menggunakan kembali instans CLB yang sudah ada. Untuk contoh detail, lihat Deploy Services across clusters by reusing an existing load balancer.
Tetapkan bobot trafik Service
Anotasi: service.beta.kubernetes.io/alibaba-cloud-loadbalancer-weight
Saat beberapa Service menggunakan kembali instans CLB yang sama, gunakan anotasi ini untuk menetapkan bobot trafik untuk Service saat ini. Pengaturan ini hanya berlaku saat Anda menggunakan kembali grup server virtual yang sudah ada. Untuk contoh detail, lihat Deploy Services across clusters by reusing an existing load balancer.
Lewati pembaruan bobot server backend
Anotasi: service.beta.kubernetes.io/alibaba-cloud-loadbalancer-ignore-weight-update
Deskripsi | Versi CCM yang didukung |
Lewati pembaruan bobot server backend di grup server virtual selama sinkronisasi Service. Hal ini memungkinkan Anda mengelola bobot server backend secara manual. Nilai yang valid:
Nilai default: | v2.11.1 dan yang lebih baru |
apiVersion: v1
kind: Service
metadata:
annotations:
service.beta.kubernetes.io/alibaba-cloud-loadbalancer-ignore-weight-update: "on"
name: nginx
namespace: default
spec:
ports:
- port: 443
protocol: TCP
targetPort: 443
selector:
run: nginx
type: LoadBalancer