Egyéni rendszerképkészlet létrehozása az Azure Compute Gallery használatával

Amikor Azure Batch-készletet hoz létre a virtuálisgép-konfigurációval, meg kell adnia egy virtuálisgép-rendszerképet, amely a készlet minden számítási csomópontjának operációs rendszerét biztosítja. Létrehozhat egy virtuális gépekből álló készletet egy támogatott Azure Marketplace-rendszerképpel, vagy létrehozhat egy egyéni rendszerképet egy Azure Compute Gallery-rendszerképpel.

Ha az egyéni rendszerképhez az Azure Compute Galleryt használja, szabályozhatja az operációs rendszer típusát és konfigurációját, valamint az adatlemezek típusát. A megosztott lemezkép tartalmazhat alkalmazásokat és referenciaadatokat, amelyek a kiépítésük után azonnal elérhetővé válnak az összes Batch-készletcsomóponton.

A rendszerképek igény szerint több verzióját is használhatja a környezethez. Amikor képverziót használ a virtuális gép létrehozásához, a rendszerképverzióval új lemezeket hozhat létre a virtuális gép számára.

A megosztott rendszerképek használata időt takarít meg a készlet számítási csomópontjainak a Batch-számítási feladatok futtatására való előkészítésében. A kiépítés után azure Marketplace-rendszerképet használhat, és szoftvereket telepíthet az egyes számítási csomópontokra, de a megosztott rendszerképek használata általában hatékonyabb. Emellett több replikát is megadhat a megosztott lemezképhez, így ha több virtuális géppel (több mint 600 virtuális géppel) hoz létre készleteket, időt takaríthat meg a készlet létrehozásakor.

A forgatókönyvhöz konfigurált megosztott rendszerkép használata számos előnyt biztosíthat:

  • Használja ugyanazokat a képeket a régiók között. A megosztott lemezkép-replikákat különböző régiókban is létrehozhatja, így az összes készlet ugyanazt a lemezképet használja.
  • Az operációs rendszer (OS) konfigurálása. Testre szabhatja a rendszerkép operációsrendszer-lemezének konfigurációját.
  • Alkalmazások előzetes telepítése. Az alkalmazások operációsrendszer-lemezre való előzetes telepítése hatékonyabb és kevésbé hibalehetőség, mint az alkalmazások telepítése a számítási csomópontok indítási feladattal történő kiépítése után.
  • Nagy mennyiségű adat másolása egyszer. A felügyelt megosztott lemezkép statikus adatainak részévé teheti a felügyelt lemezkép adatlemezekre másolásával. Ezt csak egyszer kell elvégezni, és elérhetővé kell tenni az adatokat a készlet minden csomópontja számára.
  • Nagyobb méretűre bővíti a készleteket. Az Azure Compute Gallery segítségével nagyobb készleteket hozhat létre a testre szabott rendszerképekkel, valamint további megosztott képreplikákkal.
  • Jobb teljesítmény, mint ha csak egy felügyelt rendszerképet használ egyéni rendszerképként. Megosztott kép egyéni képkészlet esetén az állandó állapot elérésének ideje akár 25%-kal gyorsabb, a virtuális gép tétlen késése pedig akár 30%-kal rövidebb is lehet.
  • Képek verziószámozása és csoportosítása a könnyebb kezelés érdekében. A képcsoportozás definíciója információkat tartalmaz a rendszerkép létrehozásának okáról, az operációs rendszerről és a rendszerkép használatáról. A képek csoportosítása egyszerűbb képkezelést tesz lehetővé. További információ: Képdefiníciók.

Előfeltételek

  • Egy Azure Batch-fiók. Batch-fiók létrehozásához tekintse meg a Batch rövid útmutatóit az Azure Portal vagy az Azure CLI használatával.

Feljegyzés

Hitelesítésre van szükség a Microsoft Entra-azonosítóval. Ha megosztott kulcs hitelesítését használja, hitelesítési hibaüzenet jelenik meg.

  • Egy Azure Compute Gallery-rendszerkép. Megosztott lemezkép létrehozásához rendelkeznie kell vagy létre kell hoznia egy felügyelt rendszerkép-erőforrást. A rendszerképet a virtuális gép operációsrendszer-lemezének pillanatképeiből és opcionálisan a csatlakoztatott adatlemezekről kell létrehozni.

Feljegyzés

Ha a megosztott lemezkép nem ugyanabban az előfizetésben található, mint a Batch-fiók, regisztrálnia kell a Microsoft.Batch erőforrás-szolgáltatót az előfizetéshez. A két előfizetésnek ugyanabban a Microsoft Entra-bérlőben kell lennie.

A rendszerkép más régióban is lehet, ha replikái ugyanabban a régióban vannak, mint a Batch-fiók.

Ha Microsoft Entra-alkalmazással hoz létre egyéni rendszerképkészletet egy Azure Compute Gallery-rendszerképpel, az alkalmazásnak rendelkeznie kell egy beépített Azure-szerepkörrel , amely hozzáférést biztosít a megosztott lemezképhez. Ezt a hozzáférést az Azure Portalon a megosztott lemezképre való navigálással, a Hozzáférés-vezérlés (IAM) kiválasztásával és az alkalmazás szerepkör-hozzárendelésének hozzáadásával engedélyezheti.

Feljegyzés

Az Azure Compute Gallery rendszerkép olvasói engedélyei nem megfelelőek, mivel a megfelelő hozzáférés érdekében a következő minimális művelet végrehajtására van szükség: Microsoft.Compute/disks/beginGetAccess/action.

Megosztott lemezkép előkészítése

Az Azure-ban létrehozhat egy megosztott lemezképet egy felügyelt rendszerképből, amely a következőből hozható létre:

  • Pillanatképek egy Azure-beli virtuális gép operációs rendszeréről és adatlemezéről
  • Általánosított Azure-beli virtuális gép felügyelt lemezekkel
  • A felhőbe feltöltött általánosított helyszíni VHD

Feljegyzés

A Batch csak az általánosított megosztott lemezképeket támogatja; egy speciális megosztott rendszerkép nem használható készlet létrehozásához.

Az alábbi lépések bemutatják, hogyan készíthet elő virtuális gépet, készíthet pillanatképet, és hogyan hozhat létre képet a pillanatképből.

Virtuális gép előkészítése

Ha új virtuális gépet hoz létre a rendszerképhez, használja a Batch által támogatott Azure Marketplace-rendszerképet a felügyelt rendszerkép alaprendszerképeként.

Az Azure Batch által támogatott aktuális Azure Marketplace-rendszerkép-hivatkozások teljes listájának lekéréséhez az alábbi API-k egyikével adja vissza a Windows- és Linux rendszerű virtuálisgép-rendszerképek listáját:

Kövesse az alábbi irányelveket a virtuális gépek létrehozásakor:

  • Győződjön meg arról, hogy a virtuális gép felügyelt lemezzel van létrehozva. Ez az alapértelmezett tárolási beállítás a virtuális gép létrehozásakor.
  • Ne telepítse az Azure-bővítményeket, például az egyéni szkriptbővítményt a virtuális gépre. Ha a rendszerkép előre telepített bővítményt tartalmaz, az Azure problémákba ütközhet a Batch-készlet telepítésekor.
  • Csatolt adatlemezek használatakor a virtuális gépen belülről kell csatlakoztatnia és formáznia a lemezeket a használatukhoz.
  • Győződjön meg arról, hogy a megadott alap operációsrendszer-rendszerkép az alapértelmezett ideiglenes meghajtót használja. A Batch-csomópontügynök jelenleg az alapértelmezett ideiglenes meghajtót várja.
  • Győződjön meg arról, hogy az operációsrendszer-lemez nincs titkosítva.
  • Ha a virtuális gép fut, csatlakozzon hozzá RDP-n (Windows esetén) vagy SSH-n keresztül (Linux esetén). Telepítse a szükséges szoftvereket, vagy másolja a kívánt adatokat.
  • A készlet gyorsabb kiépítéséhez használja a Virtuális gép operációsrendszer-lemezének ReadWrite lemezgyorsítótár-beállítását .

