簡體   English   中英

如何使用 java 腳本動態創建 vm 縮放計數 1

[英]how to create vm scaling count 1 dynamically using java script

我已經創建了窗口服務器 vm 規模集。 我已經單獨編寫了一個應用程序,根據我的要求,我想通過 azure 門戶中的手動縮放將 vm 實例計數創建為 1,這是可能的,但是我正在查看 api 我想創建 vm 實例,一旦完成我想刪除vm,有可能嗎?請建議/建議。 提前致謝。 "capacity": { "minimum": "1", "maximum": "1", "default": "1" },

通過使用SKU參數下的容量屬性,您可以確定創建 VMSS 時需要配置的實例數量,您可以參考以下文檔中提到的示例示例:

const { ComputeManagementClient } = require("@azure/arm-compute");
const { DefaultAzureCredential } = require("@azure/identity");

/**
 * This sample demonstrates how to Create or update a VM scale set.
 *
 * @summary Create or update a VM scale set.
 * x-ms-original-file: specification/compute/resource-manager/Microsoft.Compute/stable/2022-03-01/ComputeRP/examples/virtualMachineScaleSetExamples/VirtualMachineScaleSet_Create_CustomImageFromAnUnmanagedGeneralizedOsImage.json
 */
async function createACustomImageScaleSetFromAnUnmanagedGeneralizedOSImage() {
  const subscriptionId = "{subscription-id}";
  const resourceGroupName = "myResourceGroup";
  const vmScaleSetName = "{vmss-name}";
  const parameters = {
    location: "westus",
    overprovision: true,
    sku: { name: "Standard_D1_v2", capacity: 3, tier: "Standard" },
    upgradePolicy: { mode: "Manual" },
    virtualMachineProfile: {
      networkProfile: {
        networkInterfaceConfigurations: [
          {
            name: "{vmss-name}",
            enableIPForwarding: true,
            ipConfigurations: [
              {
                name: "{vmss-name}",
                subnet: {
                  id: "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/{existing-virtual-network-name}/subnets/{existing-subnet-name}",
                },
              },
            ],
            primary: true,
          },
        ],
      },
      osProfile: {
        adminPassword: "{your-password}",
        adminUsername: "{your-username}",
        computerNamePrefix: "{vmss-name}",
      },
      storageProfile: {
        osDisk: {
          name: "osDisk",
          caching: "ReadWrite",
          createOption: "FromImage",
          image: {
            uri: "http://{existing-storage-account-name}.blob.core.windows.net/{existing-container-name}/{existing-generalized-os-image-blob-name}.vhd",
          },
        },
      },
    },
  };
  const credential = new DefaultAzureCredential();
  const client = new ComputeManagementClient(credential, subscriptionId);
  const result = await client.virtualMachineScaleSets.beginCreateOrUpdateAndWait(
    resourceGroupName,
    vmScaleSetName,
    parameters
  );
  console.log(result);
}

createACustomImageScaleSetFromAnUnmanagedGeneralizedOSImage().catch(console.error);

注意:從已發布的 azure 文檔中復制了上述示例代碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM