Bagikan melalui


Menyebarkan aplikasi

Artikel ini menjelaskan cara menyebarkan aplikasi dalam kontainer pada kluster Kubernetes Anda.

Prasyarat

Untuk memulai, siapkan satu komputer Kubernetes atau kluster Kubernetes penuh .

Menyebarkan contoh aplikasi Linux

Langkah 1: perbarui file manifes

Artikel ini menggunakan aplikasi sampel yang merupakan aplikasi pemungutan suara sederhana yang terdiri dari ujung depan dan belakang, yang didasarkan pada gambar azure-vote-front Microsoft. Gambar kontainer untuk aplikasi ini dihosting di Azure Container Registry (ACR). Lihat linux-sample.yaml dalam paket repositori GitHub untuk manifes penyebaran. Di YAML, kami menentukan nodeSelector tag sebagai Linux.

Langkah 2: sebarkan aplikasi

Untuk menyebarkan aplikasi, gunakan perintah kubectl apply. Perintah ini menguraikan file manifes dan membuat objek Kubernetes yang ditentukan. Tentukan file manifes YAML, seperti yang ditunjukkan dalam contoh berikut:

kubectl apply -f  https://raw.githubusercontent.com/Azure/AKS-Edge/main/samples/others/linux-sample.yaml

Langkah 3: verifikasi pod

Tunggu beberapa menit hingga pod berada dalam status berjalan :

kubectl get pods -o wide

Cuplikan layar memperlihatkan pod Linux yang berjalan.

Langkah 4: verifikasi layanan

Untuk memantau kemajuan, gunakan perintah layanan kubectl get dengan --watch parameter :

kubectl get services

Cuplikan layar memperlihatkan layanan Linux yang berjalan.

Awalnya, EXTERNAL-IP untuk azure-vote-front layanan ditampilkan sebagai pending. EXTERNAL-IP Ketika alamat berubah dari pending ke alamat IP publik aktual, Anda dapat menggunakan alamat IP yang ditetapkan ke layanan.

Penting

Pada kluster komputer tunggal, jika Anda menyebarkan kluster Kubernetes tanpa menentukan -ServiceIPRangeSize, Anda tidak akan mengalokasikan IP untuk layanan beban kerja Dan Anda tidak akan memiliki alamat IP eksternal. Dalam hal ini, temukan alamat IP VM Linux Anda (Get-AksEdgeNodeAddr):

Get-AksEdgeNodeAddr -NodeType Linux

Anda sekarang dapat menambahkan port eksternal ke alamat IP VM (misalnya, 192.168.1.12:30432).

Langkah 5: uji aplikasi Anda

Untuk melihat aplikasi yang sedang berjalan, buka browser web ke alamat IP eksternal layanan Anda:

Cuplikan layar memperlihatkan aplikasi Linux yang sedang berjalan.

Jika aplikasi tidak dimuat, mungkin karena masalah otorisasi dengan registri gambar Anda. Untuk melihat status kontainer Anda, gunakan perintah kubectl get pods. Jika gambar kontainer tidak dapat diambil, lihat Mengautentikasi dengan Azure Container Registry dari Azure Kubernetes Service.

Langkah 6: hapus aplikasi

Untuk membersihkan, hapus semua sumber daya menggunakan perintah berikut:

kubectl delete -f https://raw.githubusercontent.com/Azure/AKS-Edge/main/samples/others/linux-sample.yaml

Menyebarkan contoh aplikasi Windows ke kluster Anda

Contoh ini menjalankan sampel aplikasi ASP.NET berdasarkan gambar sampel Microsoft. Lihat win-sample.yaml. YAML menentukan nodeSelector tag sebagai Windows.

Langkah 1: sebarkan aplikasi dengan menentukan nama manifes YAML Anda

Pastikan Anda berada di direktori YAML di jendela PowerShell, lalu jalankan perintah berikut:

kubectl apply -f https://raw.githubusercontent.com/Azure/AKS-Edge/main/samples/others/win-sample.yaml

Langkah 2: verifikasi bahwa pod sampel sedang berjalan

Mungkin perlu waktu beberapa saat bagi Pod untuk mencapai status berjalan, tergantung pada koneksi internet Anda. Gambar ASP.NET besar:

kubectl get pods -o wide

Cuplikan layar memperlihatkan pod Windows yang berjalan.

Langkah 3: verifikasi bahwa layanan sampel sedang berjalan

kubectl get services

Cuplikan layar memperlihatkan layanan Windows yang berjalan.

Karena sampel ini disebarkan sebagai layanan jenis NodePort, Anda dapat mengambil alamat IP simpul Kubernetes tempat aplikasi berjalan, lalu menambahkan port NodePort. Dapatkan IP simpul Kubernetes menggunakan perintah berikut Get-AksEdgeNodeAddr:

Get-AksEdgeNodeAddr -NodeType Windows

Screesnhot memperlihatkan informasi kluster Windows.

Langkah 4: verifikasi sampel Windows yang sedang berjalan

Buka browser web dan temukan NodePort untuk mengakses layanan Anda:

Cuplikan layar memperlihatkan aplikasi Windows berjalan.

Langkah 5: bersihkan

Untuk membersihkan, hapus semua sumber daya menggunakan perintah berikut:

kubectl delete -f https://raw.githubusercontent.com/Azure/AKS-Edge/main/samples/others/win-sample.yaml

Menyebarkan aplikasi Anda sendiri

Langkah-langkah sebelumnya menunjukkan bagaimana Anda dapat menyebarkan aplikasi sampel kami. Untuk menyebarkan aplikasi Anda sendiri, lakukan hal berikut:

  • Kemas aplikasi Anda ke dalam gambar kontainer, lalu unggah gambar ke Azure Container Registry atau dalam registri kontainer pilihan Anda. Tinjau langkah-langkah ini untuk membuat gambar kontainer aplikasi Anda.

  • AKS Edge Essentials memungkinkan kluster mixed-OS. Pastikan pod Anda dijadwalkan pada simpul dengan OS yang sesuai. Tambahkan nodeSelector ke file penyebaran Anda. Opsi ini memberi tahu Kubernetes untuk menjalankan pod Anda pada simpul sistem operasi (OS) tertentu. Jika kluster Anda adalah OS tunggal, maka Anda dapat melewati langkah ini; tetapi untuk praktik terbaik, beri label setiap file penyebaran dengan pemilih simpul:

    nodeSelector:
        "kubernetes.io/os": linux
    
    nodeSelector:
        "kubernetes.io/os": windows
    

Langkah berikutnya