Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Tutorial ini memandu Anda melalui proses mengintegrasikan Admin terkelola untuk Spring dengan Eureka Server for Spring dalam Azure Container Apps.
Dengan Eureka Server untuk Spring, Anda dapat mengikat Admin untuk Spring ke Eureka Server untuk Spring, sehingga bisa mendapatkan informasi aplikasi melalui Eureka, alih-alih harus mengikat aplikasi individual ke Admin untuk Spring.
Dengan mengikuti panduan ini, Anda menyiapkan Eureka Server untuk penemuan layanan lalu membuat Admin untuk Spring untuk mengelola dan memantau aplikasi Spring Anda yang terdaftar di Eureka Server. Penyiapan ini memastikan bahwa aplikasi lain hanya perlu mengikat Eureka Server, menyederhanakan manajemen layanan mikro Anda.
Dalam tutorial ini, Anda mempelajari caranya:
- Buat Eureka Server untuk Spring.
- Buat Admin untuk Spring dan tautkan ke Eureka Server.
- Ikat aplikasi lain ke Eureka Server untuk penemuan dan manajemen layanan yang disederhanakan.
Prasyarat
- Akun Azure dengan langganan aktif. Jika Anda belum memilikinya, Anda dapat membuatnya secara gratis.
- Azure CLI.
- Komponen Eureka Server untuk Spring Java yang ada. Jika Anda tidak memilikinya, lihat Membuat Server Eureka untuk Spring.
Pertimbangan
Saat menjalankan komponen Java terkelola di Azure Container Apps, ketahui detail berikut:
| Barang | Penjelasan |
|---|---|
| Cakupan | Komponen berjalan di lingkungan yang sama dengan aplikasi kontainer yang terhubung. |
| Skalabilitas | Komponen tidak dapat menskalakan. Properti penskalakan minReplicas dan maxReplicas keduanya diatur ke 1. |
| Sumber | Alokasi sumber daya kontainer untuk komponen bersifat tetap. Jumlah inti CPU adalah 0,5, dan ukuran memorinya adalah 1 GB. |
| Harga | Penagihan komponen mengikuti penetapan harga berbasis konsumsi. Sumber daya yang digunakan oleh komponen terkelola ditagih dengan tarif aktif atau diam, tergantung pada penggunaan sumber daya. Anda dapat menghapus komponen yang tidak lagi digunakan untuk menghentikan penagihan. |
| Pengikatan | Aplikasi kontainer terhubung ke komponen melalui pengikatan. Pengikatan menyuntikkan konfigurasi ke dalam variabel lingkungan aplikasi kontainer. Setelah pengikatan dibuat, aplikasi kontainer dapat membaca nilai konfigurasi dari variabel lingkungan dan terhubung ke komponen. |
Pengaturan
Sebelum memulai, buat sumber daya yang diperlukan dengan menjalankan perintah berikut.
Buat variabel untuk mendukung konfigurasi aplikasi Anda. Nilai-nilai ini disediakan untuk Anda untuk tujuan pelajaran ini.
export LOCATION=eastus export RESOURCE_GROUP=my-services-resource-group export ENVIRONMENT=my-environment export EUREKA_COMPONENT_NAME=eureka export ADMIN_COMPONENT_NAME=admin export CLIENT_APP_NAME=sample-service-eureka-client export CLIENT_IMAGE="mcr.microsoft.com/javacomponents/samples/sample-admin-for-spring-client:latest"Variabel Deskripsi LOCATIONLokasi wilayah Azure tempat Anda membuat aplikasi kontainer dan komponen Java. RESOURCE_GROUPNama grup sumber daya Azure untuk aplikasi demo Anda. ENVIRONMENTNama lingkungan Azure Container Apps untuk aplikasi demo Anda. EUREKA_COMPONENT_NAMENama komponen Eureka Server Java. ADMIN_COMPONENT_NAMENama admin untuk komponen Spring Java. CLIENT_APP_NAMENama aplikasi kontainer yang mengikat Eureka Server. CLIENT_IMAGEGambar kontainer yang digunakan di aplikasi kontainer Eureka Server Anda. Masuk ke Azure dengan Azure CLI.
az loginBuat grup sumber daya.
az group create --name $RESOURCE_GROUP --location $LOCATIONBuat lingkungan aplikasi kontainer Anda.
az containerapp env create \ --name $ENVIRONMENT \ --resource-group $RESOURCE_GROUP \ --location $LOCATION \ --query "properties.provisioningState"Menggunakan parameter
--querymemfilter respons menjadi pesan keberhasilan atau kegagalan sederhana.
Opsional: Membuat Server Eureka untuk Spring
Jika Anda tidak memiliki Eureka Server untuk Spring, gunakan perintah berikut untuk membuat komponen Eureka Server Java. Untuk informasi selengkapnya, lihat Membuat Server Eureka untuk Spring.
az containerapp env java-component eureka-server-for-spring create \
--environment $ENVIRONMENT \
--resource-group $RESOURCE_GROUP \
--name $EUREKA_COMPONENT_NAME
Mengikat komponen bersama-sama
Buat komponen Admin untuk Spring Java.
az containerapp env java-component admin-for-spring create \
--environment $ENVIRONMENT \
--resource-group $RESOURCE_GROUP \
--name $ADMIN_COMPONENT_NAME \
--min-replicas 1 \
--max-replicas 1 \
--bind $EUREKA_COMPONENT_NAME
Mengikat aplikasi lain ke Eureka Server
Setelah pengaturan Eureka Server, Anda sekarang dapat menyambungkan aplikasi lain untuk penemuan layanan. Dan Anda juga dapat memantau dan mengelola aplikasi ini di dasbor Admin untuk Spring. Gunakan langkah-langkah berikut untuk membuat dan mengikat aplikasi kontainer ke Eureka Server:
Buat aplikasi kontainer dan ikat ke Eureka Server.
az containerapp create \
--name $CLIENT_APP_NAME \
--resource-group $RESOURCE_GROUP \
--environment $ENVIRONMENT \
--image $CLIENT_IMAGE \
--min-replicas 1 \
--max-replicas 1 \
--ingress external \
--target-port 8080 \
--bind $EUREKA_COMPONENT_NAME
Petunjuk
Langkah-langkah sebelumnya mengikat komponen Admin untuk Spring ke komponen Eureka Server for Spring. Komponen Admin memungkinkan penemuan layanan dan memungkinkan Anda mengelolanya melalui dasbor Admin untuk Spring secara bersamaan.
Lihat dasbor
Penting
Untuk melihat dasbor, Anda harus memiliki setidaknya peran yang Microsoft.App/managedEnvironments/write ditetapkan ke akun Anda pada sumber daya lingkungan terkelola. Anda dapat secara eksplisit menetapkan Owner peran atau Contributor pada sumber daya atau mengikuti langkah-langkah untuk membuat definisi peran kustom dan menetapkannya ke akun Anda.
Buat definisi peran kustom.
az role definition create --role-definition '{ "Name": "Java Component Dashboard Access", "IsCustom": true, "Description": "Can access managed Java Component dashboards in managed environments", "Actions": [ "Microsoft.App/managedEnvironments/write" ], "AssignableScopes": ["/subscriptions/<SUBSCRIPTION_ID>"] }'Pastikan untuk mengganti nilai di
<SUBSCRIPTION_ID>dengan ID langganan Anda pada tempat penampungAssignableScopes.Tetapkan peran kustom ke akun Anda di sumber daya lingkungan terkelola.
Dapatkan ID sumber daya lingkungan terkelola.
export ENVIRONMENT_ID=$(az containerapp env show \ --name $ENVIRONMENT --resource-group $RESOURCE_GROUP \ --query id \ --output tsv)Tetapkan peran pada akun Anda.
Sebelum menjalankan perintah ini, ganti placeholder
<USER_OR_SERVICE_PRINCIPAL_ID>dengan ID pengguna atau prinsipal layanan Anda.az role assignment create \ --assignee <USER_OR_SERVICE_PRINCIPAL_ID> \ --role "Java Component Dashboard Access" \ --scope $ENVIRONMENT_IDDapatkan URL dasbor Admin untuk Spring.
az containerapp env java-component admin-for-spring show \ --environment $ENVIRONMENT \ --resource-group $RESOURCE_GROUP \ --name $ADMIN_COMPONENT_NAME \ --query properties.ingress.fqdn \ --output tsvDapatkan URL dari Eureka Server untuk dashboard Spring.
az containerapp env java-component eureka-server-for-spring show \ --environment $ENVIRONMENT \ --resource-group $RESOURCE_GROUP \ --name $EUREKA_COMPONENT_NAME \ --query properties.ingress.fqdn \ --output tsvPerintah ini mengembalikan URL yang dapat Anda gunakan untuk mengakses dasbor Eureka Server for Spring. Melalui dasbor, Anda dapat melihat aplikasi kontainer seperti pada cuplikan layar berikut.
Membersihkan sumber daya
Sumber daya yang dibuat dalam tutorial ini berpengaruh pada tagihan Azure Anda. Jika Anda tidak akan menggunakan layanan ini dalam jangka panjang, jalankan perintah berikut untuk menghapus semua yang dibuat dalam tutorial ini.
az group delete --resource-group $RESOURCE_GROUP