全部产品
Search
文档中心

Server Load Balancer:Panduan pengguna ALB Ingress

更新时间:Jul 06, 2025

Selain Container Service for Kubernetes (ACK) dan ACK Serverless, Application Load Balancer (ALB) Ingress dapat digunakan bersama dengan Enterprise Distributed Application Service (EDAS), Serverless App Engine (SAE), serta kluster Kubernetes yang dikelola sendiri di cloud untuk memenuhi kebutuhan bisnis Anda. Topik ini menjelaskan fitur dasar dan lanjutan dari ALB Ingress serta memberikan referensi tentang cara menggunakannya bersama layanan lainnya.

Fitur Dasar

An AlbConfig adalah objek definisi sumber daya kustom (CRD) dari ACK yang digunakan oleh pengontrol ALB Ingress untuk mengonfigurasi instance ALB dan listener. Tabel berikut menjelaskan cara menginstal dan mencopot pemasangan pengontrol ALB Ingress di kluster ACK dan ACK Serverless, membuat dan memodifikasi AlbConfigs, serta mengaktifkan Layanan Log Sederhana.

Item

Fitur

Deskripsi

Referensi untuk ACK

Referensi untuk ACK Serverless

Pengontrol ALB Ingress

Kelola pengontrol ALB Ingress

ACK menyediakan pengontrol ALB Ingress yang dikelola.

Anda dapat menginstal pengontrol ALB Ingress saat membuat kluster atau menginstalnya pada halaman Add-ons setelah pembuatan kluster.

Kelola pengontrol ALB Ingress

Kelola pengontrol ALB Ingress

Manajemen Instance

Buat sebuah AlbConfig

Sebuah AlbConfig adalah objek CRD yang digunakan oleh pengontrol ALB Ingress untuk mengonfigurasi instance ALB dan listener.

Sebuah AlbConfig digunakan untuk mengonfigurasi satu instance ALB. Untuk mengonfigurasi beberapa instance ALB, buatlah beberapa AlbConfigs.

Buat sebuah AlbConfig

Buat sebuah AlbConfig

Hubungkan sebuah AlbConfig dengan Ingress

Anda dapat menghubungkan sebuah AlbConfig dengan Ingress menggunakan IngressClass. Untuk melakukannya, Anda harus terlebih dahulu membuat IngressClass.

Buat dan hubungkan IngressClass dengan AlbConfig.

Gunakan IngressClass untuk menghubungkan AlbConfig dengan Ingress

Modifikasi sebuah AlbConfig

Anda dapat memodifikasi pengaturan sebuah AlbConfig, seperti nama dan vSwitches dari AlbConfig tersebut.

Pengaturan baru akan langsung berlaku setelah disimpan.

Aktifkan Layanan Log Sederhana untuk mengumpulkan log akses

Untuk mengumpulkan log akses dari ALB Ingress, konfigurasikan parameter logProject dan logStore dari sebuah AlbConfig.

Catatan
  • Anda harus secara manual membuat proyek Layanan Log Sederhana. Untuk informasi lebih lanjut, lihat Kelola proyek.

  • Setel parameter logStore ke nilai yang dimulai dengan alb_. Jika Logstore yang ditentukan tidak ada, sistem akan otomatis membuat satu dengan nama yang ditentukan.

Aktifkan Layanan Log Sederhana untuk mengumpulkan log akses

Aktifkan Layanan Log Sederhana untuk mengumpulkan log akses

Gunakan instance ALB yang sudah ada

Untuk menggunakan instance ALB yang sudah ada, tentukan ID instance ALB saat membuat AlbConfig.

Gunakan kembali instance ALB yang sudah ada

Gunakan kembali instance ALB yang sudah ada

Gunakan beberapa instance ALB

Untuk menggunakan beberapa instance ALB, tentukan beberapa IngressClasses di bidang spec.ingressClassName dari Ingress.

Buat dan gunakan beberapa instance ALB

Buat dan gunakan beberapa instance ALB

Hapus instance ALB

Sebuah AlbConfig digunakan untuk mengonfigurasi instance ALB. Oleh karena itu, Anda dapat menghapus instance ALB dengan menghapus AlbConfig yang sesuai. Sebelum menghapus AlbConfig, pastikan semua Ingress yang terhubung telah dihapus.

