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.

Cuplikan layar memperlihatkan citra kontainer Azure Voting App yang berjalan di kluster AKS terbuka di browser web lokal

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.