Mengaktifkan Azure Arc di kluster Kubernetes pada perangkat Azure Stack Edge Pro GPU
BERLAKU UNTUK: Azure Stack Edge Pro - GPUAzure Stack Edge Pro 2Azure Stack Edge Pro RAzure Stack Edge Mini R
Artikel ini menunjukkan cara mengaktifkan Azure Arc pada kluster Kubernetes yang ada pada perangkat Azure Stack Edge Pro Anda.
Prosedur ini mengasumsikan bahwa Anda telah membaca dan memahami artikel berikut:
- Beban kerja Kubernetes pada perangkat Azure Stack Edge Pro
- Apa itu Kubernetes dengan dukungan Azure Arc (Pratinjau)?
Prasyarat
Pastikan Anda telah menyelesaikan prasyarat berikut di perangkat Azure Stack Edge Pro dan klien yang Anda gunakan untuk mengakses perangkat:
Untuk perangkat
Anda memiliki informasi masuk ke perangkat Azure Stack Edge Pro 1-node.
- Perangkat diaktifkan. Lihat Mengaktifkan perangkat.
- Perangkat ini memiliki peran komputasi yang dikonfigurasi melalui portal Microsoft Azure dan memiliki kluster Kubernetes. Lihat Mengonfigurasi komputasi.
Anda memiliki akses pemilik ke langganan. Anda akan memerlukan akses ini selama langkah penetapan peran untuk perwakilan layanan Anda.
Untuk klien yang mengakses perangkat
Anda memiliki sistem klien Windows yang digunakan untuk mengakses perangkat Azure Stack Edge Pro.
Klien menjalankan Windows PowerShell 5.0 atau yang lebih baru. Untuk mengunduh Windows PowerShell versi terbaru, buka Memasang Windows PowerShell.
Anda dapat menggunakan klien lain dengan Sistem operasi yang didukung dengan baik. Artikel ini menjelaskan prosedur saat menggunakan klien Windows.
Anda telah menyelesaikan prosedur yang dijelaskan dalam Mengakses kluster Kubernetes di perangkat Azure Stack Edge Pro. Anda telah:
- Memasang
kubectl
pada klien. - Memastikan versi klien
kubectl
dipasang tidak melebihi satu versi dari versi master Kubernetes yang berjalan di perangkat Azure Stack Edge Pro Anda.Menggunakan
kubectl version
untuk memeriksa versi kubectl yang berjalan pada klien. Catat versi lengkapnya.Di antarmuka pengguna lokal perangkat Azure Stack Edge Pro, buka Pembaruan perangkat lunak dan catat nomor versi server Kubernetes.
Verifikasi bahwa kedua versi ini kompatibel.
- Memasang
Mendaftarkan penyedia sumber Kubernetes
Sebelum mengaktifkan Azure Arc pada kluster Kubernetes, Anda perlu mengaktifkan dan mendaftar Microsoft.Kubernetes
dan Microsoft.KubernetesConfiguration
terhadap langganan Anda.
Untuk mengaktifkan penyedia sumber daya, di portal Azure, buka langganan yang ingin Anda gunakan untuk penyebaran. Buka Penyedia Sumber.
Di panel sebelah kanan, cari penyedia yang ingin Anda tambahkan. Dalam contoh ini,
Microsoft.Kubernetes
danMicrosoft.KubernetesConfiguration
.Pilih penyedia sumber dan dari bagian atas bar perintah, pilih Daftarkan. Pendaftaran memakan waktu beberapa menit.
Refresh antarmuka pengguna hingga Anda melihat bahwa penyedia sumber terdaftar. Ulangi proses untuk kedua penyedia sumber.
Anda juga dapat mendaftarkan penyedia sumber melalui az cli
. Untuk informasi selengkapnya, lihat Mendaftarkan dua penyedia untuk Kubernetes yang didukung Azure Arc.
Membuat perwakilan layanan, menetapkan peran
Pastikan Anda memiliki
Subscription ID
dan nama grup sumber daya yang Anda gunakan untuk penyebaran sumber daya untuk layanan Azure Stack Edge Anda. Untuk mendapatkan ID langganan, buka sumber daya Azure Stack Edge Anda di portal Microsoft Azure. Navigasi ke EsensiAlat Gambaran Umum>.Untuk mendapatkan nama grup sumber daya, buka Properti.
Untuk membuat perwakilan layanan, gunakan perintah berikut melalui
az cli
.az ad sp create-for-rbac --name "<Informative name for service principal>"
Untuk informasi tentang cara masuk ke
az cli
, Mulai Cloud Shell di portal Azure. Jika menggunakanaz cli
klien lokal untuk membuat perwakilan layanan, pastikan Anda menjalankan versi 2.25 atau yang lebih baru.Berikut adalah contoh.
PS /home/user> az ad sp create-for-rbac --name "https://azure-arc-for-ase-k8s" { "appId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "displayName": "azure-arc-for-ase-k8s", "name": "https://azure-arc-for-ase-k8s", "password": "<password>", "tenant": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" } PS /home/user>
appID
Catat , ,name
password
, dantenantID
karena Anda akan menggunakan nilai-nilai ini sebagai input ke perintah berikutnya.Setelah membuat perwakilan layanan baru, tetapkan peran
Kubernetes Cluster - Azure Arc Onboarding
untuk perwakilan yang baru dibuat. Peran ini adalah peran Azure bawaan (gunakan ID peran dalam perintah) dengan izin terbatas. Gunakan perintah berikut:az role assignment create --role 34e09817-6cbe-4d01-b1a2-e0eac5743d41 --assignee <appId-from-service-principal> --scope /subscriptions/<SubscriptionID>/resourceGroups/<Resource-group-name>
Berikut adalah contoh.
PS /home/user> az role assignment create --role 34e09817-6cbe-4d01-b1a2-e0eac5743d41 --assignee xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx --scope /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myaserg1 { "canDelegate": null, "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myaserg1/providers/Microsoft.Authorization/roleAssignments/59272f92-e5ce-4aeb-9c0c-62532d8caf25", "name": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "principalId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "principalType": "ServicePrincipal", "resourceGroup": "myaserg1", "roleDefinitionId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Authorization/roleDefinitions/34e09817-6cbe-4d01-b1a2-e0eac5743d41", "scope": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myaserg1", "type": "Microsoft.Authorization/roleAssignments" } PS /home/user>
Mengaktifkan Arc pada kluster Kubernetes
Ikuti langkah-langkah berikut untuk mengonfigurasi kluster Kubernetes untuk manajemen Azure Arc:
Sambungkan ke antarmuka PowerShell perangkat Anda.
Jenis:
Set-HcsKubernetesAzureArcAgent -SubscriptionId "<Your Azure Subscription Id>" -ResourceGroupName "<Resource Group Name>" -ResourceName "<Azure Arc resource name (shouldn't exist already)>" -Location "<Region associated with resource group>" -TenantId "<Tenant Id of service principal>" -ClientId "<App id of service principal>"
Ketika perintah ini dijalankan, ada perintah tindak lanjut untuk memasukkan
ClientSecret
. Berikan kata sandi perwakilan layanan.CloudEnvironment
Tambahkan parameter jika Anda menggunakan cloud selain publik Azure. Anda dapat mengatur parameter ini keAZUREPUBLICCLOUD
,AZURECHINACLOUD
,AZUREGERMANCLOUD
, danAZUREUSGOVERNMENTCLOUD
.Catatan
- Untuk menyebarkan Azure Arc di perangkat Anda, pastikan Anda menggunakan Wilayah yang didukung untuk Azure Arc.
- Gunakan perintah
az account list-locations
untuk mencari tahu nama lokasi yang tepat untuk dilewati di cmdletSet-HcsKubernetesAzureArcAgent
. Nama lokasi biasanya diformat tanpa spasi. ClientId
danClientSecret
diperlukan.
Berikut contohnya:
[10.100.10.10]: PS>Set-HcsKubernetesAzureArcAgent -SubscriptionId "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" -ResourceGroupName "myaserg1" -ResourceName "myasetestresarc" -Location "westeurope" -TenantId "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" -ClientId "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" WARNING: A script or application on the remote computer 10.126.76.0 is sending a prompt request. When you are prompted, enter sensitive information, such as credentials or passwords, only if you trust the remote computer and the application or script that is requesting the data. cmdlet Set-HcsKubernetesAzureArcAgent at command pipeline position 1 Supply values for the following parameters: ClientSecret: ********************************** [10.100.10.10]: PS>
Di portal Microsoft Azure, sumber daya harus dibuat dengan nama yang Anda berikan di perintah sebelumnya.
Untuk memverifikasi bahwa Azure Arc berhasil diaktifkan, jalankan perintah berikut dari antarmuka PowerShell:
kubectl get deployments,pods -n azure-arc
Berikut adalah contoh output yang menunjukkan agen Azure Arc yang disebarkan pada kluster Kubernetes Anda di
azure-arc
namespace layanan.[10.128.44.240]: PS>kubectl get deployments,pods -n azure-arc NAME READY UP-TO-DATE AVAILABLE AGE deployment.apps/cluster-metadata-operator 1/1 1 1 13d deployment.apps/clusterconnect-agent 1/1 1 1 13d deployment.apps/clusteridentityoperator 1/1 1 1 13d deployment.apps/config-agent 1/1 1 1 13d deployment.apps/controller-manager 1/1 1 1 13d deployment.apps/extension-manager 1/1 1 1 13d deployment.apps/flux-logs-agent 1/1 1 1 13d deployment.apps/kube-aad-proxy 1/1 1 1 13d deployment.apps/metrics-agent 1/1 1 1 13d deployment.apps/resource-sync-agent 1/1 1 1 13d NAME READY STATUS RESTARTS AGE pod/cluster-metadata-operator-9568b899c-2stjn 2/2 Running 0 13d pod/clusterconnect-agent-576758886d-vggmv 3/3 Running 0 13d pod/clusteridentityoperator-6f59466c87-mm96j 2/2 Running 0 13d pod/config-agent-7cbd6cb89f-9fdnt 2/2 Running 0 13d pod/controller-manager-df6d56db5-kxmfj 2/2 Running 0 13d pod/extension-manager-58c94c5b89-c6q72 2/2 Running 0 13d pod/flux-logs-agent-6db9687fcb-rmxww 1/1 Running 0 13d pod/kube-aad-proxy-67b87b9f55-bthqv 2/2 Running 0 13d pod/metrics-agent-575c565fd9-k5j2t 2/2 Running 0 13d pod/resource-sync-agent-6bbd8bcd86-x5bk5 2/2 Running 0 13d [10.128.44.240]: PS>
Gambaran umum konseptual agen ini tersedia di sini.
Menghapus Arc dari kluster Kubernetes
Untuk menghapus manajemen Azure Arc, ikuti langkah-langkah berikut ini:
-
- Sambungkan ke antarmuka PowerShell perangkat Anda.
Jenis:
Remove-HcsKubernetesAzureArcAgent
Catatan
Secara default, ketika sumber daya yamls
dihapus dari repositori Git, sumber daya yang berkaitan tidak dihapus dari kluster Kubernetes. Anda perlu mengatur --sync-garbage-collection
di OperatorParams Arc untuk memungkinkan penghapusan sumber daya saat dihapus dari repositori git. Untuk informasi selengkapnya, lihat Menghapus konfigurasi
Langkah berikutnya
Untuk memahami cara menjalankan penyebaran Azure Arc, lihat Menyebarkan aplikasi PHP stateless Guestbook
dengan Redis melalui GitOps pada perangkat Azure Stack Edge Pro