Tutorial - Menyebarkan aplikasi ke 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:

  • Perbarui file manifes Kubernetes.
  • Jalankan aplikasi di Kubernetes.
  • Menguji aplikasi.

Tip

Dengan AKS, Anda dapat menggunakan pendekatan berikut untuk manajemen konfigurasi:

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 yang telah aks-store-quickstart.yaml dibuat sebelumnya. File ini diunduh dalam kode sumber aplikasi dari Tutorial 1 - Siapkan aplikasi untuk AKS.

Tutorial ini membutuhkan Azure CLI versi 2.0.53 atau versi yang lebih baru. Periksa versi Anda dengan az --version. Untuk memasang atau meningkatkan, lihat Pasang Azure CLI.

Memperbarui file manifes

Dalam tutorial ini, instans Azure Container Registry (ACR) Anda menyimpan gambar kontainer untuk aplikasi sampel. Untuk menyebarkan aplikasi, Anda harus memperbarui nama gambar dalam file manifes Kubernetes untuk menyertakan nama server login ACR Anda.

  1. Dapatkan alamat server masuk Anda menggunakan az acr list perintah dan kueri untuk server masuk Anda.

    az acr list --resource-group myResourceGroup --query "[].{acrLoginServer:loginServer}" --output table
    
  2. Pastikan Anda berada di direktori aks-store-demo kloning, lalu buka file manifes dengan editor teks, seperti vi.

    vi aks-store-quickstart.yaml
    
  3. image Perbarui properti untuk kontainer dengan mengganti ghcr.io/azure-samples dengan nama server login ACR Anda.

    containers:
    ...
    - name: order-service
      image: <acrName>.azurecr.io/aks-store-demo/order-service:latest
    ...
    - name: product-service
      image: <acrName>.azurecr.io/aks-store-demo/product-service:latest
    ...
    - name: store-front
      image: <acrName>.azurecr.io/aks-store-demo/store-front:latest
    ...
    
  4. Simpan dan tutup file. Di vi, gunakan :wq.

Jalankan aplikasi

  1. Sebarkan aplikasi menggunakan kubectl apply perintah , yang mengurai file manifes dan membuat objek Kubernetes yang ditentukan.

    kubectl apply -f aks-store-quickstart.yaml
    

    Output contoh berikut menunjukkan sumber daya yang berhasil dibuat di kluster AKS:

    deployment.apps/rabbitmq created
    service/rabbitmq created
    deployment.apps/order-service created
    service/order-service created
    deployment.apps/product-service created
    service/product-service created
    deployment.apps/store-front created
    service/store-front created
    
  2. Periksa apakah penyebaran berhasil dengan melihat pod dengan kubectl

    kubectl get pods
    

Uji aplikasi

Ketika aplikasi berjalan, layanan Kubernetes mengekspos front end aplikasi ke internet. Diperlukan beberapa menit untuk menyelesaikan proses ini.

Baris Perintah

  1. Pantau kemajuan menggunakan perintah kubectl get service dengan argumen --watch.

    kubectl get service store-front --watch
    

    Awalnya, EXTERNAL-IP untuk layanan store-front menunjukkan sebagai tertunda:

    store-front   LoadBalancer   10.0.34.242   <pending>     80:30676/TCP   5s
    
  2. EXTERNAL-IP Ketika alamat berubah dari tertunda ke alamat IP publik aktual, gunakan CTRL-C untuk menghentikan kubectl proses tontonan.

    Output contoh berikut menunjukkan alamat IP publik yang valid yang ditetapkan ke layanan:

    store-front   LoadBalancer   10.0.34.242   52.179.23.131   80:30676/TCP   67s
    
  3. Lihat aplikasi yang sedang beraksi dengan membuka browser web ke alamat IP eksternal layanan Anda.

    Cuplikan layar aplikasi sampel AKS Store.

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.

Portal Azure

Navigasi ke portal Azure Anda untuk menemukan informasi penyebaran Anda.

  1. Buka Grup Sumber Daya Anda di portal Azure

  2. Navigasi ke layanan Kubernetes untuk kluster Anda

  3. Pilih Services and Ingress di bawah Kubernetes Resources

  4. Salin IP Eksternal yang diperlihatkan di kolom untuk store-front

  5. Tempelkan IP ke browser Anda dan kunjungi halaman toko Anda

    Cuplikan layar aplikasi sampel AKS Store.

Langkah berikutnya

Dalam tutorial ini, Anda menyebarkan contoh aplikasi Azure ke kluster Kubernetes di AKS. Anda mempelajari cara untuk:

  • Perbarui file manifes Kubernetes.
  • Jalankan aplikasi di Kubernetes.
  • Menguji aplikasi.

Dalam tutorial berikutnya, Anda mempelajari cara menggunakan layanan PaaS untuk beban kerja stateful di Kubernetes.