Hapus AlbConfig

Hapus AlbConfig

Manajemen Listener

Tentukan sertifikat untuk koneksi HTTPS

Anda dapat menentukan sertifikat untuk instance ALB dengan menentukan ID sertifikat di parameter listeners dari AlbConfig yang sesuai. Sertifikat digunakan untuk koneksi HTTPS.

Gunakan ALB Ingress untuk mengonfigurasi sertifikat untuk listener HTTPS

Gunakan ALB Ingress untuk mengonfigurasi sertifikat untuk listener HTTPS

Tentukan kebijakan keamanan Transport Layer Security (TLS)

Saat menggunakan AlbConfig untuk mengonfigurasi listener HTTPS, Anda dapat menentukan kebijakan keamanan TLS. Kebijakan keamanan TLS kustom dan default didukung. Untuk informasi lebih lanjut, lihat Kebijakan keamanan TLS.

Tentukan kebijakan keamanan TLS kustom

Tentukan kebijakan keamanan TLS kustom

Fitur Lanjutan

Ingress adalah objek API yang dapat Anda gunakan untuk mengimplementasikan load balancing lapisan 7 dan mengelola akses eksternal ke Layanan dalam kluster ACK. Tabel berikut menjelaskan cara menggunakan ALB Ingress untuk meneruskan permintaan ke grup server backend berdasarkan nama domain dan jalur URL, mengarahkan ulang permintaan dari HTTP ke HTTPS, dan melakukan rilis canary.

Fitur

Deskripsi

Referensi untuk ACK

Referensi untuk ACK Serverless

Teruskan permintaan berdasarkan nama domain

Anda dapat membuat Ingress dengan atau tanpa nama domain, lalu gunakan Ingress tersebut untuk meneruskan permintaan.

Teruskan permintaan berdasarkan nama domain

Teruskan permintaan berdasarkan nama domain

Teruskan permintaan berdasarkan jalur URL

ALB Ingresses dapat meneruskan permintaan berdasarkan jalur URL. Anda dapat menggunakan parameter pathType untuk mengonfigurasi kebijakan pencocokan URL yang berbeda. Nilai valid dari pathType adalah Exact, ImplementationSpecific, dan Prefix.

Teruskan permintaan berdasarkan jalur URL

Teruskan permintaan berdasarkan jalur URL

Aturan penerusan kustom

ALB Ingresses memungkinkan Anda mengonfigurasi aturan penerusan kustom. Aturan penerusan terdiri dari kondisi pencocokan dan tindakan. ALB Ingresses mendukung operasi berikut:

  • Tentukan kondisi penerusan kustom, seperti nama domain, URL, header permintaan, string kueri, metode permintaan, cookie, dan alamat IP sumber dengan mengonfigurasi anotasi alb.ingress.kubernetes.io/conditions.<Service name>.

  • Tentukan tindakan penerusan kustom untuk mengembalikan respons tetap, mengarahkan ulang permintaan, menyisipkan header permintaan, mencerminkan lalu lintas, meneruskan permintaan ke beberapa grup server, atau menulis ulang permintaan dengan mengonfigurasi anotasi alb.ingress.kubernetes.io/actions.<Service name>.

  • Tentukan kondisi penerusan kustom di konsol ACK, seperti nama domain, URL, dan header HTTP.

  • Tentukan tindakan penerusan kustom di konsol ACK untuk meneruskan permintaan ke grup server tertentu atau mengembalikan respons tetap.

Penting
  • Setiap aturan penerusan mendukung hingga 10 kondisi penerusan.

  • Kondisi routing ResponseHeader dan ResponseStatusCode hanya berlaku dalam aturan routing keluar kustom.

Buat aturan penerusan kustom untuk ALB Ingresses

Buat aturan penerusan kustom untuk ALB Ingresses

Konfigurasikan pemeriksaan kesehatan

Anda dapat menambahkan anotasi ke ALB Ingresses untuk mengonfigurasi pemeriksaan kesehatan, yang memastikan ketersediaan layanan Anda.

Konfigurasikan pemeriksaan kesehatan

Konfigurasikan pemeriksaan kesehatan

Konfigurasikan penemuan sertifikat otomatis

Pengontrol ALB Ingress mendukung penemuan sertifikat otomatis. Anda harus terlebih dahulu membuat sertifikat di konsol Layanan Manajemen Sertifikat. Kemudian, tentukan nama domain sertifikat dalam konfigurasi TLS dari Ingress. Dengan cara ini, pengontrol ALB Ingress dapat secara otomatis menemukan dan mencocokkan sertifikat berdasarkan konfigurasi TLS dari Ingress.

Gunakan ALB Ingress untuk mengonfigurasi sertifikat untuk listener HTTPS

Gunakan ALB Ingress untuk mengonfigurasi sertifikat untuk listener HTTPS

Konfigurasikan pengalihan dari permintaan HTTP ke permintaan HTTPS

Anda dapat mengonfigurasi ALB Ingress untuk mengarahkan ulang permintaan HTTP ke HTTPS (port 443) dengan menambahkan anotasi alb.ingress.kubernetes.io/ssl-redirect: "true".

Arahkan ulang permintaan HTTP ke HTTPS

Arahkan ulang permintaan HTTP ke HTTPS

Konfigurasikan protokol HTTPS atau gRPC

ALB mendukung protokol HTTPS atau gRPC sebagai protokol backend. Untuk mengonfigurasi HTTPS atau gRPC, tambahkan anotasi alb.ingress.kubernetes.io/backend-protocol: "grpc" atau alb.ingress.kubernetes.io/backend-protocol: "https" . Jika Anda ingin menggunakan Ingress untuk mendistribusikan permintaan ke layanan gRPC, Anda harus mengonfigurasi sertifikat SSL untuk layanan gRPC dan menggunakan protokol TLS untuk berkomunikasi dengan layanan gRPC.

Catatan

Anda tidak dapat mengubah protokol backend. Jika Anda perlu mengubah protokol, hapus dan bangun ulang Ingress.

Konfigurasikan HTTPS atau gRPC sebagai protokol backend

Konfigurasikan HTTPS atau gRPC sebagai protokol backend

Konfigurasikan aturan penulisan ulang

ALB Ingresses mendukung aturan penulisan ulang. Untuk mengonfigurasi aturan penulisan ulang, tambahkan anotasi alb.ingress.kubernetes.io/rewrite-target: /path/${2} .

Catatan
  • Dalam anotasi rewrite-target, Anda harus menyetel tipe parameter path ke Prefix untuk grup penangkapan tipe ${number}.

  • Secara default, parameter path tidak mendukung karakter yang didukung oleh ekspresi reguler, seperti asterisk (*) dan tanda tanya (?). Untuk menentukan karakter yang didukung oleh ekspresi reguler dalam parameter path, Anda harus menambahkan anotasi rewrite-target.

  • Nilai parameter path harus dimulai dengan garis miring (/).

Konfigurasikan aturan penulisan ulang

Konfigurasikan aturan penulisan ulang

Konfigurasikan port mendengarkan kustom

ALB Ingresses memungkinkan Anda menyesuaikan port listener untuk mengekspos beberapa port secara bersamaan. Anda dapat menggunakan metode ini untuk mengekspos port 80 dan port 443 dari sebuah Layanan ke internet.

Konfigurasikan port mendengarkan kustom

Konfigurasikan port mendengarkan kustom

Konfigurasikan prioritas aturan penerusan

Anda dapat menambahkan anotasi ke konfigurasi ALB Ingress untuk mengonfigurasi prioritas aturan penerusan dari Ingress tersebut.

Catatan

Prioritas setiap aturan penerusan dalam satu listener adalah unik. Anda dapat menggunakan anotasi alb.ingress.kubernetes.io/order untuk menentukan prioritas aturan penerusan dari sebuah Ingress. Nilai valid: 1 hingga 1000. Semakin rendah nilainya, semakin tinggi prioritasnya.

Konfigurasikan prioritas aturan penerusan

Konfigurasikan prioritas aturan penerusan

Gunakan anotasi untuk melakukan rilis canary

ALB memungkinkan Anda mengonfigurasi rilis canary berdasarkan header permintaan, cookie, dan bobot untuk menangani routing lalu lintas yang kompleks. Anda dapat menambahkan anotasi untuk mengonfigurasi rilis canary.

