Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bir Azure Batch iş akışında, bir compute node (veya düğüm) uygulamanızın iş yükünün bir kısmını işleyen sanal bir makinedir. Bir havuz, uygulamanızın üzerinde çalışabileceği bu düğümlerin bir koleksiyonudur. Bu makale, Azure Batch iş akışında düğümler ve havuzlar hakkında daha fazla bilgi açıklarken, bunları oluşturma ve kullanma sırasında dikkate alınması gereken hususları da ele alır.
Düğümler
Bir nod, uygulamanızın iş yükünün bir kısmını işlemek için ayrılmış bir Azure sanal makinesi (VM) veya bulut hizmeti VM'dir. Bir düğümün boyutu, düğüme tahsis edilen CPU çekirdek sayısını, bellek kapasitesini ve yerel dosya sistemi boyutunu belirler.
Azure Bulut Hizmetlerini, Azure Sanal Makineler Marketplace'ten gelen görüntüleri veya hazırladığınız özel görüntüleri kullanarak Windows veya Linux düğüm havuzları oluşturabilirsiniz.
Düğümler, düğümün işletim sistemi ortamı tarafından desteklenen yürütülebilir dosyaları veya betikleri çalıştırabilir. Çalıştırılabilir dosyalar veya komut dosyaları arasında *.exe, *.cmd, *.bat ve PowerShell komut dosyaları (Windows için) ile ikili dosyalar, kabuk ve Python komut dosyaları (Linux için) bulunur.
Batch içindeki tüm hesaplama düğümleri şunları da içerir:
- Standart bir klasör yapısı ve görevler tarafından başvurulabilecek ilişkili çevre değişkenleri.
- Güvenlik duvarı erişimi kontrol etmek için yapılandırılmış ayarlar.
- Uzaktan erişim hem Windows (Uzak Masaüstü Protokolü (RDP)) hem de Linux (Güvenli Kabuk (SSH)) düğümlerine (uzaktan erişimi devre dışı bırakarak havuzunuzu oluşturmadığınız sürece).
Varsayılan olarak düğümler birbirleriyle iletişim kurabilir, ancak aynı havuzun parçası olmayan sanal makinelerle iletişim kuramaz. Düğümlerin diğer sanal makinelerle veya şirket içi bir ağla güvenli bir şekilde iletişim kurmasını sağlamak için havuzu bir Azure sanal ağı (VNet) alt ağı içinde ayarlayabilirsiniz. Bunu yaptığınızda, düğümlerinize genel IP adresleri üzerinden erişilebilir. Batch bu genel IP adreslerini oluşturur ve havuzun ömrü boyunca değişebilir. Ayrıca, denetlediğiniz statik genel IP adreslerine sahip bir havuz da oluşturabilirsiniz ve bu da beklenmedik şekilde değişmemesini sağlar.
Havuzlar
Bir havuz, uygulamanızın çalıştığı düğümlerin toplandığı yerdir.
Azure Batch havuzları, Azure temel hesaplama platformu üzerine inşa edilir. Bilgisayar düğümlerinin havuz içindeki sayısının büyük ölçekli tahsisi, uygulama kurulumu, veri dağıtımı, sağlık izleme ve esnek ayarlaması (ölçeklendirme) sağlarlar.
Havuza eklenen her düğüme benzersiz bir ad ve IP adresi atanır. Bir düğüm, bir havuzdan kaldırıldığında, işletim sistemi veya dosyalar üzerinde yapılan değişiklikler kaybolur ve adı ile IP adresi gelecekteki kullanım için serbest bırakılır. Bir düğüm havuzdan ayrıldığında kullanım ömrü sona erer.
Havuz yalnızca oluşturulduğu Batch hesabı tarafından kullanılabilir. Batch hesabı, çalıştırılması gereken uygulamaların kaynak gereksinimlerini karşılamak için birden çok havuz oluşturabilir.
Havuz, yapmanız gereken işi belirttiğinizde, elle veya Batch hizmeti tarafından otomatik olarak oluşturulabilir. Bir havuz oluşturduğunuzda, aşağıdaki özellikleri belirleyebilirsiniz:
-
Azure Batch'teki düğümler ve havuzlar
- Düğümler
- Havuz
- İşletim sistemi ve sürümü
- Yapılandırma
- Düğüm türü ve hedef
- Düğüm boyutu
- Otomatik ölçekleme politikası
- Görev zamanlama politikası
- İletişim durumu
- Görevleri başlat
- Uygulama paketleri
- Sanal ağ (VNet) ve güvenlik duvarı yapılandırması
- Havuz ve işlem düğümü ömrü
- Autopools
- Sertifikalarla güvenlik
- Sonraki Adımlar
Önemli
Batch hesaplarının, batch hesabındaki çekirdek sayısını sınırlayan varsayılan bir kotası vardır. Çekirdek sayısı, işlem düğümlerinin sayısına karşılık gelir. Azure Batch hizmeti için Kotalar ve sınırlar bölümünde varsayılan kotaları ve bir kotayı nasıl artıracağınız konusunda talimatları bulabilirsiniz. Havuzunuz hedef düğüm sayısına ulaşamıyorsa, bunun nedeni çekirdek kota olabilir.
İşletim sistemi ve sürüm
Batch havuzu oluşturduğunuzda, Azure sanal makine yapılandırmasını ve havuzdaki her işlem düğümünde çalıştırmak istediğiniz işletim sistemi türünü belirtirsiniz.
Yapılandırmalar
Sanal Makine Yapılandırması
Virtual Machine Yapılandırması, havuzun Azure sanal makinelerinden oluştuğunu belirtir. Bu VM'ler Linux veya Windows görüntülerinden oluşturulabilir.
Batch düğümü aracısı, havuzdaki her düğümde çalışan ve düğüm ile Batch hizmeti arasında komut ve denetim arabirimi sağlayan bir programdır. Farklı işletim sistemleri için düğüm aracısının SKU'lar olarak bilinen farklı uygulamaları vardır. Sanal Makine Yapılandırmasına dayalı bir havuz oluşturduğunuzda, yalnızca düğümlerin boyutunu ve onları oluşturmak için kullanılan görüntülerin kaynağını değil, aynı zamanda düğümlere kurulacak sanal makine görüntü referansı ve Batch düğüm ajan SKU'sunu da belirtmelisiniz. Bu havuz özelliklerini belirtme hakkında daha fazla bilgi için Azure Batch havuzlarında Linux hesaplama düğümlerini sağlamak bölümüne bakın. İsteğe bağlı olarak Market görüntülerinden oluşturulan havuz VM'lerine bir veya daha fazla boş veri diski ekleyebilir veya VM'leri oluşturmak için kullanılan özel görüntülere veri diskleri ekleyebilirsiniz. Veri disklerini eklerken, kullanmak için vm'nin içinden diskleri bağlamanız ve biçimlendirmeniz gerekir.
Node Ajan SKUs
Havuz oluşturduğunuzda, VHD'nizin temel imajının işletim sistemine bağlı olarak uygun nodeAgentSkuId'yi seçmeniz gerekir. Mevcut düğüm aracısı SKU kimliklerinin OS Görüntü referanslarıyla eşleştirildiği haritayı Desteklenen Düğüm Aracısı SKU'ları Listesi işlemini çağırarak elde edebilirsiniz.
Sanal Makine havuzları için özel görüntüler
Özel görüntülerle havuz oluşturmayı öğrenmek için bkz. Azure İşlem Galerisi'ni kullanarak özel havuz oluşturma.
Sanal Makine Havuzlarında Konteyner Desteği
Batch API'lerini kullanarak bir Sanal Makine Yapılandırma havuzu oluştururken, havuzu görevleri Docker konteynerlerinde çalıştıracak şekilde ayarlayabilirsiniz. Şu anda, havuzu Docker konteynerlarını destekleyen bir görüntü kullanarak oluşturmanız gerekiyor. Azure Marketplace'tan Windows Server 2016 Datacenter with Containers görüntüsünü kullanın veya Docker Community Edition veya Enterprise Edition ve gerekli sürücüleri içeren özel bir sanal makine görüntüsü sağlayın. Havuz ayarlarında, havuz oluşturulduğunda VM'lere kapsayıcı görüntüleri kopyalayan bir kapsayıcı yapılandırması bulunmalıdır. Havuzda çalışan görevler daha sonra konteyner görüntülerine ve konteyner çalışma seçeneklerine referans verebilir.
Daha fazla bilgi için, Run Docker container applications on Azure Batch başlığına bakınız.
Düğüm türü ve hedef
Bir havuz oluşturduğunuzda, hangi tür düğümler istediğinizi ve her birinin hedef sayısını belirtebilirsiniz. İki tür düğüm vardır:
- Adanmış düğümler. İş yükleriniz için adanmış hesaplama düğümleri rezerve edilmiştir. Bunlar genellikle Spot düğümlerden daha pahalıdır, ancak hiçbir zaman ön plana çıkarılmamaları garanti edilir.
- Düğüm noktalarını belirleyin. Azure'daki spot düğümler, fazla kapasiteden yararlanarak Batch iş yüklerinizi çalıştırır. Spot düğümleri, ayrılmış düğümlere göre saat başına daha ucuzdur ve önemli derecede işlemci gücü gerektiren iş yüklerini etkinleştirir. Daha fazla bilgi için Use Spot VMs with Batch bölümüne bakınız.
Azure yetersiz fazla kapasiteye sahip olduğunda spot düğümleri durdurulabilir. Bir düğüm, görevleri çalıştırırken önceliklendirildiğinde, görevler yeniden kuyruğa alınır ve bir hesaplama düğümü tekrar kullanılabilir hale geldiğinde yeniden çalıştırılır. Spot düğümleri, işin tamamlanma süresinin esnek olduğu ve işin birçok düğüm arasında dağıtıldığı iş yükleri için iyi bir seçenektir. Senaryonuz için Spot düğümleri kullanmaya karar vermeden önce, önkoşul nedeniyle kaybolan tüm çalışmaların çok az olduğundan ve sürdürülmesinin veya yeniden oluşturulmasının kolay olduğundan emin olun.
Hem Spot hem de özel hesaplama düğümlerini aynı havuzda bulundurabilirsiniz. Her tür düğümün kendine özgü hedef ayarları vardır ve istenen düğüm sayısını belirleyebilirsiniz.
Hesap düğümlerinin sayısı, havuzunuzun bazı durumlarda istenilen düğüm sayısına ulaşamayabileceği için hedef olarak adlandırılır. Örneğin, bir havuz, önce hesabınızın çekirdek kotasına ulaşırsa hedefe ulaşamayabilir. Veya havuza en fazla düğüm sayısını sınırlayan bir otomatik ölçeklendirme formülü uyguladıysanız havuz hedefe ulaşamayabilir.
Uyarı
Batch spot işlem düğümleri kesildiğinde, önce unusable
durumuna geçiş yaparlar. Bir süre sonra bu hesaplama düğümleri, preempted
durumunu yansıtacak şekilde geçiş yapacaktır. Batch, hedef örnek sayılarını korumak amacıyla çıkarılan spot örnekleri geri yüklemek için Deneme ve Geri Yükleme işlevini otomatik olarak etkinleştirir.
Hem Spot hem de ayrılmış düğümler için fiyatlandırma bilgileri için, Toplu Fiyatlandırma sayfasına bakın.
Düğüm Boyutu
Azure Batch havuzu oluşturduğunuzda, Azure'da mevcut olan neredeyse tüm VM aileleri ve boyutları arasından seçim yapabilirsiniz. Azure, farklı iş yükleri için özel HPC veya GPU-aktif VM boyutları dahil olmak üzere çeşitli VM boyutları sunar. Düğüm VM boyutları yalnızca havuz oluşturulurken seçilebilir. Başka bir deyişle, bir havuz oluşturulduktan sonra VM boyutu değiştirilemez.
Daha fazla bilgi için Azure Batch havuzundaki hesaplama düğümleri için VM boyutunu seçin başlıklı makaleye bakın.
Otomatik ölçeklendirme politikası
Dinamik iş yükleri için bir havuza otomatik ölçeklendirme politikası uygulayabilirsiniz. Batch hizmeti formülünüzü düzenli aralıklarla değerlendirir ve havuzdaki düğüm sayısını işlem senaryonuzun geçerli iş yüküne ve kaynak kullanımına göre dinamik olarak ayarlar. Bu, yalnızca ihtiyaç duyduğunuz kaynakları kullanarak ve ihtiyaç duymadığınız kaynakları serbest bırakarak uygulamanızı çalıştırmanın toplam maliyetini düşürmenizi sağlar.
Otomatik ölçeklemeyi, bir otomatik ölçekleme formülü yazarak ve bu formülü bir havuzla ilişkilendirerek etkinleştirirsiniz. Batch hizmeti, sonraki ölçeklendirme aralığında (konfigüre edebileceğiniz bir aralık), havuzdaki hedef düğüm sayısını belirlemek için formülü kullanır. Bir havuz oluştururken otomatik ölçeklendirme ayarlarını belirtebilir veya daha sonra bir havuzda ölçeklendirmeyi etkinleştirebilirsiniz. Ölçeklendirme özellikli bir havuzda ölçeklendirme ayarlarını da güncelleyebilirsiniz.
Örneğin, bir işin sizden çok sayıda görevi yerine getirmeniz için iletmenizi gerektirdiğini varsayalım. Havuzdaki düğüm sayısını, kuyruğa alınmış görevlerin mevcut sayısına ve işteki görevlerin tamamlama oranına göre ayarlayan bir ölçekleme formülünü havuza atayabilirsiniz. Batch hizmeti, iş yüküne ve diğer formül ayarlarınıza göre periyodik olarak formülü değerlendirir ve havuzu yeniden boyutlandırır. Hizmet, kuyruktaki görev sayısı fazla olduğunda gerektiği kadar düğüm ekler ve kuyrukta veya çalışan görev olmadığında düğümleri kaldırır.
Bir ölçekleme formülü aşağıdaki metriklere dayanabilir:
- Zaman ölçümleri, belirlenen saat sayısında her beş dakikada bir toplanan istatistiklere dayanır.
- Kaynak metrikleri, CPU kullanımı, bant genişliği kullanımı, bellek kullanımı ve düğüm sayısına dayanır.
- Görev ölçümleri, Aktif (sırada bekleyen), Çalışıyor veya Tamamlandı gibi görev durumlarına dayanmaktadır.
Otomatik ölçeklendirme havuzdaki işlem düğümlerinin sayısını azalttığında, azalma işlemi sırasında çalışan görevleri nasıl yöneteceğinizi düşünmelisiniz. Bu duruma uyum sağlamak için, Batch formüllerinize ekleyebileceğiniz bir düğüm serbest bırakma seçeneği sunar. Örneğin, çalışan görevlerin hemen durdurulmasını ve ardından başka bir düğümde yürütülmek üzere yeniden sıraya alınmasını veya düğüm havuzdan çıkarılmadan önce bitirilmesine izin verilmesini belirtebilirsiniz. Düğüm ayırma seçeneğini taskcompletion
veya retaineddata
olarak ayarlamak, sırasıyla, tüm görevler tamamlanana kadar veya tüm görev saklama süreleri dolana kadar havuz yeniden boyutlandırma işlemlerini engeller.
Bir uygulamayı otomatik olarak ölçeklendirme hakkında daha fazla bilgi için Azure Batch havuzunda hesaplama düğümlerini otomatik olarak ölçeklendirin sayfasına bakın.
İpucu
Bir işin sonunda hesaplama kaynağı kullanımını maksimize etmek için hedef düğüm sayısını sıfıra ayarlayın, ancak devam eden görevlerin tamamlanmasına izin verin.
Görev Zamanlama Politikası
Havuz içindeki her bir hesaplama düğümünde paralel olarak çalıştırılabilecek maksimum görev sayısını belirleyen düğüm başına maksimum görev yapılandırma seçeneği.
Varsayılan yapılandırma, bir düğümde bir kerede bir görevin çalıştırıldığını belirtir, ancak aynı anda bir düğümde iki veya daha fazla görevin yürütülmesinin yararlı olduğu senaryolar vardır. Düğüm başına birden çok görevden nasıl yararlanabileceğinize ilişkin eş zamanlı düğüm görevleri makalesindeki örnek senaryoya bakın.
Havuzdaki tüm düğümler arasında görevleri eşit yaymak mı, yoksa başka bir düğüme görev atamadan önce her bir düğümü maksimum görev sayısıyla mı doldurmak istediğinizi belirleyen bir doldurma türü de belirleyebilirsiniz.
İletişim durumu
Çoğu senaryoda görevler bağımsız olarak çalışır ve birbirleriyle iletişim kurmaları gerekmez. Ancak, görevlerin iletişim kurması gereken bazı uygulamalar vardır, örneğin MPI senaryoları.
Havuz içindeki düğümlerin çalışma zamanında iletişim kurabilmesi için bir havuzu düğümler arası iletişime izin verecek şekilde yapılandırabilirsiniz. Düğümler arası iletişim etkinleştirildiğinde, Cloud Services Yapılandırma havuzlarındaki düğümler 1100'den büyük bağlantı noktalarında birbirleriyle iletişim kurabilir ve Sanal Makine Yapılandırma havuzları herhangi bir bağlantı noktası üzerindeki trafiği kısıtlamaz.
Düğümler arası iletişimin etkinleştirilmesi, küme içindeki düğümlerin yerleşimini de etkiler ve dağıtım kısıtlamaları nedeniyle bir havuzdaki maksimum düğüm sayısını sınırlayabilir. Uygulamanız düğümler arasında iletişim gerektirmiyorsa Batch hizmeti, paralel işleme gücünü artırmak için birçok farklı kümeden ve veri merkezinden havuza çok sayıda düğüm ayırabilir.
Görevleri başlat
İsterseniz, bir düğüm havuza katıldığında, her yeniden başlatıldığında veya yeniden oluşturulduğunda her bir düğümde yürütülecek bir başlangıç görevi ekleyebilirsiniz. Başlangıç görevi, özellikle görevlerin yürütülmesi için hesaplama düğümlerini hazırlamada faydalıdır; örneğin, görevlerinizin hesaplama düğümlerinde çalıştırdığı uygulamaları yüklemek gibi.
Uygulama paketleri
Uygulama paketlerini havuzdaki hesaplama düğümlerine dağıtmak için belirleyebilirsiniz. Uygulama paketleri, görevlerinizin çalıştırdığı uygulamaların dağıtımını ve sürümlendirilmesini kolaylaştırır. Belirttiğiniz uygulama paketleri, havuza katılan her düğüme ve her bir düğüm yeniden başlatıldığında veya yeniden görüntülendiğinde yüklenir.
Daha fazla bilgi için uygulama paketlerini kullanarak uygulamalarınızı Batch düğümlerine dağıtma hakkında Batch uygulama paketleriyle hesaplama düğümlerine uygulama dağıtma kısmına bakın.
Sanal ağ (VNet) ve güvenlik duvarı yapılandırması
Batch'te işlem düğümleri havuzu sağlarken, havuzu bir Azure sanal ağının (VNet) alt ağıyla ilişkilendirebilirsiniz. Azure sanal ağı kullanmak için Batch istemci API'sinin Microsoft Entra kimlik doğrulamasını kullanması gerekir. Microsoft Entra Id için Azure Batch desteği, Active Directory ile Batch hizmeti çözümlerinin kimliğini doğrulama bölümünde belgelenmiştir.
VNet gereksinimleri
Daha fazla bilgi için, bir Sanal Ağ'da Batch havuzu kurma hakkında Sanal ağınızla sanal makineler havuzu oluşturun bölümüne bakın.
İpucu
Düğümlere erişmek için kullanılan genel IP adreslerinin değişmediğinden emin olmak için, denetlediğiniz belirtilen genel IP adreslerine sahip bir havuz oluşturabilirsiniz.
Havuz ve işlem düğümü ömrü
Azure Batch çözümünüzü tasarlarken, havuzların nasıl ve ne zaman oluşturulacağını ve bu havuzlardaki hesaplama düğümlerinin ne kadar süreyle erişilebilir durumda tutulacağını belirtmelisiniz.
Spektrumun bir ucunda, gönderdiğiniz her iş için bir havuz oluşturabilir ve görevleri tamamlandıktan hemen sonra havuzu silebilirsiniz. Bu, düğümler yalnızca gerektiğinde ayrıldığından ve boşta olduklarında kapatıldığından kullanımı en üst düzeye çıkarır. Düğümlerin tahsisi yapılana kadar işin beklemesi gerektiği anlamına gelse de, görevlerin yürütülmesi için düğümler tek tek tahsis edilir edilmez zamanlandığını ve eğer başlangıç görevinin tamamlanması beklenmesi belirtilirse, başlangıç görevinin tamamlandığını unutmayın. Batch, düğümlere görev atamadan önce havuzdaki tüm düğümlerin kullanılabilir olmasını beklemez . Bu, mevcut tüm düğümlerin maksimum kullanımı sağlanır.
Spektrumun diğer ucunda, işlerin hemen başlatılması en yüksek öncelikse, önceden bir havuz oluşturabilir ve işler gönderilmeden önce düğümlerini kullanılabilir hale getirebilirsiniz. Bu senaryoda görevler hemen başlayabilir, ancak düğümler atanmalarını beklerken boşta kalabilir.
Değişken ama devam eden bir yükü yönetmek için genellikle birleştirilmiş bir yaklaşım kullanılır. Birden fazla işin gönderildiği bir havuza sahip olabilir ve iş yüküne göre düğüm sayısını artırıp azaltabilirsiniz. Bunu reaktif olarak, mevcut yüklemeler temelinde veya yük tahmin edilebiliyorsa proaktif olarak yapabilirsiniz. Daha fazla bilgi için bkz. Automatic scaling policy.
Otomatik havuzlar
Otomatik havuz, Batch hizmetinin, bir iş gönderildiğinde, havuzda çalıştırılacak işlerden önce açıkça oluşturulmak yerine, kendiliğinden oluşturduğu bir havuzdur. Batch hizmeti, otomatik havuzun ömrünü belirttiğiniz özelliklere göre yönetir. Genellikle, bu havuzlar işleri tamamlandıktan sonra otomatik olarak silinecek şekilde ayarlanır.
Sertifikalarla Güvenlik
Tipik olarak, görevler için şifreli veya şifresiz hassas bilgileri işlerken, Azure Storage hesabı anahtarı gibi, sertifikalar kullanmanız gerekir. Bu desteği sağlamak için, düğümlere sertifikalar yükleyebilirsiniz. Şifrelenmiş gizli bilgiler, komut satırı parametreleri aracılığıyla veya görev kaynaklarından birine gömülerek görevlere iletilir ve yüklenen sertifikalar onları çözmek için kullanılabilir.
Batch hesabına sertifika eklemek için Sertifika ekle işlemini (Batch REST) veya CertificateOperations.CreateCertificate yöntemini (Batch .NET) kullanırsınız. Daha sonra sertifikayı yeni veya mevcut bir havuz ile ilişkilendirebilirsiniz.
Bir sertifika bir havuza ilişkilendirildiğinde, Batch hizmeti sertifikayı havuzdaki her düğüme yükler. Batch hizmeti, düğüm başlatıldığında, herhangi bir görevi başlatmadan önce ( başlangıç görevi ve iş yöneticisi görevi dahil) uygun sertifikaları yükler.
Mevcut bir havuza bir sertifika eklediğinizde, sertifikanın düğümlere uygulanabilmesi için hesaplama düğümlerini yeniden başlatmanız gerekir.
Sonraki adımlar
- İşler ve görevler hakkında bilgi edinin.
- Öğrenin, havuz ve düğüm arka plan işlemlerinde hataları nasıl tespit edip önleyebileceğinizi.