ML Services kümesinde işlemsel hale Azure HDInsight
Önemli
Bu içerik kullanımdan kalkmışsa ve gelecekte güncelleştirilmeyecek. Azure HDInsight 3,6 ML Hizmetleri (Machine Learning Server) küme türü 31 Aralık 2020 itibariyle kullanımdan kaldırıldı.
Veri modellemenizi tamamlamak ML HDInsight'ta ML Services kümesi kullandıktan sonra, tahminde etmek için modeli faaliyete kullanılmaktadır. Bu makalede, bu görevi gerçekleştirmeye ilişkin yönergeler velanmıştır.
Önkoşullar
HDInsight ML da bir ML Services kümesi. Bkz. Küme türünü kullanarak Apache Hadoop kümeleri Azure portal ve ML Hizmetleri'ni seçin.
Güvenli Kabuk (SSH) istemcisi: HDInsight kümesine uzaktan bağlanmak ve komutları doğrudan küme üzerinde çalıştırmak için bir SSH istemcisi kullanılır. Daha fazla bilgi için bkz. HDInsight ile SSH kullanma.
ML Services kümesinde tek kutu yapılandırmasıyla işlemselleştirme
Not
Aşağıdaki adımlar R Server 9.0 ve ML Server 9.1 için geçerlidir. 9.3 ML Server için bkz. İşletimselleştirme yapılandırmasını yönetmek için yönetim aracını kullanma.
Kenar düğümüne SSH uygulayın.
ssh USERNAME@CLUSTERNAME-ed-ssh.azurehdinsight.netSSH'yi hdinsight ile Azure HDInsight yönergeleri için bkz. HDInsight ile SSH kullanma..
İlgili sürüm için dizini değiştirme ve dot net dll dosyasını sudo ile değiştirme:
Microsoft ML Server 9.1 için:
cd /usr/lib64/microsoft-r/rserver/o16n/9.1.0 sudo dotnet Microsoft.RServer.Utils.AdminUtil/Microsoft.RServer.Utils.AdminUtil.dllMicrosoft R Server 9.0 için:
cd /usr/lib64/microsoft-deployr/9.0.1 sudo dotnet Microsoft.DeployR.Utils.AdminUtil/Microsoft.DeployR.Utils.AdminUtil.dll
Size seçenekler sunulmaktadır. Aşağıdaki ekran görüntüsünde gösterildiği gibi, İlk seçeneği İşletimselleştirme için ML Server seçeneğini belirleyin.
Şimdi, yeni bir işletimselleştirmeyi nasıl seçmek istediğinize ML Server. Sunulan seçeneklerden, A girerek ilki seçin.
İstendiğinde, yerel yönetici kullanıcı için parolayı girin ve yeniden girin.
İşlem başarılı olduğunu öneren çıkışlar görüyor gerekir. Menüden başka bir seçenek seçmeniz de istenir. Ana menüye geri dönmek için E'yi seçin.
İsteğe bağlı olarak, aşağıdaki gibi bir tanılama testi çalıştırarak tanılama denetimleri gerçekleştirebilirsiniz:
a. Tanılama testlerini çalıştırmak için ana menüden 6'yı seçin.
b. Tanılama Testleri menüsündeN A'yı seçin. İstendiğinde, yerel yönetici kullanıcı için sağladığınız parolayı girin.
c. Çıktının genel sistem durumunun başarılı olduğunu gösterir.
d. Sunulan menü seçeneklerinden ana menüye dönmek için E girin ve ardından yönetici yardımcı programından çıkmak için 8 girin.
Web hizmetinin web hizmetini Apache Spark
kısa bir işlem bağlamında mrsdeploy işlevleriyle oluşturulmuş bir web hizmetini Apache Spark uzun gecikmelerle karşılaşırsanız, bazı eksik klasörleri eklemeniz gerekir. Spark uygulaması mrsdeoploy işlevleri kullanılarak bir web hizmetinden çağrıldığında 'rserve2' adlı bir kullanıcıya ait oluyor. Bu soruna geçici bir çözüm olarak:
# Create these required folders for user 'rserve2' in local and hdfs:
hadoop fs -mkdir /user/RevoShare/rserve2
hadoop fs -chmod 777 /user/RevoShare/rserve2
mkdir /var/RevoShare/rserve2
chmod 777 /var/RevoShare/rserve2
# Next, create a new Spark compute context:
rxSparkConnect(reset = TRUE)
Bu aşamada kullanıma hazır hale getirme yapılandırması tamamlanmıştır. Artık kenar düğümünde işletimselleştirmeye bağlanmak ve uzaktan yürütme ve web hizmetleri gibi özelliklerini kullanmaya başlamak için mrsdeploy RClient'ınız üzerinde paketini kullanabilirsiniz. Kümenizin bir sanal ağda ayarlanıp ayarlanmamasına bağlı olarak, SSH oturumu aracılığıyla bağlantı noktası iletme tüneli ayarlamanız gerekebilir. Aşağıdaki bölümlerde bu tüneli nasıl kuracağınız açıklanmaktadır.
ML ağ üzerinde ML Services kümesi
12800 numaralı bağlantı noktası üzerinden kenar düğümüne trafik akışına izin verdiğinizden emin olun. Bu şekilde, Kullanıma Hazır Hale Getirme özelliğine bağlanmak için kenar düğümünü kullanabilirsiniz.
library(mrsdeploy)
remoteLogin(
deployr_endpoint = "http://[your-cluster-name]-ed-ssh.azurehdinsight.net:12800",
username = "admin",
password = "xxxxxxx"
)
remoteLogin() kenar düğümüne bağlanamadığı halde kenar düğümüne SSH uygulayabiliyorsanız, 12800 numaralı bağlantı noktası üzerinde trafiğe izin veren kuralın doğru şekilde ayarlanıp ayarlanmadığını doğrulamanız gerekir. Sorunla karşılaşmaya devam ederseniz, SSH üzerinden bağlantı noktası iletme tüneli oluşturarak bir geçici çözüm uygulayabilirsiniz. Yönergeler için aşağıdaki bölüme bakın:
ML Hizmetleri kümesi sanal ağ üzerinde ayarlanmaz
Kümeniz sanal üzerinde ayarlanmamışsa veya sanal ağ üzerinden bağlantı kurma sorunları yaşıyorsanız, SSH bağlantı noktası iletme tünelini kullanabilirsiniz:
ssh -L localhost:12800:localhost:12800 USERNAME@CLUSTERNAME-ed-ssh.azurehdinsight.net
SSH oturumunuz etkin olduktan sonra yerel makinenizin 12800 bağlantı noktasına gelen trafik, SSH oturumu aracılığıyla kenar düğümünün 12800 bağlantı noktasına iletildi. remoteLogin() yönteminizde 127.0.0.1:12800 kullandığınızdan emin olun. Bu işlem, bağlantı noktası iletme aracılığıyla kenar düğümünün çalışır duruma nasıl hazır hale dönüştürerek oturum açtığını gösterir.
library(mrsdeploy)
remoteLogin(
deployr_endpoint = "http://127.0.0.1:12800",
username = "admin",
password = "xxxxxxx"
)
HDInsight çalışan düğümleri üzerinde operasyonelleştirilmiş işlem düğümlerini ölçeklendirme
İşlem düğümlerini ölçeklendirmek için önce çalışan düğümlerinin izinlerini alın ve sonra da kaldırılan çalışan düğümlerde işlem düğümlerini yapılandırsınız.
1. Adım: Çalışan düğümlerinin izinlerini alın
ML Services kümesi Apache Hadoop YARN aracılığıyla yönetilmiyor. Çalışan düğümlerinin kullanımına alınmazsa, YARN Resource Manager sunucu tarafından alınan kaynakların farkında olmayarak beklendiği gibi çalışmaz. Bu durumu önlemek için, işlem düğümlerini ölçeklendirmeden önce çalışan düğümlerinin yetkisinin alınması önerilir.
Çalışan düğümlerinin izinlerini geri için şu adımları izleyin:
Kümenin Ambari konsolunda oturum açın ve Konaklar sekmesine tıklayın.
Çalışan düğümlerini (alınacak) seçin.
Eylemler Seçili > Konaklar Konakları > > Bakım Modunu Aç'a tıklayın. Örneğin, aşağıdaki görüntüde yetkisini almak üzere wn3 ve wn4 seçilmiştir.
- Eylemler Seçili > Konaklar > DataNode'u seçin >'ye tıklayın.
- Eylemler Seçili > Konaklar > NodeManagers'ı seçin >'a tıklayın.
- Eylemler Seçili > Konaklar > DataNode'u seçin > durdur'a tıklayın.
- Eylemler Seçili > Konaklar > NodeManagers'ı seçin >'a tıklayın.
- Eylemler Seçili > Konaklar Konakları'> > Tüm Bileşenleri Durdur'a tıklayın.
- Çalışan düğümlerinin seçimini kaldırın ve baş düğümleri seçin.
- Eylemler Seçili > Konaklar'ı seçin > "Konaklar Tüm Bileşenleri Yeniden Başlat > .
2. Adım: Kullanımı kaldırılan her çalışan düğümünde işlem düğümlerini yapılandırma
Yetkisi alınan her çalışan düğümüne SSH uygulayın.
Sahip olduğunu ML Services kümesi için ilgili DLL'i kullanarak yönetici yardımcı programını çalıştırın. 9.1 ML Server için aşağıdakini çalıştırın:
dotnet /usr/lib64/microsoft-deployr/9.0.1/Microsoft.DeployR.Utils.AdminUtil/Microsoft.DeployR.Utils.AdminUtil.dllİşletimselleştirme için Yapılandırma seçeneğini ML Server 1 girin.
seçeneğini seçmek için C
C. Compute nodegirin. Bu işlem çalışan düğümündeki işlem düğümünü yapılandırır.Yönetim Yardımcı Programından çıkın.
3. Adım: Web düğümüne işlem düğümü ayrıntıları ekleme
Tüm alınan çalışan düğümleri işlem düğümünü çalıştıracak şekilde yapılandırıldığında, kenar düğümüne geri dönüp, alınan çalışan düğümlerinin IP adreslerini ML Server web düğümünün yapılandırmasına ekleyin:
Kenar düğümüne SSH uygulayın.
vi /usr/lib64/microsoft-deployr/9.0.1/Microsoft.DeployR.Server.WebAPI/appsettings.jsonöğesini çalıştırın."Uris" bölümünü ve çalışan düğümünün IP'sini ve bağlantı noktası ayrıntılarını ekleyin.
"Uris": { "Description": "Update 'Values' section to point to your backend machines. Using HTTPS is highly recommended", "Values": [ "http://localhost:12805", "http://[worker-node1-ip]:12805", "http://[workder-node2-ip]:12805" ] }