Tutorial: Menjalankan aplikasi di Azure Kubernetes Service (AKS)
Kubernetes menyediakan platform yang didistribusikan untuk aplikasi berkontainer. Anda membangun dan menyebarkan aplikasi dan layanan Anda sendiri ke dalam kluster Kubernetes dan membiarkan kluster mengelola ketersediaan dan konektivitas. Dalam tutorial ini, bagian empat dari tujuh, Anda menyebarkan aplikasi sampel ke dalam kluster Kubernetes. Anda akan mempelajari cara untuk:
- Memperbarui file manifes Kubernetes.
- Jalankan aplikasi di Kubernetes.
- Menguji aplikasi.
Dalam tutorial selanjutnya, Anda akan menskalakan dan memperbarui aplikasi Anda.
Mulai cepat ini mengasumsikan Anda memiliki pemahaman dasar tentang konsep Kubernetes. Untuk informasi selengkapnya, lihat konsep inti Kube untuk Azure Kubernetes Service (AKS).
Tip
Kluster AKS dapat menggunakan GitOps untuk manajemen konfigurasi. GitOp memungkinkan deklarasi status kluster Anda, yang didorong ke kontrol sumber, untuk diterapkan ke kluster secara otomatis. Untuk mempelajari cara menggunakan GitOps untuk menyebarkan aplikasi dengan kluster AKS, lihat prasyarat untuk kluster Azure Kubernetes Service di Tutorial GitOps dengan Flux v2.
Sebelum Anda mulai
Dalam tutorial sebelumnya, Anda mengemas aplikasi ke dalam gambar kontainer, mengunggah gambar ke Azure Container Registry, dan membuat kluster Kubernetes.
Untuk menyelesaikan tutorial ini, Anda memerlukan file manifes Kubernetes azure-vote-all-in-one-redis.yaml
yang telah dibuat sebelumnya. Unduhan file ini disertakan dengan kode sumber aplikasi dalam tutorial sebelumnya. Verifikasi bahwa Anda telah mengkloning repositori dan bahwa Anda telah mengubah direktori menjadi repositori kloning. Jika Anda belum melakukan langkah-langkah ini dan ingin mengikutinya, mulailah dengan Tutorial 1: Menyiapkan aplikasi untuk AKS.
Tutorial ini mengharuskan Anda menjalankan Azure CLI versi 2.0.53 atau yang lebih baru. Jalankan az --version
untuk menemukan versinya. Jika Anda perlu menginstal atau memutakhirkan, lihat Menginstal Azure CLI.
Memperbarui file manifes
Dalam tutorial ini, instans Azure Container Registry (ACR) menyimpan citra kontainer untuk aplikasi sampel. Untuk menerapkan aplikasi, Anda harus memperbarui nama citra dalam file manifes Kubernetes untuk menyertakan nama server login ACR.
Dapatkan nama server login ACR menggunakan perintah az acr list .
az acr list --resource-group myResourceGroup --query "[].{acrLoginServer:loginServer}" --output table
Sampel file manifes dari repositori git yang Anda kloning dalam tutorial pertama menggunakan gambar dari Microsoft Container Registry (mcr.microsoft.com). Pastikan Anda berada di direktori azure-voting-app-redis yang dikloning, lalu buka file manifes dengan editor teks, seperti vi
:
vi azure-vote-all-in-one-redis.yaml
Ganti mcr.microsoft.com dengan nama server masuk ACR Anda. Anda dapat menemukan nama gambar pada baris 60 file manifes. Contoh berikut menunjukkan nama citra default:
containers:
- name: azure-vote-front
image: mcr.microsoft.com/azuredocs/azure-vote-front:v1
Berikan nama server login ACR Anda sendiri sehingga file manifes Anda terlihat mirip dengan contoh berikut:
containers:
- name: azure-vote-front
image: <acrName>.azurecr.io/azure-vote-front:v1
Simpan dan tutup file. Di vi
, gunakan :wq
.
Menyebarkan aplikasi
Untuk menyebarkan kubectl apply
aplikasi Anda, gunakan perintah , menentukan file manifes sampel. Perintah ini menguraikan file manifes dan membuat objek Kubernetes yang ditentukan.
kubectl apply -f azure-vote-all-in-one-redis.yaml
Output contoh berikut menunjukkan sumber daya yang berhasil dibuat di kluster AKS:
$ kubectl apply -f azure-vote-all-in-one-redis.yaml
deployment "azure-vote-back" created
service "azure-vote-back" created
deployment "azure-vote-front" created
service "azure-vote-front" created
Menguji aplikasi
Saat aplikasi berjalan, layanan Kube mengekspos ujung depan aplikasi ke internet. Diperlukan beberapa menit untuk menyelesaikan proses ini.
Untuk memantau kemajuan, gunakan perintah kubectl get service
dengan argumen --watch
.
kubectl get service azure-vote-front --watch
Awalnya EXTERNAL-IP untuk layanan azure-vote-front ditampilkan sebagai tertunda.
azure-vote-front LoadBalancer 10.0.34.242 <pending> 80:30676/TCP 5s
Ketika alamat IP_EKSTERNAL berubah dari tertunda ke alamat IP publik aktual, gunakan CTRL-C
untuk menghentikan proses melihat kubectl
. Output contoh berikut menunjukkan alamat IP publik yang valid yang ditetapkan ke layanan:
azure-vote-front LoadBalancer 10.0.34.242 52.179.23.131 80:30676/TCP 67s
Untuk melihat aplikasi yang sedang berjalan, buka browser web ke alamat IP eksternal layanan Anda.
Jika aplikasi tidak dimuat, mungkin masalah otorisasi dengan registri gambar Anda. Untuk melihat status kontainer Anda, gunakan perintah kubectl get pods
. Jika Anda tidak dapat menarik gambar kontainer, lihat Mengautentikasi dengan Azure Container Registry dari Azure Kubernetes Service.
Langkah berikutnya
Dalam tutorial ini, Anda menyebarkan sampel aplikasi suara Azure ke kluster Kubernetes di AKS. Anda mempelajari cara untuk:
- Memperbarui file manifes Kubernetes.
- Jalankan aplikasi di Kubernetes.
- Menguji aplikasi.
Dalam tutorial berikutnya, Anda akan mempelajari cara menskalakan aplikasi Kubernetes dan infrastruktur Kubernetes yang mendasar.