Tutorial: Mengaktifkan add-on pengontrol ingress gateway aplikasi untuk kluster AKS yang ada dengan gateway aplikasi yang sudah ada
Artikel
Anda dapat menggunakan Azure CLI atau portal untuk mengaktifkan add-on pengontrol ingress gateway aplikasi (AGIC) untuk kluster Azure Kubernetes Services (AKS) yang ada. Dalam tutorial ini, Anda akan mempelajari cara menggunakan add-on AGIC untuk mengekspos aplikasi Kubernetes di kluster AKS yang ada melalui gateway aplikasi yang ada yang disebarkan di jaringan virtual terpisah. Anda akan mulai dengan membuat kluster AKS dalam satu jaringan virtual dan gateway aplikasi di jaringan virtual terpisah untuk mensimulasikan sumber daya yang ada. Anda kemudian akan mengaktifkan add-on AGIC, mengintip dua jaringan virtual bersama-sama, dan menyebarkan aplikasi sampel yang akan diekspos melalui gateway aplikasi menggunakan add-on AGIC. Jika Anda mengaktifkan add-on AGIC untuk gateway aplikasi yang ada dan kluster AKS yang ada di jaringan virtual yang sama, maka Anda dapat melewati langkah peering di bawah ini. Add-on menyediakan cara yang jauh lebih cepat untuk menyebarkan AGIC untuk kluster AKS Anda daripada melalui Helm dan juga menawarkan pengalaman yang dikelola sepenuhnya.
Dalam tutorial ini, Anda akan mempelajari cara:
Buat grup sumber daya.
Buat kluster AKS baru.
Buat gateway aplikasi baru.
Aktifkan add-on AGIC di kluster AKS yang ada melalui Azure CLI.
Aktifkan add-on AGIC di kluster AKS yang ada melalui portal Azure.
Serekan jaringan virtual gateway aplikasi dengan jaringan virtual kluster AKS.
Sebarkan aplikasi sampel menggunakan AGIC untuk masuk pada kluster AKS.
Periksa apakah aplikasi dapat dijangkau melalui gateway aplikasi.
Jika Anda lebih suka menjalankan perintah referensi CLI secara lokal, instal Azure CLI. Jika Anda menjalankan Windows atau macOS, pertimbangkan untuk menjalankan Azure CLI dalam kontainer Docker. Untuk informasi lebih lanjut, lihat Cara menjalankan Azure CLI di kontainer Docker.
Jika Anda menggunakan instalasi lokal, masuk ke Azure CLI dengan menggunakan perintah login az. Untuk menyelesaikan proses autentikasi, ikuti langkah-langkah yang ditampilkan di terminal Anda. Untuk opsi masuk lainnya, lihat Masuk dengan Azure CLI.
Saat Anda diminta, instal ekstensi Azure CLI pada penggunaan pertama. Untuk informasi selengkapnya tentang ekstensi, lihat Menggunakan ekstensi dengan Azure CLI.
Jalankan versi az untuk menemukan versi dan pustaka dependen yang diinstal. Untuk meningkatkan ke versi terbaru, jalankan peningkatan az.
Buat grup sumber daya
Di Azure, Anda mengalokasikan sumber daya terkait ke grup sumber daya. Buat grup sumber daya dengan menggunakan buat grup az. Contoh berikut membuat grup sumber daya bernama myResourceGroup di lokasi US Timur (wilayah):
Azure CLI
az group create --name myResourceGroup --location eastus
Menyebarkan kluster AKS baru
Sekarang Anda akan menyebarkan kluster AKS baru, untuk mensimulasikan kluster AKS yang ada tempat Anda ingin mengaktifkan add-on AGIC.
Dalam contoh berikut, Anda akan menyebarkan kluster AKS baru bernama myCluster menggunakan Azure CNI dan Identitas Terkelola dalam grup sumber daya yang Anda buat, myResourceGroup.
Azure CLI
az aks create --name myCluster --resource-group myResourceGroup --network-plugin azure --enable-managed-identity--generate-ssh-keys
Untuk mengonfigurasi lebih banyak parameter untuk perintah di atas, lihat az aks create.
Catatan
Grup sumber daya simpul akan dibuat dengan nama MC_resource-group-name_cluster-name_location.
Menyebarkan gateway aplikasi baru
Sekarang Anda akan menyebarkan gateway aplikasi baru, untuk mensimulasikan memiliki gateway aplikasi yang sudah ada yang ingin Anda gunakan untuk memuat lalu lintas keseimbangan ke kluster AKS Anda, myCluster. Nama gateway aplikasi akan menjadi myApplicationGateway, tetapi Anda harus terlebih dahulu membuat sumber daya IP publik, bernama myPublicIp, dan jaringan virtual baru yang disebut myVnet dengan ruang alamat 10.0.0.0/16, dan subnet dengan ruang alamat 10.0.0.0/24 yang disebut mySubnet, dan menyebarkan gateway aplikasi Anda di mySubnet menggunakan myPublicIp.
Perhatian
Saat Anda menggunakan kluster AKS dan gateway aplikasi di jaringan virtual terpisah, ruang alamat dari dua jaringan virtual tidak boleh tumpang tindih. Ruang alamat default yang disebarkan kluster AKS adalah 10.224.0.0/12.
Add-on pengontrol ingress gateway aplikasi (AGIC) hanya mendukung SKU gateway aplikasi v2 (Standar dan WAF), dan bukan SKU v1 gateway aplikasi.
Mengaktifkan add-on AGIC di kluster AKS yang ada melalui Azure CLI
Jika Anda ingin terus menggunakan Azure CLI, Anda dapat terus mengaktifkan add-on AGIC di kluster AKS yang Anda buat, myCluster, dan menentukan add-on AGIC untuk menggunakan gateway aplikasi yang sudah Anda buat, myApplicationGateway.
Azure CLI
appgwId=$(az network application-gateway show --name myApplicationGateway --resource-group myResourceGroup -o tsv --query"id")
az aks enable-addons --name myCluster --resource-group myResourceGroup --addon ingress-appgw--appgw-id$appgwId
Aktifkan add-on AGIC di kluster AKS yang ada melalui portal Azure
Dari beranda portal Azure, navigasikan ke sumber daya kluster AKS Anda.
Di menu layanan, di bawah Pengaturan, pilih Integrasi jaringan Virtual Jaringan>.
Di bawah Pengontrol ingress Application Gateway, pilih Kelola.
Pada halaman pengontrol ingress Application Gateway, pilih kotak centang untuk mengaktifkan pengontrol ingress, lalu pilih gateway aplikasi yang ada dari daftar dropdown.
Pilih Simpan.
Penting
Jika Anda menggunakan gateway aplikasi dalam grup sumber daya yang berbeda dari grup sumber daya kluster AKS, identitas terkelola ingressapplicationgateway-{AKSNAME} yang dibuat harus memiliki peran Kontributor Jaringan dan Pembaca yang diatur dalam grup sumber daya gateway aplikasi.
Peering kedua jaringan virtual bersama-sama
Karena Anda menyebarkan kluster AKS di jaringan virtualnya sendiri dan gateway Aplikasi di jaringan virtual lain, Anda harus mengintip kedua jaringan virtual bersama-sama agar lalu lintas mengalir dari gateway Aplikasi ke pod di kluster. Peering dua jaringan virtual perlu menjalankan perintah Azure CLI dua kali secara terpisah, untuk memastikan bahwa koneksi dua arah. Perintah pertama akan membuat koneksi peering dari jaringan virtual Gateway aplikasi ke jaringan virtual AKS; perintah kedua akan membuat koneksi peering ke arah lain.
Azure CLI
nodeResourceGroup=$(az aks show --name myCluster --resource-group myResourceGroup -o tsv --query"nodeResourceGroup")
aksVnetName=$(az network vnet list --resource-group$nodeResourceGroup-o tsv --query"[0].name")
aksVnetId=$(az network vnet show --name$aksVnetName--resource-group$nodeResourceGroup-o tsv --query"id")
az network vnet peering create --name AppGWtoAKSVnetPeering --resource-group myResourceGroup --vnet-name myVnet --remote-vnet$aksVnetId--allow-vnet-access
appGWVnetId=$(az network vnet show --name myVnet --resource-group myResourceGroup -o tsv --query"id")
az network vnet peering create --name AKStoAppGWVnetPeering --resource-group$nodeResourceGroup--vnet-name$aksVnetName--remote-vnet$appGWVnetId--allow-vnet-access
Catatan
Dalam langkah "Sebarkan kluster AKS baru" di atas kami membuat AKS dengan Azure CNI, jika Anda memiliki kluster AKS yang ada menggunakan mode Kubenet, Anda perlu memperbarui tabel rute untuk membantu paket yang ditujukan untuk IP POD mencapai node yang menghosting pod.
Cara sederhana untuk mencapainya adalah dengan mengaitkan tabel rute yang sama yang dibuat oleh AKS ke subnet Application Gateway.
Menyebarkan aplikasi sampel menggunakan AGIC
Sekarang Anda akan menyebarkan aplikasi sampel ke kluster AKS yang Anda buat yang akan menggunakan add-on AGIC untuk Ingress dan menyambungkan gateway aplikasi ke kluster AKS. Pertama, Anda akan mendapatkan kredensial ke kluster AKS yang Anda sebarkan dengan menjalankan perintah az aks get-credentials.
Azure CLI
az aks get-credentials --name myCluster --resource-group myResourceGroup
Setelah memiliki kredensial ke klaster yang Anda buat, jalankan perintah berikut untuk menyiapkan aplikasi sampel yang menggunakan AGIC untuk Ingress ke kluster. AGIC akan memperbarui gateway aplikasi yang Anda siapkan sebelumnya dengan aturan perutean yang sesuai ke aplikasi sampel baru yang Anda sebarkan.
Sekarang setelah gateway aplikasi disiapkan untuk melayani lalu lintas ke kluster AKS, mari kita verifikasi bahwa aplikasi Anda dapat dijangkau. Pertama-tama, Anda akan mendapatkan alamat IP Ingress.
Azure CLI
kubectl get ingress
Periksa apakah aplikasi sampel yang Anda buat aktif dan berjalan dengan mengunjungi alamat IP gateway aplikasi yang Anda dapatkan dari menjalankan perintah di atas atau periksa dengan curl. Mungkin perlu waktu satu menit bagi gateway aplikasi untuk mendapatkan pembaruan, jadi jika gateway aplikasi masih dalam status "Memperbarui" pada portal Azure, maka biarkan selesai sebelum mencoba mencapai alamat IP.
Membersihkan sumber daya
Jika tidak lagi diperlukan, hapus semua sumber daya yang dibuat dalam tutorial ini dengan menghapus grup sumber daya myResourceGroup dan MC_myResourceGroup_myCluster_eastus :
Azure CLI
az group delete --name myResourceGroup
az group delete --name MC_myResourceGroup_myCluster_eastus
Selamat datang di pengalaman validasi keterampilan interaktif ini. Menyelesaikan modul ini membantu mempersiapkan Anda untuk Menyebarkan dan mengelola kontainer dengan penilaian Azure Kubernetes Service.
Pahami cara mengonfigurasi pengontrol ingress dengan alamat IP privat dan zona DNS privat Azure menggunakan add-on perutean aplikasi untuk Azure Kubernetes Service.