Mulai cepat: Menyebarkan aplikasi ke kluster Azure Kubernetes Service (AKS) Otomatis baru dari repositori kode

Berlaku untuk: ✔️ AKS Otomatis

Gunakan penyebaran otomatis untuk membangun dan menyebarkan aplikasi dari repositori kode ke kluster Otomatis AKS baru atau yang sudah ada. Penyebaran otomatis menyederhanakan proses pengaturan alur kerja tindakan GitHub untuk membangun dan menyebarkan kode Anda. Setelah terhubung, setiap commit baru yang Anda buat memulai pipeline. Penyebaran otomatis dibangun atas draft.sh. Saat membuat alur kerja penyebaran baru, Anda dapat menggunakan Dockerfile yang ada, membuat Dockerfile, menggunakan manifes Kubernetes yang ada, atau menghasilkan manifes Kubernetes. Manifes yang dihasilkan dibuat dengan mengingat praktik terbaik keamanan dan ketahanan. AKS Automatic juga mencakup SLA kesiapan pod yang menjamin 99,9% operasi kesiapan pod yang memenuhi syarat akan selesai dalam waktu 5 menit, memastikan infrastruktur yang andal dan pemulihan otomatis untuk aplikasi Anda.

Dalam panduan cepat ini, Anda mempelajari cara:

  • Sambungkan ke repositori kode.
  • Kontainerisasi aplikasi Anda.
  • Mengonfigurasi manifes Kubernetes.
  • Buat kluster Otomatis AKS.
  • Sebarkan aplikasi melalui permintaan pull.

Sebelum Anda mulai

Penting

Mulai dari AKS 1.36, kluster AKS Automatic baru secara bawaan akan mengaktifkan Kubernetes Gateway API melalui add-on perutean aplikasi alih-alih Managed NGINX ingress dengan add-on perutean aplikasi karena penghentian Ingress NGINX upstream.

Kluster otomatis yang ada tidak terdampak, tetapi sebaiknya mulai bermigrasi ke Gateway API Kubernetes melalui add-on perutean aplikasi.

Keterbatasan

Batasan berikut berlaku untuk kluster AKS Otomatis:

  • AKS Otomatis umumnya tersedia di region berikut: australiaeast, austriaeast, belgiumcentral, brazilsouth, canadacentral, centralindia, centralus, chilecentral, denmarkeast, eastasia, eastus, eastus2, francecentral, germanywestcentral, indonesiacentral, israelcentral, italynorth, japaneast, japanwest, koreacentral, malaysiawest, mexicocentral, newzealandnorth, northeurope, norwayeast, polandcentral, southafricanorth, southcentralus, southeastasia, spaincentral, swedencentral, switzerlandnorth, uaenorth, uksouth, westeurope, westus2, westus3.
    • Kluster AKS Otomatis baru secara default mengaktifkan kumpulan simpul sistem terkelola dan LocalDNS. Anda tidak dapat membuat kluster AKS Otomatis tanpa kumpulan simpul sistem terkelola di wilayah mana pun.
  • Kluster Otomatis AKS memiliki penguncian grup sumber daya node yang telah dikonfigurasi sebelumnya, yang tidak mengizinkan perubahan pada grup sumber daya MC_, mencegah tautan jaringan virtual pada zona Private DNS default. Untuk skenario DNS lintas VNet atau kustom, gunakan jaringan kustom dan DNS privat dengan mengikuti Buat kluster privat Azure Kubernetes Service (AKS) Otomatis dalam jaringan virtual kustom.
  • Azure CLI versi 2.86.0 atau yang lebih baru diperlukan. Untuk menemukan versi, jalankan az --version perintah. Jika Anda perlu memasang atau meningkatkan, lihat Memasang Azure CLI.
  • Ekstensi berikut ini tidak didukung:
  • Node Windows tidak didukung.
  • Migrasi antara SKU dasar AKS dan SKU Otomatis tidak didukung.
  • Migrasi antara kluster AKS Otomatis tanpa kumpulan simpul sistem terkelola dan kluster AKS Otomatis dengan kumpulan simpul sistem terkelola tidak didukung.