Anda dapat menambahkan anotasi alb.ingress.kubernetes.io/canary: "true" untuk mengaktifkan fitur rilis canary. Kemudian, Anda dapat menggunakan anotasi berbeda untuk mengonfigurasi aturan rilis canary yang berbeda.

Konfigurasikan persistensi sesi

Anda dapat mengonfigurasi persistensi sesi untuk ALB Ingress dengan menambahkan anotasi alb.ingress.kubernetes.io/sticky-session dan alb.ingress.kubernetes.io/sticky-session-type.

Konfigurasikan persistensi sesi menggunakan anotasi

Konfigurasikan persistensi sesi menggunakan anotasi

Tentukan algoritma penyeimbangan beban untuk grup server backend

Anda dapat menentukan algoritma penyeimbangan beban untuk grup server backend dengan menambahkan anotasi alb.ingress.kubernetes.io/backend-scheduler.

Tentukan algoritma penjadwalan

Tentukan algoritma penjadwalan

Konfigurasikan Berbagi Sumber Daya Lintas Domain (CORS)

ALB Ingresses memungkinkan Anda mengonfigurasi CORS menggunakan anotasi.

Konfigurasikan CORS

Konfigurasikan CORS

Konfigurasikan koneksi TCP persisten

ALB menyediakan fitur koneksi TCP persisten, yang mengurangi jumlah sumber daya yang dikonsumsi untuk membuat koneksi jaringan dan meningkatkan performa pengalihan. Anda dapat menambahkan anotasi alb.ingress.kubernetes.io/backend-keepalive ke ALB Ingress untuk mengaktifkan fitur koneksi TCP persisten.

Konfigurasikan koneksi TCP persisten

Konfigurasikan koneksi TCP persisten

Konfigurasikan pembatasan QPS

ALB mendukung pembatasan QPS berdasarkan aturan penerusan. Anda dapat membatasi QPS dalam rentang 1 hingga 100000. Anda dapat menambahkan anotasi alb.ingress.kubernetes.io/traffic-limit-qps ke ALB Ingress untuk mengaktifkan fitur pembatasan QPS.

Konfigurasikan pembatasan QPS

Konfigurasikan pembatasan QPS

Backend slow start

Anda dapat menambahkan anotasi alb.ingress.kubernetes.io/slow-start-enabled untuk mengaktifkan mode slow start untuk ALB Ingress. Tambahkan anotasi alb.ingress.kubernetes.io/slow-start-duration untuk mengonfigurasi waktu yang dibutuhkan untuk slow start meningkatkan lalu lintas secara bertahap. Nilai valid berkisar antara 30 hingga 900 detik.

Catatan

Semakin lama durasinya, semakin lambat peningkatan lalu lintas.

Backend slow start

Backend slow start

Connection draining

Anda dapat menambahkan anotasi alb.ingress.kubernetes.io/connection-drain-enabled untuk mengaktifkan connection draining untuk ALB Ingress. Tambahkan anotasi alb.ingress.kubernetes.io/connection-drain-timeout untuk mengonfigurasi periode timeout connection draining. Nilai valid berkisar antara 0 hingga 900 detik.

Connection draining

Connection draining

Tentukan baik Kubernetes pods maupun Elastic Compute Service (ECS) instances sebagai server backend

ALB Ingresses memungkinkan Anda menggunakan anotasi alb.ingress.kubernetes.io/actions.<Service name> untuk mengonfigurasi grup server backend untuk instance ALB. Anda dapat menambahkan baik Kubernetes pods maupun ECS instances sebagai server backend untuk instance ALB dengan menentukan nama Layanan dan ID grup server.

Gunakan ALB Ingresses untuk mengonfigurasi grup server backend hybrid, asosiasikan ECS instances dengan instance ALB yang ditempatkan di wilayah berbeda, dan asosiasikan server lokal dengan instance ALB

Gunakan ALB Ingresses untuk mengonfigurasi grup server backend hybrid, asosiasikan ECS instances dengan instance ALB yang ditempatkan di wilayah berbeda, dan asosiasikan server lokal dengan instance ALB

Gunakan Cloud Enterprise Network (CEN) dan router transit untuk menentukan sumber daya lintas wilayah dan pusat data sebagai server backend

Anda dapat melampirkan instance ALB ke CEN dan router transit untuk meneruskan permintaan dari ALB ke server di VPC yang ditempatkan di wilayah berbeda dari ALB dan ke pusat data.

Integrasi dengan layanan lain

Integrasi dengan layanan Alibaba Cloud

Layanan Alibaba Cloud

Fitur

Deskripsi

Referensi

WAF

Aktifkan Web Application Firewall (WAF) untuk ALB Ingress

Web Application Firewall (WAF) adalah layanan all-in-one yang melindungi situs web dan aplikasi Anda. Anda dapat menggunakan WAF untuk mencegah pelanggaran data, serangan banjir HTTP, webshell, dan pemalsuan halaman web. WAF juga menyediakan patch virtual. Setelah Anda mengaktifkan WAF untuk ALB Ingress, lalu lintas jaringan akan difilter oleh WAF sebelum dirutekan ke listener ALB.

Aktifkan WAF untuk ALB Ingress

EDAS

Buat ALB Ingress untuk aplikasi

EDAS mendukung ALB Ingresses. ALB Ingresses menyediakan manajemen lalu lintas yang lebih baik dan kompatibel dengan NGINX Ingresses. Ini memungkinkan ALB Ingresses untuk memproses routing yang kompleks dan menemukan sertifikat secara otomatis.

Buat ALB Ingress

SAE

Konfigurasikan rilis canary end-to-end berdasarkan gateway Ingress

Anda dapat menggunakan gateway Ingress untuk melakukan rilis canary end-to-end untuk aplikasi SAE.

ASM

Integrasikan Service Mesh (ASM) dengan ALB dengan mengonfigurasi ALB Ingress

Anda dapat mengonfigurasi ALB Ingress untuk mengintegrasikan ASM dengan ALB.

Integrasikan ASM dengan ALB

HPA

Integrasikan Horizontal Pod Autoscaler (HPA) dengan ALB dengan mengonfigurasi ALB Ingress

HPA digunakan untuk secara otomatis menambah pod di kluster Kubernetes. Anda dapat mengintegrasikan HPA dengan ALB menggunakan ALB Ingresses dan mengaktifkan penskalaan otomatis berdasarkan queries per second (QPS).

Gunakan ALB Ingresses untuk mengaktifkan penskalaan aplikasi otomatis berdasarkan QPS

Knative

Aktifkan kluster ACK dan ACK Serverless yang telah menginstal Knative untuk mengakses layanan melalui ALB

Knative adalah kerangka kerja serverless berbasis Kubernetes. Anda dapat menggunakan Knative untuk mengekspos Layanan ALB Anda dan melakukan rilis canary berdasarkan header dan cookie.

Gunakan ALB Ingresses di Knative

ACK One

Buat gateway multi-kluster ALB dengan mengonfigurasi ALB Ingress

Distributed Cloud Container Platform for Kubernetes (ACK One) adalah platform kontainer cloud-native kelas perusahaan yang dikembangkan oleh Alibaba Cloud untuk memenuhi kebutuhan manajemen kontainer dalam skenario hybrid cloud, multi-kluster, komputasi terdistribusi, dan pemulihan bencana. Gateway multi-kluster ALB yang disediakan oleh ACK One adalah mode multi-kluster dari ALB Ingresses. Anda dapat menggunakannya untuk menerapkan redundansi zona aktif, redundansi geografis aktif, load balancing lintas kluster, dan distribusi lalu lintas berbasis header hanya ke kluster tertentu.

Integrasi dengan layanan open source

Layanan open source

Fitur

Deskripsi

Referensi

Kluster Kubernetes yang dikelola sendiri di cloud

Gunakan ALB di kluster Kubernetes yang dikelola sendiri dengan mengonfigurasi ALB Ingresses

Jika Anda menggunakan instance ECS untuk membangun kluster Kubernetes, Anda dapat mengonfigurasi ALB Ingress untuk merutekan lalu lintas. Ini memungkinkan kluster untuk menemukan Layanan ALB secara otomatis dan mengaktifkan load balancing.

Gunakan ALB Ingresses pada kluster Kubernetes yang dikelola sendiri