Aracılığıyla paylaş


AzureMachine Learning'de Kubernetes işlem hedefine giriş

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

Azure Machine Learning CLI ve Python SDK v2, Kubernetes işlem hedefi için destek sağlar. Mevcut bir Azure Kubernetes Service (AKS) kümesini veya Azure Arc özellikli Kubernetes (Arc Kubernetes) kümesini Kubernetes işlem hedefi olarak etkinleştirebilirsiniz. Modelleri eğitmek veya dağıtmak için Machine Learning'deki işlemini kullanın.

Azure Machine Learning'in Kubernetes'e nasıl bağlanıp bağlanmayacağını gösteren diyagram.

Bu makalede, kullanım senaryoları, önerilen en iyi yöntemler ve ve eski AksCompute hedeflerin karşılaştırması dahil olmak üzere Machine Learning'de Kubernetes işlem hedefini KubernetesCompute nasıl kullanabileceğiniz açıklanmaktadır.

Kubernetes işlem hedefi nasıl çalışır?

Azure Machine Learning Kubernetes işlem iki tür Kubernetes kümesini destekler.

İşlem Konum Açıklama
AKS kümesi Azure'ın içi Azure'da kendi kendine yönetilen AKS kümenizle, ekibinizin makine öğrenmesi iş yükünü yönetmeye yönelik uyumluluk gereksinimini ve esnekliğini karşılamak için güvenlik ve denetimler elde edebilirsiniz.
Arc Kubernetes kümesi Azure dışında Arc Kubernetes kümesiyle, modelleri şirket içi veya çoklu bulut altyapısında ya da uçta eğitebilir veya dağıtabilirsiniz.

AKS veya Arc Kubernetes kümesinde basit bir küme uzantısı dağıtımıyla Kubernetes kümesi, eğitim veya çıkarım iş yükünü çalıştırmak için Machine Learning'de sorunsuz bir şekilde desteklenir. Aşağıdaki işlemle Machine Learning iş yükü için mevcut bir Kubernetes kümesini etkinleştirmek ve kullanmak kolaydır:

Bu işlemin birincil sorumlulukları şunlardır:

  • BT işlemi ekibi 1, 2 ve 3. Adımdan sorumludur. Bu ekip bir AKS veya Arc Kubernetes kümesi hazırlar, Machine Learning küme uzantısını dağıtır ve Kubernetes kümesini Machine Learning çalışma alanına ekler. BT işlemi ekibi, bu temel işlem kurulum adımlarına ek olarak, Veri bilimi ekibi için aşağıdaki görevleri tamamlamak için Azure CLI veya kubectl gibi tanıdık araçları da kullanır:

    • Giden ara sunucu bağlantısı veya Azure güvenlik duvarı, çıkarım yönlendiricisi (azureml-fe) kurulumu, SSL/TLS sonlandırma ve sanal ağ kurulumu gibi ağ ve güvenlik seçeneklerini yapılandırın.

    • Farklı makine öğrenmesi iş yükü senaryoları için örnek türleri oluşturup yönetin ve verimli işlem kaynağı kullanımı elde edin.

    • Kubernetes kümesiyle ilgili iş yükü sorunlarını giderme.

  • Veri bilimi ekibi, BT operasyonları ekibi işlem kurulumunu ve işlem hedeflerinin oluşturulmasını tamamladıktan sonra görevlerine başlar. Bu ekip, Machine Learning çalışma alanında kullanılabilir işlem hedeflerinin ve örnek türlerinin listesini bulur. İşlem kaynakları eğitim veya çıkarım iş yükü için kullanılabilir. Veri bilimi ekibi, tercih ettikleri araçları veya API'leri kullanarak işlem hedef adını ve örnek türü adını belirtir. Azure Machine Learning CLI v2, Python SDK v2 veya Machine Learning studio kullanıcı arabirimini kullanabilirler.

Kubernetes kullanım senaryoları

Arc Kubernetes kümesiyle, Kubernetes kullanarak tüm şirket içi ve çoklu bulut altyapılarında model oluşturabilir, eğitebilir ve dağıtabilirsiniz. Bu strateji, daha önce bir bulut ayarı ortamında mümkün olmayan bazı yeni kullanım desenlerini açar. Aşağıdaki tabloda, Azure Machine Learning Kubernetes işlemle çalışırken etkinleştirilen yeni kullanım desenlerinin özeti sağlanır:

Kullanım düzeni Verilerin konumu Hedefler ve gereksinimler Senaryo yapılandırması
Bulutta modeli eğitin, modeli şirket içinde dağıtın Bulut Esnek işlem gereksinimlerini veya GPU gibi özel donanımları desteklemek için bulut işlem kullanın.

Güvenlik, uyumluluk veya gecikme süresi gereksinimleri için model dağıtımı şirket içinde olmalıdır.
- Bulutta Azure tarafından yönetilen işlem
- Müşteri tarafından yönetilen Kubernetes şirket içi
- Bulut ile şirket içi arasında sorunsuz geçiş sağlayan eğitim ve model dağıtım adımları da dahil olmak üzere hibrit modda tam otomatik makine öğrenmesi işlemleri
- Yinelenebilir, tüm varlıklar düzgün şekilde izlenir, model gerektiğinde yeniden eğitilir, yeniden eğitildikten sonra dağıtım otomatik olarak güncelleştirilir
Modeli şirket içinde ve bulutta eğitin, hem buluta hem de şirket içine dağıtın Bulut Şirket içi yatırımları bulut ölçeklenebilirliğiyle birleştirin.

Bulut ve şirket içi işlemleri tek bir cam bölmesi altına getirin.

Buluttaki veriler için tek bir gerçek kaynağına erişin ve şirket içinde çoğaltın (kullanımda veya proaktif olarak).

Şirket içi kaynaklar kullanılabilir olmadığında (kullanımda veya bakımda) veya belirli donanım gereksinimlerini (GPU) karşılamadığında bulut işlem birincil kullanımını etkinleştirin.
- Bulutta Azure tarafından yönetilen işlem.
Şirket içinde müşteri tarafından yönetilen Kubernetes
- Bulut ile şirket içi arasında sorunsuz geçiş sağlayan eğitim ve model dağıtım adımları da dahil olmak üzere hibrit modda tam otomatik makine öğrenmesi işlemleri
- Yinelenebilir, tüm varlıklar düzgün şekilde izlenir, model gerektiğinde yeniden eğitilir, yeniden eğitildikten sonra dağıtım otomatik olarak güncelleştirilir
Modeli şirket içinde eğitin, bulutta model dağıtın Şirket içinde Veri yerleşimi gereksinimlerini karşılamak için verileri şirket içinde depolayın.

Küresel hizmet erişimi için veya ölçek ve aktarım hızı için işlem esnekliğini etkinleştirmek için modeli bulutta dağıtın.
- Bulutta Azure tarafından yönetilen işlem
- Müşteri tarafından yönetilen Kubernetes şirket içi
- Bulut ile şirket içi arasında sorunsuz geçiş sağlayan eğitim ve model dağıtım adımları da dahil olmak üzere hibrit modda tam otomatik makine öğrenmesi işlemleri
- Yinelenebilir, tüm varlıklar düzgün şekilde izlenir, model gerektiğinde yeniden eğitilir, yeniden eğitildikten sonra dağıtım otomatik olarak güncelleştirilir
Azure'da kendi AKS'nizi getirme Bulut Daha fazla güvenlik ve denetim elde edin.

Veri sızdırmayı önlemek için tüm özel IP makine öğrenimini oluşturun.
- Azure sanal ağının arkasındaki AKS kümesi
- Azure Machine Learning çalışma alanı ve ilişkili kaynaklar için aynı sanal ağdaki özel uç noktalar
Tam otomatik makine öğrenmesi işlemleri
Şirket içinde tam makine öğrenmesi yaşam döngüsü Şirket içinde Makine öğrenmesi modelleri, kod ve betikler gibi hassas verilerin veya özel IP'nin güvenliğini sağlayın. - Şirket içi giden ara sunucu bağlantısı
- Azure ExpressRoute ve Azure Arc'ın Azure kaynaklarına özel bağlantısı
- Müşteri tarafından yönetilen Kubernetes şirket içi
- Tam otomatik makine öğrenmesi işlemleri

Kubernetes işlem hedefi için sınırlamalar

