Menyiapkan Azure Container Apps
Di unit ini, Anda mempelajari cara membuat lingkungan Azure Container Apps dan database Azure for PostgreSQL dengan menggunakan Azure CLI. Anda kemudian mengonfigurasi aplikasi Quarkus Anda sehingga terhubung ke database jarak jauh alih-alih yang lokal.
Beberapa target tersedia untuk menyebarkan aplikasi Quarkus di Azure, mulai dari IaaS hingga FaaS. Azure Container Apps adalah antara PaaS dan FaaS. Ini lebih seperti PaaS karena tidak memaksa Anda ke dalam model pemrograman tertentu, dan Anda dapat mengontrol aturan untuk menskalakan keluar dan masuk. Di sisi lain, ia memiliki beberapa karakteristik tanpa server, seperti menskalakan ke nol, penskalakan berbasis peristiwa, dan model harga per detik.
Container Apps dibangun di Azure Kubernetes Service (AKS). Ini termasuk integrasi mendalam dengan KEDA (penskalaan otomatis berbasis peristiwa untuk Kubernetes), Dapr (runtime aplikasi terdistribusi) dan Envoy (proksi layanan yang dirancang untuk aplikasi cloud-native). Kompleksitas yang mendasar disembunyikan, sehingga Anda tidak perlu mengonfigurasi manifes layanan, penyebaran, ingress, atau volume di Kubernetes Anda. Anda mendapatkan API sederhana dan antarmuka pengguna untuk mengonfigurasi aplikasi kontainer Anda. Karena penyederhanaan ini, Anda memiliki lebih sedikit kontrol daripada yang Anda miliki dengan AKS.
Di Container Apps, aplikasi perlu dikemas ke dalam kontainer Docker. Container Apps mendukung kontainer Docker yang dibangun dengan Dockerfiles atau dengan Jib. Kontainer harus tersedia pada registri kontainer. Container Apps mendukung registri Azure Container Registry, Docker Hub, dan GitHub Container. Setelah gambar aplikasi tersedia di registri, Container Apps mendukung penyebaran dari portal Microsoft Azure, Azure CLI, GitHub Actions, dan Azure DevOps.
Container Apps menyediakan fitur berikut.
- Revisi: Penerapan versi otomatis yang membantu Anda mengelola siklus hidup aplikasi aplikasi kontainer Anda.
- Kontrol lalu lintas: Kemampuan untuk membagi lalu lintas HTTP masuk di beberapa revisi untuk penyebaran biru/hijau dan pengujian A/B.
- Ingress: Konfigurasi ingress HTTPS sederhana. Anda tidak perlu khawatir tentang DNS atau sertifikat.
- Autoscaling: Pemicu skala yang didukung KEDA untuk menskalakan aplikasi Anda berdasarkan metrik eksternal.
- Rahasia: Rahasia yang dibagikan di antara kontainer, aturan skala, dan sidecar Dapr.
- Pemantauan: Aliran keluaran standar dan kesalahan yang secara otomatis ditulis ke Log Analitik.
- Dapr: Integrasi Dapr untuk aplikasi kontainer Anda. Aktifkan integrasi ini dengan menggunakan bendera sederhana.
Pada latihan berikutnya, Anda akan diperkenalkan dengan konsep berikut.
- Lingkungan: Batas keamanan yang ditingkatkan di sekitar sekelompok aplikasi kontainer. Aplikasi disebarkan dalam satu jaringan virtual, mereka dapat dengan mudah berkomunikasi satu sama lain, dan mereka menulis log ke satu ruang kerja Analitik Log. Lingkungan dapat dibandingkan dengan namespace Kubernetes.
- Aplikasi kontainer: Sekelompok kontainer (pod) yang disebarkan dan diskalakan bersama-sama. Mereka berbagi satu ruang disk dan jaringan.
- Revisi: Cuplikan yang tidak dapat diubah dari aplikasi kontainer. Revisi baru dibuat secara otomatis dan berharga untuk strategi pengalihan lalu lintas HTTP seperti pengujian A/B.
Sekarang Anda akan membuat lingkungan Aplikasi Kontainer untuk melihat cara kerja elemen-elemen ini.