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 Küme Yöneticisi |
Hem Arc özellikli Kubernetes kümesi hem de AKS kümesi için geçerlidir. |
Azure Kubernetes Service | Katılımcı | Yalnızca Güvenilen Erişim özelliğini kullanan AKS kümeleri için gereklidir. Çalışma alanı, kullanıcı tarafından atanan yönetilen kimliği kullanır. Ayrıntılar için bkz . Özel yapılandırmalarla AKS kümelerine AzureML erişimi. |
İ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 Admin" rol izni kullanılamıyorsa, 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 Kubernetes
ayarlayı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 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.
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ı kullanma
- Rol atamak için Azure CLI kullanma
- Rol atamak için Azure PowerShell kullanma
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 Blobu Veri Okuyucusu rolü verilmelidir.
- Okuma-yazma amacıyla, işlem yönetilen kimliğine Depolama Blob Verileri Katkıda Bulunanı rolü verilmelidir.