KubernetesCompute Azure Machine Learning iş yüklerindeki bir hedefin (eğitim ve model çıkarımı) aşağıdaki sınırlamaları vardır:

  • Azure Machine Learning'de Önizleme özelliklerinin kullanılabilirliği garanti değildir.
  • Model Kataloğu ve Kayıt Defteri'nden alınan modeller (temel model dahil) Kubernetes çevrimiçi uç noktaları üzerinde desteklenmez.

Bu bölümde Bir Kubernetes işlemle çalışmak için önerilen en iyi yöntemler özetlenmiştir.

BT operasyonları ekibi ile Veri bilimi ekibi arasındaki sorumlulukların ayrılması. Daha önce açıklandığı gibi makine öğrenmesi iş yükü için kendi işlem ve altyapınızı yönetmek karmaşık bir görevdir. En iyi yaklaşım, BT operasyonları ekibinin görevi işlemesini sağlamaktır, böylece Veri bilimi takımı kurumsal verimlilik için makine öğrenmesi modellerine odaklanabilir.

Farklı makine öğrenmesi iş yükü senaryoları için örnek türleri oluşturun ve yönetin. Her makine öğrenmesi iş yükü CPU/GPU ve bellek gibi farklı miktarda işlem kaynağı kullanır. Azure Machine Learning, örnek türünü ve resource request/limitözelliklerine nodeSelector sahip bir Kubernetes özel kaynak tanımı (CRD) olarak uygular. Örnek türlerinin dikkatle seçilmiş bir listesiyle BT işlemleri belirli düğümlerde makine öğrenmesi iş yükünü hedefleyebilir ve işlem kaynağı kullanımını verimli bir şekilde yönetebilir.

Birden çok Azure Machine Learning çalışma alanı aynı Kubernetes kümesini paylaşır. Kubernetes kümesini aynı Machine Learning çalışma alanına veya farklı çalışma alanlarına birden çok kez ekleyebilirsiniz. Bu işlem, tek bir çalışma alanında veya birden çok çalışma alanında birden çok işlem hedefi oluşturur. Birçok müşteri Machine Learning çalışma alanı çevresinde veri bilimi projeleri düzenlediğinden, artık birden çok veri bilimi projesi aynı Kubernetes kümesini paylaşabilir. Bu yaklaşım, makine öğrenmesi altyapı yönetimi ek yüklerini önemli ölçüde azaltır ve BT maliyet tasarrufunu artırır.

Kubernetes ad alanını kullanarak takım/proje iş yükü yalıtımı. Machine Learning çalışma alanına kubernetes kümesi eklediğinizde işlem hedefi için bir Kubernetes ad alanı belirtebilirsiniz. İşlem hedefi tarafından çalıştırılan tüm iş yükleri belirtilen ad alanının altına yerleştirilir.

KubernetesCompute ile eski AksCompute hedeflerinin karşılaştırması

Azure Machine Learning CLI/Python SDK v1 ile eski AksCompute hedefi kullanarak AKS'de modelleri dağıtabilirsiniz. KubernetesCompute Hem hem de AksCompute hedefleri AKS tümleştirmesini destekler, ancak destek yaklaşımı farklıdır. Aşağıdaki tabloda önemli farklar özetlemektedir:

Özellik AksCompute (eski) KubernetesCompute
CLI/SDK v1'i kullanma Yes Hayır
CLI/SDK v2'yi kullanma Hayır Evet
Eğitimi ayarlama Hayır Evet
Gerçek zamanlı çıkarım uygulama Yes Yes
Toplu çıkarım uygulama Hayır Evet
Gerçek zamanlı çıkarım için yeni özelliklere erişme Yeni özellik geliştirmesi yok Etkin yol haritası kullanılabilir

Bu farklılıklar ve CLI/SDK v2'yi kullanmaya yönelik genel Machine Learning evrimi göz önünde bulundurulduğunda, önerilen yaklaşım AKS modeli dağıtımı için Kubernetes işlem hedefini (KubernetesCompute) kullanmaktır.

Daha fazla bilgi için aşağıdaki makaleleri inceleyin:

Makine öğrenmesi örnekleri

Makine öğrenmesi örnekleri GitHub'daki Azure Machine Learning (azureml-examples) deposunda bulunabilir. Herhangi bir örnekte işlem hedefi adını Kubernetes işlem hedefinizle değiştirin ve örneği çalıştırın.

Birkaç seçenek şunlardır: