Belirtilen genel IP adresleriyle Azure Batch havuzu oluşturma

Azure Batch'te, bir Azure sanal ağının (VNet) alt ağında batch havuzu oluşturabilirsiniz. Batch havuzundaki sanal makinelere (VM) Batch'in oluşturduğu genel IP adresleri aracılığıyla erişilebilir. Bu genel IP adresleri havuzun ömrü boyunca değişebilir. IP adresleri yenilenmezse ağ ayarlarınız güncel olmayabilir.

Bunun yerine havuzunuzdaki VM'lerle kullanılacak statik genel IP adreslerinin listesini oluşturabilirsiniz. Bazı durumlarda, beklenmedik şekilde değişmediklerinden emin olmak için genel IP adreslerinin listesini denetlemeniz gerekebilir. Örneğin, belirli IP adreslerine erişimi kısıtlayan veritabanı gibi bir dış hizmetle çalışıyor olabilirsiniz.

Genel IP adresleri olmayan havuzlar oluşturma hakkında bilgi için Bkz . Genel IP adresleri olmadan Azure Batch havuzu oluşturma.

Ön koşullar

Dekont

Batch, genel IP adreslerini içeren kaynak grubunda otomatik olarak ek ağ kaynakları ayırır. Batch, her 100 ayrılmış düğüm için genellikle bir ağ güvenlik grubu (NSG) ve bir yük dengeleyici ayırır. Bu kaynaklar, aboneliğin kaynak kotalarıyla sınırlıdır. Daha büyük havuzları kullanırken, bu kaynaklardan biri veya daha fazlası için kota artışı istemeniz gerekebilir.

Genel IP adresi gereksinimleri

Aşağıdaki yöntemlerden biriyle bir veya daha fazla genel IP adresi oluşturun:

Genel IP adreslerinizin aşağıdaki gereksinimleri karşıladığından emin olun:

  • Batch havuzunun hesabıyla aynı abonelikte ve bölgede genel IP adreslerini oluşturun.
  • IP adresi atamasını Statik olarak ayarlayın.
  • SKU'yu Standart olarak ayarlayın.
  • Bir DNS adı belirtin.
  • Başka hiçbir kaynağın bu genel IP adreslerini kullanmadığından emin olun; aksi zaman havuzda ayırma hataları yaşanabilir. Bu genel IP adreslerini yalnızca VM yapılandırma havuzları için kullanın.
  • Hiçbir güvenlik ilkesinin veya kaynak kilidinin kullanıcı erişimini genel IP adresine kısıtlamadığından emin olun.
  • Hedef VM sayısını karşılamak için havuz için yeterli genel IP adresi oluşturun.
    • Bu sayı en azından havuzun targetDedicatedNodes ve targetLowPriorityNodes özelliklerinin toplamına eşit olmalıdır.
    • Yeterli IP adresi oluşturmazsanız havuz işlem düğümlerini kısmen ayırır ve yeniden boyutlandırma hatası oluşur.
    • Şu anda Batch, her 100 VM için bir genel IP adresi kullanmaktadır.
  • Ayrıca genel IP adreslerinden oluşan bir arabellek oluşturun. Arabellek, Batch'in ölçeği daraltmak için iç iyileştirmeye yardımcı olur. Arabellek ayrıca başarısız bir ölçeği artırdıktan veya azaltıldıktan sonra daha hızlı ölçeklendirmeye olanak tanır. Aşağıdaki arabellek IP adreslerinden birini eklemenizi öneririz; hangi sayı daha büyükse seçin.
    • En az bir IP adresi daha ekleyin.
    • Veya havuzdaki toplam genel IP adresi sayısının yaklaşık %10'unu ekleyin.

Önemli

Batch havuzunu oluşturduktan sonra, genel IP adresleri listesini ekleyemez veya değiştiremezsiniz. Listeyi değiştirmek istiyorsanız, havuzu silmeniz ve yeniden oluşturmanız gerekir.

Genel IP adresleriyle Batch havuzu oluşturma

Aşağıdaki örnekte, genel IP adreslerini kullanan Azure Batch Service REST API'sini kullanarak bir havuzun nasıl oluşturulacağı gösterilmektedir.

REST API URI'si:

POST {batchURL}/pools?api-version=2020-03-01.11.0
client-request-id: 00000000-0000-0000-0000-000000000000

İstek gövdesi:

"pool": {
      "id": "pool2",
      "vmSize": "standard_a1",
      "virtualMachineConfiguration": {
        "imageReference": {
          "publisher": "Canonical",
          "offer": "UbuntuServer",
          "sku": "20.04-LTS"
        },
        "nodeAgentSKUId": "batch.node.ubuntu 20.04"
      },
"networkConfiguration": {
          "subnetId": "/subscriptions/<subId>/resourceGroups/<rgId>/providers/Microsoft.Network/virtualNetworks/<vNetId>/subnets/<subnetId>",
          "publicIPAddressConfiguration": {
            "provision": "usermanaged",
            "ipAddressIds": [
              "/subscriptions/<subId>/resourceGroups/<rgId>/providers/Microsoft.Network/publicIPAddresses/<publicIpId>"
          ]
        },

       "resizeTimeout":"PT15M",
      "targetDedicatedNodes":5,
      "targetLowPriorityNodes":0,
      "taskSlotsPerNode":3,
      "taskSchedulingPolicy": {
        "nodeFillType":"spread"
      },
      "enableAutoScale":false,
      "enableInterNodeCommunication":true,
      "metadata": [ {
        "name":"myproperty",
        "value":"myvalue"
      } ]
    }

Sonraki adımlar