Buat dan kelola lokasi kustom di Kubernetes yang didukung Azure Arc
Fitur lokasi kustom menyediakan cara untuk mengonfigurasi kluster Kubernetes dengan dukungan Azure Arc sebagai lokasi target untuk menyebarkan instans penawaran Azure. Contoh penawaran Azure yang dapat disebarkan di atas lokasi kustom termasuk database, seperti SQL Managed Instance yang diaktifkan oleh server PostgreSQL dengan dukungan Azure Arc dan Azure Arc, atau instans aplikasi, seperti App Services, Functions, Event Grid, Logic Apps, dan API Management.
Lokasi kustom memiliki pemetaan satu-ke-satu ke namespace dalam kluster Kubernetes dengan dukungan Azure Arc. Sumber daya Azure lokasi kustom yang dikombinasikan dengan kontrol akses berbasis peran Azure (Azure RBAC) dapat digunakan untuk memberikan izin terperinci kepada pengembang aplikasi atau admin database, memungkinkan mereka untuk menyebarkan sumber daya seperti database atau instans aplikasi di atas kluster Kube yang didukung Arc di lingkungan multipenyewa.
Dalam artikel ini, Anda mempelajari cara mengaktifkan lokasi kustom pada kluster Kubernetes dengan dukungan Arc, dan cara membuat lokasi kustom.
Prasyarat
Instal atau tingkatkan Azure CLI ke versi terbaru.
Instal versi terbaru ekstensi Azure CLI berikut:
connectedk8s
k8s-extension
customlocation
az extension add --name connectedk8s az extension add --name k8s-extension az extension add --name customlocation
Jika Anda telah menginstal
connectedk8s
ekstensi ,k8s-extension
, dancustomlocation
, perbarui ke versi terbaru dengan menggunakan perintah berikut:az extension update --name connectedk8s az extension update --name k8s-extension az extension update --name customlocation
Verifikasi pendaftaran penyedia yang telah selesai untuk
Microsoft.ExtendedLocation
.Masukkan perintah berikut:
az provider register --namespace Microsoft.ExtendedLocation
Pantau proses pendaftaran. Pendaftaran mungkin memakan waktu hingga 10 menit.
az provider show -n Microsoft.ExtendedLocation -o table
Setelah terdaftar,
RegistrationState
status akan memiliki nilaiRegistered
.
Verifikasi bahwa Anda memiliki kluster yang terhubung dengan Kubernetes dengan dukungan Azure Arc, dan tingkatkan agen Anda ke versi terbaru. Konfirmasikan bahwa komputer tempat Anda akan menjalankan perintah yang dijelaskan dalam artikel ini memiliki
kubeconfig
file yang menunjuk ke kluster ini.
Mengaktifkan lokasi kustom pada kluster Anda
Penting
Fitur lokasi kustom bergantung pada fitur koneksi kluster. Kedua fitur harus diaktifkan di kluster agar lokasi kustom berfungsi.
ID Objek Lokasi Kustom (OID) diperlukan untuk mengaktifkan lokasi kustom. Jika akun pengguna Anda memiliki izin yang diperlukan, OID akan diambil secara otomatis selama pengaktifan fitur. Jika Anda tidak memiliki akun pengguna yang valid, maka OID yang diteruskan secara manual digunakan tetapi OID tidak dapat divalidasi. Jika OID tidak valid, maka lokasi kustom mungkin tidak diaktifkan dengan benar.
Untuk mengaktifkan fitur lokasi kustom sebagai pengguna Microsoft Entra, ikuti langkah-langkah di bawah ini:
- Masuk ke Azure CLI sebagai pengguna Microsoft Entra dan jalankan perintah berikut:
az connectedk8s enable-features -n <clusterName> -g <resourceGroupName> --features cluster-connect custom-locations
Untuk mengaktifkan fitur lokasi kustom dengan perwakilan layanan, ikuti langkah-langkah di bawah ini:
Ambil OID lokasi kustom secara manual dengan mengikuti langkah-langkah berikut:
Masuk ke Azure CLI sebagai pengguna Microsoft Entra.
Jalankan perintah berikut untuk mengambil lokasi
oid
kustom (ID objek), di mana--id
mengacu pada aplikasi layanan Lokasi Kustom itu sendiri, dan telah ditentukan sebelumnya dan diatur kebc313c14-388c-4e7d-a58e-70017303ee3b
:Penting! Salin dan jalankan perintah persis seperti yang ditunjukkan di bawah ini. Jangan ganti nilai yang diteruskan ke
--id
parameter dengan nilai yang berbeda.az ad sp show --id bc313c14-388c-4e7d-a58e-70017303ee3b --query id -o tsv
Masuk ke Azure CLI menggunakan perwakilan layanan. Jalankan perintah berikut untuk mengaktifkan fitur lokasi kustom pada kluster, menggunakan
oid
nilai (ID objek) dari langkah sebelumnya untuk--custom-locations-oid
parameter:az connectedk8s enable-features -n <cluster-name> -g <resource-group-name> --custom-locations-oid <cl-oid> --features cluster-connect custom-locations
Buat lokasi kustom
Sebarkan ekstensi kluster layanan Azure dari instans layanan Azure yang ingin dipasang di kluster Anda:
Layanan data dengan dukungan Azure Arc
Catatan
Proksi keluar tanpa autentikasi dan proksi keluar dengan autentikasi dasar didukung oleh ekstensi kluster layanan data dengan dukungan Azure Arc. Proksi keluar yang mengharapkan sertifikat tepercaya saat ini tidak didukung.
Dapatkan pengidentifikasi Azure Resource Manager kluster Kube dengan dukungan Azure Arc, yang direferensikan dalam langkah-langkah selanjutnya sebagai
connectedClusterId
:az connectedk8s show -n <clusterName> -g <resourceGroupName> --query id -o tsv
Dapatkan pengidentifikasi Azure Resource Manager dari ekstensi kluster yang Anda sebarkan ke kluster Kubernetes dengan dukungan Azure Arc, yang direferensikan dalam langkah-langkah selanjutnya sebagai
extensionId
:az k8s-extension show --name <extensionInstanceName> --cluster-type connectedClusters -c <clusterName> -g <resourceGroupName> --query id -o tsv
Buat lokasi kustom dengan mereferensikan kluster Kubernetes dengan dukungan Azure Arc dan ekstensi:
az customlocation create -n <customLocationName> -g <resourceGroupName> --namespace <name of namespace> --host-resource-id <connectedClusterId> --cluster-extension-ids <extensionId>
Parameter yang diperlukan:
Nama Parameter Deskripsi --name, --n
Nama lokasi kustom. --resource-group, --g
Grup sumber daya lokasi kustom. --namespace
Namespace di kluster yang terikat ke lokasi kustom yang sedang dibuat. --host-resource-id
Pengidentifikasi Azure Resource Manager dari kluster Kubernetes dengan dukungan Azure Arc (kluster yang terhubung). --cluster-extension-ids
Pengidentifikasi Azure Resource Manager dari instans ekstensi kluster yang diinstal pada kluster yang terhubung. Untuk beberapa ekstensi, berikan daftar ID ekstensi kluster yang dipisahkan spasi Parameter opsional:
Nama Parameter Deskripsi --location, --l
Lokasi sumber daya lokasi kustom Azure Resource Manager di Azure. Jika tidak ditentukan, lokasi kluster yang terhubung digunakan. --tags
Daftar tag yang dipisahkan spasi dalam format key[=value]
. Gunakan '' untuk menghapus tag yang ada.--kubeconfig
Admin kubeconfig
kluster.
Konfirmasikan bahwa lokasi kustom berhasil diaktifkan dengan menjalankan perintah berikut dan memeriksanya
ProvisioningState
adalahSucceeded
:
az customlocation show -n <customLocationName> -g <resourceGroupName>
Tampilkan detail lokasi kustom
Untuk memperlihatkan detail lokasi kustom, gunakan perintah berikut:
az customlocation show -n <customLocationName> -g <resourceGroupName>
Buat daftar lokasi kustom
Untuk mencantumkan semua lokasi kustom dalam grup sumber daya, gunakan perintah berikut:
az customlocation list -g <resourceGroupName>
Memperbarui lokasi kustom
update
Gunakan perintah untuk menambahkan nilai baru untuk --tags
atau mengaitkan baru --cluster-extension-ids
ke lokasi kustom, sambil mempertahankan nilai yang ada untuk tag dan ekstensi kluster terkait.
az customlocation update -n <customLocationName> -g <resourceGroupName> --namespace <name of namespace> --host-resource-id <connectedClusterId> --cluster-extension-ids <extensionIds>
Buat Patch lokasi kustom
patch
Gunakan perintah untuk mengganti nilai yang ada untuk --cluster-extension-ids
atau --tags
. Nilai sebelumnya tidak dipertahankan.
az customlocation patch -n <customLocationName> -g <resourceGroupName> --namespace <name of namespace> --host-resource-id <connectedClusterId> --cluster-extension-ids <extensionIds>
Menghapus lokasi khusus
Untuk menghapus lokasi kustom, gunakan perintah berikut:
az customlocation delete -n <customLocationName> -g <resourceGroupName>
Pemecahan Masalah
Jika pembuatan lokasi kustom gagal dengan kesalahan Unknown proxy error occurred
, ubah kebijakan jaringan Anda untuk mengizinkan komunikasi internal pod-ke-pod dalam azure-arc
namespace. Pastikan juga untuk menambahkan azure-arc
namespace sebagai bagian dari daftar pengecualian tanpa proksi untuk kebijakan yang dikonfigurasi.
Jika Anda mencoba mengaktifkan lokasi kustom saat masuk ke Azure CLI menggunakan perwakilan layanan, Anda dapat mengamati peringatan berikut:
Unable to fetch oid of 'custom-locations' app. Proceeding without enabling the feature. Insufficient privileges to complete the operation.
Peringatan ini terjadi karena perwakilan layanan tidak memiliki izin yang diperlukan untuk mengambil oid
(ID objek) dari lokasi kustom yang digunakan oleh layanan Azure Arc. Ikuti instruksi yang diberikan di atas untuk mengaktifkan fitur lokasi kustom menggunakan perwakilan layanan.
Langkah berikutnya
- Sambungkan dengan aman ke kluster menggunakan Cluster Connect.
- Lanjutkan dengan Azure App Service di Azure Arc untuk petunjuk end-to-end tentang pemasangan ekstensi, pembuatan lokasi kustom, dan pembuatan lingkungan Kube App Service.
- Buat topik Event Grid dan langganan peristiwa untuk Event Grid di Kube.
- Pelajari lebih lanjut ekstensi Kube dengan dukungan Azure Arc yang saat ini tersedia.