Azure Machine Learning çalışma alanına Kubernetes kümesi ekleme

ŞUNLAR IÇIN GEÇERLIDIR: Azure CLI ml uzantısı v2 (geçerli)Python SDK azure-ai-ml v2 (geçerli)

Azure Machine Learning uzantısı AKS veya Arc Kubernetes kümesine dağıtıldıktan sonra Kubernetes kümesini Azure Machine Learning çalışma alanına ekleyebilir ve ML uzmanlarının kullanması için işlem hedefleri oluşturabilirsiniz.

Önkoşullar

Azure Machine Learning çalışma alanına kubernetes kümesi eklemek birçok farklı senaryoya esnek bir şekilde destek olabilir. Örneğin, birden çok eki olan paylaşılan senaryolar, Azure kaynaklarına erişen model eğitim betikleri ve çalışma alanının kimlik doğrulama yapılandırması.

Çoklu ekleme ve iş yükü yalıtımı

Birden çok işlem hedefi oluşturarak bir kümeden bir çalışma alanına

  • Aynı Kubernetes kümesi için, bunu aynı çalışma alanına birden çok kez ekleyebilir ve farklı projeler/ekipler/iş yükleri için birden çok işlem hedefi oluşturabilirsiniz.

Bir kümeden birden çok çalışma alanına

  • Aynı Kubernetes kümesi için, bunu birden çok çalışma alanına da ekleyebilirsiniz ve birden çok çalışma alanı aynı Kubernetes kümesini paylaşabilir.

Farklı projeler/takımlar için farklı işlem hedeflerine sahip olmak istiyorsanız, farklı ekipler/projeler arasında iş yükünü yalıtmak için işlem hedefi için kümenizde mevcut Kubernetes ad alanını belirtebilirsiniz.

Önemli

Kümeyi Azure Machine Learning çalışma alanına eklerken belirtmeyi planladığınız ad alanı daha önce kümenizde oluşturulmalıdır.

Eğitim betiğinden Azure kaynağına güvenli bir şekilde erişme

Eğitim betiğinizden Azure kaynağına güvenli bir şekilde erişmeniz gerekiyorsa, ekleme işlemi sırasında Kubernetes işlem hedefi için bir yönetilen kimlik belirtebilirsiniz.

Kullanıcı tarafından atanan yönetilen kimlikle çalışma alanına ekleme

Azure Machine Learning çalışma alanı varsayılan olarak Azure Machine Learning kaynaklarına erişmek için sistem tarafından atanan yönetilen kimliğe sahip olur. Sistem tarafından atanan varsayılan ayar açıksa adımlar tamamlanır.

Aksi takdirde, Azure Machine Learning çalışma alanı oluşturma işleminde kullanıcı tarafından atanan bir yönetilen kimlik belirtilirse, işlemi eklemeden önce yönetilen kimliğe aşağıdaki rol atamalarının el ile verilmesi gerekir.

Azure kaynak adı Atanacak roller Açıklama
Azure Geçişi Azure Relay Sahibi Yalnızca Arc özellikli Kubernetes kümesi için geçerlidir. Azure Relay, Arc bağlı olmadan AKS kümesi için oluşturulmaz.
Kubernetes - Azure Arc veya Azure Kubernetes Service Okuyucu
Kubernetes Uzantısı Katkıda Bulunanı
Azure Kubernetes Service Cluster Yönetici
Hem Arc özellikli Kubernetes kümesi hem de AKS kümesi için geçerlidir.

İpucu

Azure Relay kaynağı, uzantı dağıtımı sırasında Arc özellikli Kubernetes kümesiyle aynı Kaynak Grubu altında oluşturulur.

Not

  • "Kubernetes Uzantısı Katkıda Bulunanı" rol izni kullanılamıyorsa, küme eki "uzantı yüklenmedi" hatasıyla başarısız olur.
  • "Azure Kubernetes Service Cluster Yönetici" rol izni yoksa, küme eki "iç sunucu" hatasıyla başarısız olur.

Azure Machine Learning çalışma alanına Kubernetes kümesi ekleme

Azure CLI veya studio kullanıcı arabirimini kullanarak Azure Machine Learning çalışma alanına Kubernetes kümesi eklemenin iki yolunu destekliyoruz.