Az egyéni rendszerkép elérhetővé tétele érdekében létre kell hoznia egy Azure Compute Galleryt. A következő lépésekben válassza ki ezt a gyűjteményt a kép létrehozásakor. Ha tudni szeretné, hogyan hozhat létre Azure Compute Galleryt a rendszerképekhez, olvassa el az Azure Compute Gallery létrehozása című témakört.

Rendszerkép létrehozása

Ha egy virtuális gépről szeretne képet létrehozni a portálon, olvassa el a virtuális gép képének rögzítése című témakört.

Ha nem virtuálisgép-forrásból szeretne lemezképet létrehozni, olvassa el a Rendszerkép létrehozása című témakört.

Feljegyzés

Ha az alaprendszerkép vásárlási tervinformációkat tartalmaz, győződjön meg arról, hogy a katalógus képe ugyanolyan vásárlási tervinformációkat tartalmaz, mint az alaprendszerkép. A vásárlási csomaggal rendelkező rendszerképek létrehozásával kapcsolatos további információkért tekintse meg az Azure Marketplace vásárlási tervének információinak megadását a rendszerképek létrehozásakor.

Ha az alaprendszerkép nem rendelkezik vásárlási terv adataival, ne adjon meg vásárlási tervadatokat a katalógus képéhez.

A Marketplace-rendszerképekkel kapcsolatos vásárlási tervekkel kapcsolatos információkért tekintse meg a Linux vagy Windows rendszerű virtuális gépekre vonatkozó útmutatást.

Az Azure PowerShell Get-AzGalleryImageDefinition vagy az Azure CLI az sig image-definition show használatával ellenőrizze, hogy a katalógus képe helyes tervinformációval rendelkezik-e.

Készlet létrehozása megosztott rendszerképből az Azure CLI használatával

Ha készletet szeretne létrehozni a megosztott rendszerképből az Azure CLI használatával, használja a az batch pool create parancsot. Adja meg a megosztott kép azonosítóját a --image mezőben. Győződjön meg arról, hogy az operációs rendszer típusa és termékváltozata megegyezik a --node-agent-sku-id

Fontos

A csomópontügynök termékváltozat-azonosítójának a közzétevőhöz/ajánlathoz/termékváltozathoz kell igazodnia ahhoz, hogy a csomópont elindulhasson.

az batch pool create \
    --id mypool --vm-size Standard_A1_v2 \
    --target-dedicated-nodes 2 \
    --image "/subscriptions/{sub id}/resourceGroups/{resource group name}/providers/Microsoft.Compute/galleries/{gallery name}/images/{image definition name}/versions/{version id}" \
    --{node-agent-sku-id}

Készlet létrehozása megosztott rendszerképből C használatával#

Másik lehetőségként létrehozhat egy készletet megosztott rendszerképből a C# SDK használatával.

private static VirtualMachineConfiguration CreateVirtualMachineConfiguration(ImageReference imageReference)
{
    return new VirtualMachineConfiguration(
        imageReference: imageReference,
        nodeAgentSkuId: {});
}

private static ImageReference CreateImageReference()
{
    return new ImageReference(
        virtualMachineImageId: "/subscriptions/{sub id}/resourceGroups/{resource group name}/providers/Microsoft.Compute/galleries/{gallery name}/images/{image definition name}/versions/{version id}");
}

private static void CreateBatchPool(BatchClient batchClient, VirtualMachineConfiguration vmConfiguration)
{
    try
    {
        CloudPool pool = batchClient.PoolOperations.CreatePool(
            poolId: PoolId,
            targetDedicatedComputeNodes: PoolNodeCount,
            virtualMachineSize: PoolVMSize,
            virtualMachineConfiguration: vmConfiguration);

        pool.Commit();
    }
    ...
}

Készlet létrehozása megosztott rendszerképből a Python használatával

A Python SDK használatával megosztott lemezképekből is létrehozhat készletet:

# Import the required modules from the
# Azure Batch Client Library for Python
import azure.batch as batch
import azure.batch.models as batchmodels
from azure.common.credentials import ServicePrincipalCredentials

# Specify Batch account and service principal account credentials
account = "{batch-account-name}"
batch_url = "{batch-account-url}"
ad_client_id = "{sp-client-id}"
ad_tenant = "{tenant-id}"
ad_secret = "{sp-secret}"

# Pool settings
pool_id = "LinuxNodesSamplePoolPython"
vm_size = "STANDARD_D2_V3"
node_count = 1

# Initialize the Batch client with Azure AD authentication
creds = ServicePrincipalCredentials(
    client_id=ad_client_id,
    secret=ad_secret,
    tenant=ad_tenant,
    resource="https://batch.core.windows.net/"
)
client = batch.BatchServiceClient(creds, batch_url)

# Configure the start task for the pool
start_task = batchmodels.StartTask(
    command_line="printenv AZ_BATCH_NODE_STARTUP_DIR"
)
start_task.run_elevated = True

# Create an ImageReference which specifies the image from
# Azure Compute Gallery to install on the nodes.
ir = batchmodels.ImageReference(
    virtual_machine_image_id="/subscriptions/{sub id}/resourceGroups/{resource group name}/providers/Microsoft.Compute/galleries/{gallery name}/images/{image definition name}/versions/{version id}"
)

# Create the VirtualMachineConfiguration, specifying
# the VM image reference and the Batch node agent to
# be installed on the node.
vmc = batchmodels.VirtualMachineConfiguration(
    image_reference=ir,
    {node_agent_sku_id}
)

# Create the unbound pool
new_pool = batchmodels.PoolAddParameter(
    id=pool_id,
    vm_size=vm_size,
    target_dedicated_nodes=node_count,
    virtual_machine_configuration=vmc,
    start_task=start_task
)

# Create pool in the Batch service
client.pool.add(new_pool)

Készlet létrehozása megosztott rendszerképből vagy egyéni rendszerképből az Azure Portal használatával

Az alábbi lépésekkel létrehozhat egy készletet egy megosztott rendszerképből az Azure Portalon.

  1. Nyissa meg az Azure Portalt.
  2. Nyissa meg a Batch-fiókokat , és válassza ki a fiókját.
  3. Válassza a Készletek , majd a Hozzáadás lehetőséget egy új készlet létrehozásához.
  4. A Kép típusa szakaszban válassza az Azure Compute Gallery lehetőséget.
  5. Töltse ki a többi szakaszt a felügyelt rendszerkép adataival.
  6. Kattintson az OK gombra.
  7. A csomópont lefoglalása után a Csatlakozás használatával hozza létre a felhasználót és a Windows RDP-fájlját, vagy használja az SSH-t Linux esetén a lefoglalt csomópontba való bejelentkezéshez és az ellenőrzéshez.

Hozzon létre egy készletet egy megosztott rendszerképből a portállal.

A nagy készletekre vonatkozó szempontok

Ha több száz vagy több ezer virtuális gépet vagy több százezer virtuális gépet tartalmazó készletet szeretne létrehozni megosztott rendszerkép használatával, kövesse az alábbi útmutatást.

  • Az Azure Compute Gallery replikaszámai. Javasoljuk, hogy minden legfeljebb 300 példányt tartalmazó készlethez tartson legalább egy replikát. Ha például 3000 virtuális gépet tartalmazó készletet hoz létre, a rendszerkép legalább 10 replikáját meg kell őriznie. Mindig azt javasoljuk, hogy a jobb teljesítmény érdekében a minimálisnál több replikát tartsanak meg.

  • Időtúllépés átméretezése. Ha a készlet rögzített számú csomópontot tartalmaz (ha nem skáláz automatikusan), növelje a resizeTimeout készlet tulajdonságát a készlet méretétől függően. 1000 virtuális gép esetén az ajánlott átméretezés időkorlátja legalább 15 perc. Például a 2000 virtuális géppel rendelkező készlet javasolt átméretezése legalább 30 perc.

Következő lépések