Membawa kode sumber aplikasi Anda

Untuk menyebarkan aplikasi dari repositori kode, mulailah di portal Azure beranda.

Cuplikan layar memperlihatkan pilih 'Sebarkan aplikasi' pada menu buat layanan Kubernetes.

  1. Cari layanan Kubernetes di bilah pencarian teratas.
  2. Pilih layanan Kubernetes dalam hasil pencarian.
  3. Pilih tombol Buat dan pilih Sebarkan aplikasi.

Menyambungkan ke repositori kode sumber

Membuat dan mengotomatiskan alur kerja penyebaran dan mengotorisasinya untuk menyambungkan ke repositori kode sumber yang diinginkan.

  1. Di tab Dasar , pilih Sebarkan aplikasi Anda.
  2. Di bawah detail Project, pilih Subscription, Resource Group, dan Region.
  3. Di bawah Detail repositori, masukkan nama untuk alur kerja, lalu pilih Autorisasi akses untuk menyambungkan ke repositori GitHub yang diinginkan.
  4. Pilih Repositori dan Cabang.
  5. Pilih tombol Berikutnya.

Pilih konfigurasi gambar kontainer

Untuk menyiapkan aplikasi untuk Kubernetes, Anda perlu membangunnya menjadi gambar kontainer dan disimpan ke dalam registri kontainer. Anda menggunakan Dockerfile untuk memberikan instruksi tentang cara membuat gambar kontainer. Jika repositori kode sumber Anda belum memiliki Dockerfile, Penyebaran Otomatis dapat menghasilkannya untuk Anda, jika tidak, Anda dapat menggunakan Dockerfile yang ada.

Gunakan Penyebaran Otomatis untuk menghasilkan Dockerfile untuk banyak bahasa dan kerangka kerja seperti Go, C#, Node.js, Python, Java, Gradle, Clojure, PHP, Ruby, Erlang, Swift, dan Rust. Dukungan bahasa dibangun berdasarkan apa yang tersedia di draft.sh.

  1. Pilih Otomatisasi Kontainer (untuk menghasilkan Dockerfile) untuk konfigurasi kontainer.
  2. Pilih lokasi tempat menyimpan Dockerfile yang dihasilkan di repositori.
  3. Pilih lingkungan aplikasi dari daftar bahasa dan kerangka kerja yang didukung.
  4. Masukkan port aplikasi.
  5. Pilih Azure Container Registry atau buat yang baru. Registri ini digunakan untuk menyimpan gambar aplikasi bawaan. Identitas kubelet dari kluster AKS Automatic diberikan AcrPull izin pada registri tersebut.

Pilih konfigurasi manifes Kubernetes

Aplikasi yang berjalan di Kubernetes terdiri dari banyak komponen primitif Kubernetes. Komponen-komponen ini menjelaskan gambar kontainer apa yang akan digunakan, berapa banyak replika yang akan dijalankan, jika ada IP publik yang diperlukan untuk mengekspos aplikasi, dll. Untuk informasi selengkapnya, lihat dokumentasi resmi Kubernetes. Jika repositori kode sumber Anda belum memiliki manifes Kubernetes dasar untuk disebarkan, Penyebaran Otomatis dapat menghasilkannya untuk Anda, jika tidak, Anda dapat menggunakan sekumpulan manifes yang ada. Anda juga dapat memilih bagan Helm yang ada.

Gunakan Penyebaran Otomatis untuk menghasilkan sekumpulan file manifes Kubernetes dasar agar aplikasi Anda aktif dan berjalan. Saat ini, Penyebaran Otomatis membuat Deployment, Service, dan ConfigMap.

Manifes yang dihasilkan dirancang untuk menerapkan rekomendasi perlindungan penyebaran, seperti:

Untuk menghasilkan manifes Kubernetes:

  1. Pilih Buat file penyebaran aplikasi untuk opsi penyebaran.
  2. Masukkan port aplikasi. Port ini digunakan pada keluaran yang dihasilkan Service.
  3. Pilih lokasi tempat menyimpan manifes Kubernetes yang dihasilkan di repositori.
  4. Pilih tombol Berikutnya.

Pilih tempat Anda ingin menyebarkan aplikasi

Jika Anda belum memiliki kluster, Anda dapat membuat kluster AKS Otomatis baru sebagai bagian dari penyebaran ini.

  1. Pilih Buat kluster Kubernetes Otomatis untuk konfigurasi kluster.
  2. Masukkan nama kluster.
  3. Pilih jadwal pemeliharaan peningkatan otomatis atau biarkan default dipilih.
  4. Masukkan namespace Kubernetes tempat aplikasi disebarkan.
  5. Pilih tingkat pemantauan dan pengelogan atau biarkan default dipilih.
  6. Pilih tombol Berikutnya.

Meninjau konfigurasi dan menyebarkan

Tinjau konfigurasi untuk manifes kluster, aplikasi, dan Kubernetes, lalu pilih Sebarkan. Membuat kluster membutuhkan waktu beberapa menit, jangan menavigasi jauh dari halaman penyebaran.

Cuplikan layar memperlihatkan Menyebarkan aplikasi.

  1. Kluster AKS Otomatis baru dibuat atau yang sudah ada dikonfigurasi.
  2. Registri kontainer dibuat atau yang sudah ada dikonfigurasi dengan kluster.
  3. Kredensial federasi dibuat untuk memungkinkan alur kerja Tindakan GitHub disebarkan ke kluster.
  4. Permintaan pull dibuat pada repositori kode dengan file dan alur kerja yang dihasilkan.

Tinjau dan gabungkan pull request

Saat penyebaran berhasil, pilih tombol Tampilkan permintaan pull untuk melihat detail permintaan pull yang dihasilkan di repositori kode Anda.

Screenshot permintaan pull pada GitHub.

  1. Tinjau perubahan di bawah File yang diubah dan lakukan pengeditan yang diinginkan.
  2. Pilih Gabungkan permintaan pull untuk menggabungkan perubahan ke dalam repositori kode Anda.

Menggabungkan perubahan menjalankan alur kerja GitHub Actions yang membangun aplikasi Anda menjadi gambar kontainer, menyimpannya di Azure Container Registry, dan menyebarkannya ke kluster.

Screenshot memperlihatkan alur kerja GitHub Actions sedang berlangsung.

Periksa sumber daya yang disebarkan

Setelah pipeline selesai, Anda dapat meninjau Kubernetes Service yang dibuat di portal Azure dengan memilih Services dan ingresses di bawah menu layanan Kubernetes resources.

Cuplikan layar panel Layanan dan pintu masuk.

Memilih IP Eksternal harus membuka halaman browser baru dengan aplikasi yang sedang berjalan.

Cuplikan layar memperlihatkan aplikasi Contoso Air berjalan.

Menghapus sumber daya

Setelah selesai dengan kluster Anda, dapat menghapusnya untuk menghindari dikenakan biaya Azure.

  1. Di portal Azure, navigasikan ke grup sumber daya Anda.
  2. Pilih Hapus grup sumber daya.
  3. Masukkan nama grup sumber daya Anda untuk mengonfirmasi penghapusan dan pilih Hapus.
  4. Dalam kotak dialog Hapus konfirmasi , pilih Hapus.

Langkah berikutnya

Dalam mulai cepat ini, Anda menyebarkan aplikasi ke kluster Kubernetes menggunakan AKS Otomatis dan menyiapkan alur integrasi berkelanjutan/penyebaran berkelanjutan (CI/CD) dari repositori kode.

Untuk mempelajari selengkapnya tentang AKS Otomatis, lanjutkan ke pengenalan.