Aşağıdaki CLI v2 komutları AKS ve Azure Arc özellikli Kubernetes kümesinin nasıl eklenip yönetilen kimliğin etkinleştirildiği bir işlem hedefi olarak nasıl kullanılacağını gösterir.

AKS kümesi

az ml compute attach --resource-group <resource-group-name> --workspace-name <workspace-name> --type Kubernetes --name k8s-compute --resource-id "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.ContainerService/managedclusters/<cluster-name>" --identity-type SystemAssigned --namespace <Kubernetes namespace to run Azure Machine Learning workloads> --no-wait

Arc Kubernetes kümesi

az ml compute attach --resource-group <resource-group-name> --workspace-name <workspace-name> --type Kubernetes --name amlarc-compute --resource-id "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Kubernetes/connectedClusters/<cluster-name>" --user-assigned-identities "subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<identity-name>" --no-wait

bağımsız değişkenini --type olarak Kubernetesayarlayın. Kimlikleri etkinleştirmek SystemAssigned veya UserAssigned yönetilen kimlikler için bağımsız değişkenini identity_type kullanın.

Önemli

--user-assigned-identities yalnızca yönetilen kimlikler için UserAssigned gereklidir. Virgülle ayrılmış kullanıcı tarafından yönetilen kimliklerin listesini sağlayabilseniz de, kümenizi eklerken yalnızca ilk kimlik kullanılır.

İşlem ekleme, Kubernetes ad alanını otomatik olarak oluşturmaz veya kubernetes ad alanının mevcut olup olmadığını doğrulamaz. Belirtilen ad alanının kümenizde mevcut olduğunu doğrulamanız gerekir, aksi takdirde bu işlem için gönderilen tüm Azure Machine Learning iş yükleri başarısız olur.

İşlem hedefine yönetilen kimlik atama

Geliştiriciler için yaygın bir zorluk, çözümün farklı bileşenleri arasındaki iletişimin güvenliğini sağlamak için kullanılan gizli dizilerin ve kimlik bilgilerinin yönetimidir. Yönetilen kimlikler, geliştiricilerin kimlik bilgilerini yönetme gereksinimini ortadan kaldırır.

Docker görüntüsü için Azure Container Registry'ye (ACR) ve eğitim verilerine yönelik bir Depolama Hesabına erişmek için sistem tarafından atanan veya kullanıcı tarafından atanan yönetilen kimliğin etkinleştirildiği Kubernetes işlemini ekleyin.

Yönetilen kimlik atama

  • İşlem ekleme adımında, işlem için yönetilen kimlik atayabilirsiniz.

  • İşlem zaten eklenmişse, Azure Machine Learning stüdyosu'da yönetilen kimlik kullanmak için ayarları güncelleştirebilirsiniz.

    • Azure Machine Learning stüdyosu'a gidin. İşlem, İliştirilmiş işlem'i seçin ve ekli işleminizi seçin.
    • Yönetilen kimliği düzenlemek için kalem simgesini seçin.

    Screenshot of updating identity of the Kubernetes compute from Azure portal.

    Screenshot of selecting identity of the Kubernetes compute from Azure portal.

Yönetilen kimliğe Azure rolleri atama

Azure, yönetilen kimliğe rol atamanın birkaç yolunu sunar.

Rol atamak için Azure portalını kullanıyorsanız ve sistem tarafından atanan yönetilen bir kimliğe (Kullanıcı, Grup Sorumlusu veya Hizmet Sorumlusu Seç) sahipseniz Üye seç'i seçerek kimlik adını arayabilirsiniz. Kimlik adının şu şekilde biçimlendirilmesi gerekir: <workspace name>/computes/<compute target name>.

Kullanıcı tarafından atanan yönetilen kimliğiniz varsa, hedef kimliği bulmak için Yönetilen kimlik'i seçin.

Azure Container Registry'den görüntü çekmek için Yönetilen Kimlik'i kullanabilirsiniz. İşlem Yönetilen Kimliğine AcrPull rolü verin. Daha fazla bilgi için bkz . Azure Container Registry rolleri ve izinleri.

Azure Blob'a erişmek için yönetilen kimlik kullanabilirsiniz:

  • Salt okunur bir amaçla, işlem yönetilen kimliğine Depolama Blob Veri Okuyucusu rolü verilmelidir.
  • Okuma-yazma amacıyla, işlem yönetilen kimliğine Depolama Blob Veri Katkıda Bulunanı rolü verilmelidir.

Sonraki adımlar