New-AzVmss

가상 머신 확장 집합을 만듭니다.

Syntax

New-AzVmss
   [-ResourceGroupName] <String>
   [-VMScaleSetName] <String>
   [-VirtualMachineScaleSet] <PSVirtualMachineScaleSet>
   [-AsJob]
   [-EdgeZone <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzVmss
   [[-ResourceGroupName] <String>]
   [-VMScaleSetName] <String>
   [-AsJob]
   [-UserData <String>]
   [-EnableAutomaticOSUpgrade]
   [-ImageName <String>]
   -Credential <PSCredential>
   [-InstanceCount <Int32>]
   [-VirtualNetworkName <String>]
   [-SubnetName <String>]
   [-PublicIpAddressName <String>]
   [-DomainNameLabel <String>]
   [-SecurityGroupName <String>]
   [-LoadBalancerName <String>]
   [-BackendPort <Int32[]>]
   [-Location <String>]
   [-EdgeZone <String>]
   [-VmSize <String>]
   [-UpgradePolicyMode <UpgradeMode>]
   [-AllocationMethod <String>]
   [-VnetAddressPrefix <String>]
   [-SubnetAddressPrefix <String>]
   [-FrontendPoolName <String>]
   [-BackendPoolName <String>]
   [-SystemAssignedIdentity]
   [-UserAssignedIdentity <String>]
   [-EnableUltraSSD]
   [-Zone <System.Collections.Generic.List`1[System.String]>]
   [-NatBackendPort <Int32[]>]
   [-DataDiskSizeInGb <Int32[]>]
   [-ProximityPlacementGroupId <String>]
   [-HostGroupId <String>]
   [-Priority <String>]
   [-EvictionPolicy <String>]
   [-MaxPrice <Double>]
   [-ScaleInPolicy <String[]>]
   [-SkipExtensionsOnOverprovisionedVMs]
   [-EncryptionAtHost]
   [-PlatformFaultDomainCount <Int32>]
   [-OrchestrationMode <String>]
   [-CapacityReservationGroupId <String>]
   [-ImageReferenceId <String>]
   [-DiskControllerType <String>]
   [-SharedGalleryImageId <String>]
   [-SecurityType <String>]
   [-EnableVtpm <Boolean>]
   [-EnableSecureBoot <Boolean>]
   [-DefaultProfile <IAzureContextContainer>]
   [-SinglePlacementGroup]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

New-AzVmss cmdlet은 Azure에서 VMSS(Virtual Machine Scale Set)를 만듭니다. 간단한 매개 변수 집합(SimpleParameterSet)을 사용하여 미리 설정된 VMSS 및 관련 리소스를 빠르게 만듭니다.

만들기 전에 VMSS의 각 구성 요소와 연결된 각 리소스를 정확하게 구성해야 하는 경우 고급 시나리오에 기본 매개 변수 집합(DefaultParameter)을 사용합니다. 기본 매개 변수 집합의 경우 먼저 New-AzVmssConfig cmdlet을 사용하여 가상 머신 확장 집합 개체를 만듭니다.

그런 다음, 다음 cmdlet을 사용하여 가상 머신 확장 집합 개체의 다른 속성을 설정합니다.

여기에서 가상 머신 확장 집합 에 대한 다른 cmdlet을 참조하세요.

빠른 시작: 자습서용 Azure PowerShell을 사용하여 가상 머신 확장 집합 만들기를 참조하세요.

예제

예제 1: SimpleParameterSet을 사용하여 VMSS 만들기

$vmssName = 'VMSSNAME'
# Create credentials, I am using one way to create credentials, there are others as well.
# Pick one that makes the most sense according to your use case.
$vmPassword = ConvertTo-SecureString "PASSWORD" -AsPlainText -Force
$vmCred = New-Object System.Management.Automation.PSCredential('USERNAME', $vmPassword)
$securityTypeStnd = "Standard"

#Create a VMSS using the default settings
New-AzVmss -Credential $vmCred -VMScaleSetName $vmssName -SecurityType $securityTypeStnd

위의 명령은 이름을 $vmssName 사용하여 다음을 만듭니다.

  • 리소스 그룹
  • 가상 네트워크
  • 부하 분산 장치
  • 공용 IP
  • 인스턴스가 2개인 VMSS

VMSS에서 VM에 대해 선택한 기본 이미지는 SKU입니다 2016-Datacenter Windows Server . Standard_DS1_v2

예제 2: DefaultParameterSet을 사용하여 VMSS 만들기

# Common
$LOC = "WestUs";
$RGName = "rgkyvms";

New-AzResourceGroup -Name $RGName -Location $LOC -Force;

# SRP
$STOName = "sto" + $RGName;
$STOType = "Standard_GRS";
New-AzStorageAccount -ResourceGroupName $RGName -Name $STOName -Location $LOC -Type $STOType;
$STOAccount = Get-AzStorageAccount -ResourceGroupName $RGName -Name $STOName;

# NRP
$SubNet = New-AzVirtualNetworkSubnetConfig -Name ("subnet" + $RGName) -AddressPrefix "10.0.0.0/24";
$VNet = New-AzVirtualNetwork -Force -Name ("vnet" + $RGName) -ResourceGroupName $RGName -Location $LOC -AddressPrefix "10.0.0.0/16" -DnsServer "10.1.1.1" -Subnet $SubNet;
$VNet = Get-AzVirtualNetwork -Name ('vnet' + $RGName) -ResourceGroupName $RGName;
$SubNetId = $VNet.Subnets[0].Id;

$PubIP = New-AzPublicIpAddress -Force -Name ("pubip" + $RGName) -ResourceGroupName $RGName -Location $LOC -AllocationMethod Dynamic -DomainNameLabel ("pubip" + $RGName);
$PubIP = Get-AzPublicIpAddress -Name ("pubip"  + $RGName) -ResourceGroupName $RGName;

# Create LoadBalancer
$FrontendName = "fe" + $RGName
$BackendAddressPoolName = "bepool" + $RGName
$ProbeName = "vmssprobe" + $RGName
$InboundNatPoolName  = "innatpool" + $RGName
$LBRuleName = "lbrule" + $RGName
$LBName = "vmsslb" + $RGName

$Frontend = New-AzLoadBalancerFrontendIpConfig -Name $FrontendName -PublicIpAddress $PubIP
$BackendAddressPool = New-AzLoadBalancerBackendAddressPoolConfig -Name $BackendAddressPoolName
$Probe = New-AzLoadBalancerProbeConfig -Name $ProbeName -RequestPath healthcheck.aspx -Protocol http -Port 80 -IntervalInSeconds 15 -ProbeCount 2
$InboundNatPool = New-AzLoadBalancerInboundNatPoolConfig -Name $InboundNatPoolName  -FrontendIPConfigurationId `
    $Frontend.Id -Protocol Tcp -FrontendPortRangeStart 3360 -FrontendPortRangeEnd 3367 -BackendPort 3370;
$LBRule = New-AzLoadBalancerRuleConfig -Name $LBRuleName `
    -FrontendIPConfiguration $Frontend -BackendAddressPool $BackendAddressPool `
    -Probe $Probe -Protocol Tcp -FrontendPort 80 -BackendPort 80 `
    -IdleTimeoutInMinutes 15 -EnableFloatingIP -LoadDistribution SourceIP;
$ActualLb = New-AzLoadBalancer -Name $LBName -ResourceGroupName $RGName -Location $LOC `
    -FrontendIpConfiguration $Frontend -BackendAddressPool $BackendAddressPool `
    -Probe $Probe -LoadBalancingRule $LBRule -InboundNatPool $InboundNatPool;
$ExpectedLb = Get-AzLoadBalancer -Name $LBName -ResourceGroupName $RGName

# New VMSS Parameters
$VMSSName = "vmss" + $RGName;

$AdminUsername = "Admin01";
$AdminPassword = "p4ssw0rd@123" + $RGName;

$PublisherName = "MicrosoftWindowsServer"
$Offer         = "WindowsServer"
$Sku           = "2012-R2-Datacenter"
$Version       = "latest"

$VHDContainer = "https://" + $STOName + ".blob.core.windows.net/" + $VMSSName;

$ExtName = "CSETest";
$Publisher = "Microsoft.Compute";
$ExtType = "BGInfo";
$ExtVer = "2.1";

#IP Config for the NIC
$IPCfg = New-AzVmssIpConfig -Name "Test" `
    -LoadBalancerInboundNatPoolsId $ExpectedLb.InboundNatPools[0].Id `
    -LoadBalancerBackendAddressPoolsId $ExpectedLb.BackendAddressPools[0].Id `
    -SubnetId $SubNetId;

#VMSS Config
$securityTypeStnd = "Standard";
$VMSS = New-AzVmssConfig -Location $LOC -SkuCapacity 2 -SkuName "Standard_E4-2ds_v4" -UpgradePolicyMode "Automatic" -SecurityType $securityTypeStnd `
    | Add-AzVmssNetworkInterfaceConfiguration -Name "Test" -Primary $True -IPConfiguration $IPCfg `
    | Add-AzVmssNetworkInterfaceConfiguration -Name "Test2"  -IPConfiguration $IPCfg `
    | Set-AzVmssOsProfile -ComputerNamePrefix "Test"  -AdminUsername $AdminUsername -AdminPassword $AdminPassword `
    | Set-AzVmssStorageProfile -Name "Test"  -OsDiskCreateOption 'FromImage' -OsDiskCaching "None" `
    -ImageReferenceOffer $Offer -ImageReferenceSku $Sku -ImageReferenceVersion $Version `
    -ImageReferencePublisher $PublisherName -VhdContainer $VHDContainer `
    | Add-AzVmssExtension -Name $ExtName -Publisher $Publisher -Type $ExtType -TypeHandlerVersion $ExtVer -AutoUpgradeMinorVersion $True

#Create the VMSS
New-AzVmss -ResourceGroupName $RGName -Name $VMSSName -VirtualMachineScaleSet $VMSS;

위의 복잡한 예제에서는 VMSS를 만듭니다. 다음은 무슨 일이 일어나고 있는지에 대한 설명입니다.

  • 첫 번째 명령은 지정된 이름과 위치를 사용하여 리소스 그룹을 만듭니다.
  • 두 번째 명령은 New-AzStorageAccount cmdlet을 사용하여 스토리지 계정을 만듭니다.
  • 그런 다음 세 번째 명령은 Get-AzStorageAccount cmdlet을 사용하여 두 번째 명령에서 만든 스토리지 계정을 가져와 결과를 $STOAccount 변수에 저장합니다.
  • 다섯 번째 명령은 New-AzVirtualNetworkSubnetConfig cmdlet을 사용하여 서브넷을 만들고 결과를 $SubNet 변수에 저장합니다.
  • 여섯 번째 명령은 New-AzVirtualNetwork cmdlet을 사용하여 가상 네트워크를 만들고 결과를 $VNet 변수에 저장합니다.
  • 일곱 번째 명령은 Get-AzVirtualNetwork를 사용하여 여섯 번째 명령에서 만든 가상 네트워크에 대한 정보를 가져와서 $VNet 변수에 저장합니다.
  • 여덟 번째 및 아홉 번째 명령은 New-AzPublicIpAddressGet- AzureRmPublicIpAddress를 사용하여 해당 공용 IP 주소에서 정보를 만들고 가져옵니다.
  • 명령은 $PubIP 변수에 정보를 저장합니다.
  • 10번째 명령은 New- AzureRmLoadBalancerFrontendIpConfig cmdlet을 사용하여 프런트 엔드 부하 분산 장치를 만들고 결과를 $Frontend 변수에 저장합니다.
  • 11번째 명령은 New-AzLoadBalancerBackendAddressPoolConfig를 사용하여 백 엔드 주소 풀 구성을 만들고 결과를 $BackendAddressPool 변수에 저장합니다.
  • 12번째 명령은 New-AzLoadBalancerProbeConfig를 사용하여 프로브를 만들고 프로브 정보를 $Probe 변수에 저장합니다.
  • 13번째 명령은 New-AzLoadBalancerInboundNatPoolConfig cmdlet을 사용하여 부하 분산 장치 NAT(인바운드 네트워크 주소 변환) 풀 구성을 만듭니다.
  • 14번째 명령은 New-AzLoadBalancerRuleConfig를 사용하여 부하 분산 장치 규칙 구성을 만들고 결과를 $LBRule 변수에 저장합니다.
  • 15번째 명령은 New-AzLoadBalancer cmdlet을 사용하여 부하 분산 장치를 만들고 결과를 $ActualLb 변수에 저장합니다.
  • 16번째 명령은 Get-AzLoadBalancer를 사용하여 15번째 명령에서 만든 부하 분산 장치에 대한 정보를 가져와서 $ExpectedLb 변수에 저장합니다.
  • 17번째 명령은 New-AzVmssIpConfig cmdlet을 사용하여 VMSS IP 구성을 만들고 $IPCfg 변수에 정보를 저장합니다.
  • 18번째 명령은 New-AzVmssConfig cmdlet을 사용하여 VMSS 구성 개체를 만들고 결과를 $VMSS 변수에 저장합니다.
  • 19번째 명령은 New-AzVmss cmdlet을 사용하여 VMSS를 만듭니다.

예제 3: UserData 값을 사용하여 VMSS 만들기

$ResourceGroupName = 'RESOURCE GROUP NAME';
$vmssName = 'VMSSNAME';
$domainNameLabel = "dnl" + $ResourceGroupName;
# Create credentials, I am using one way to create credentials, there are others as well.
# Pick one that makes the most sense according to your use case.
$vmPassword = ConvertTo-SecureString 'PASSWORD' -AsPlainText -Force;
$vmCred = New-Object System.Management.Automation.PSCredential('USERNAME', $vmPassword);

$text = "UserData value to encode";
$bytes = [System.Text.Encoding]::Unicode.GetBytes($text);
$userData = [Convert]::ToBase64String($bytes);
$securityTypeStnd = "Standard";

#Create a VMSS
New-AzVmss -ResourceGroupName $ResourceGroupName -Name $vmssName -Credential $vmCred -DomainNameLabel $domainNameLabel -Userdata $userData -SecurityType $securityTypeStnd;
$vmss = Get-AzVmss -ResourceGroupName $ResourceGroupName -VMScaleSetName $vmssName -InstanceView:$false -Userdata;

UserData 값을 사용하여 VMSS 만들기

예제 4: 보안 유형 TrustedLaunch를 사용하여 Vmss 만들기

$rgname = "rgname";
$loc = "eastus";

# VMSS Profile & Hardware requirements for the TrustedLaunch default behavior.
$vmssSize = 'Standard_D4s_v3';
$vmssName1 = 'vmss1' + $rgname;
$imageName = "Win2022AzureEdition";
$adminUsername = "<Username>";
$adminPassword = "<Password>" | ConvertTo-SecureString -AsPlainText -Force;
$vmCred = New-Object System.Management.Automation.PSCredential ($adminUsername, $adminPassword);

# VMSS Creation 
$result = New-AzVmss -Credential $vmCred -VMScaleSetName $vmssName1 -ImageName $imageName -SecurityType "TrustedLaunch";
# Validate that for -SecurityType "TrustedLaunch", "-Vtpm" and -"SecureBoot" are "Enabled/true"
# $result.VirtualMachineProfile.SecurityProfile.UefiSettings.VTpmEnabled;
# $result.VirtualMachineProfile.SecurityProfile.UefiSettings.SecureBootEnabled;

다음은 새 보안 유형 'TrustedLaunch'와 필요한 UEFI설정 값, VTpmEnabled 및 SecureBootEnalbed가 true인 새 VMSS를 만드는 예제입니다. 자세한 내용은 신뢰할 수 있는 시작 기능 페이지를 검사.

예제 5: 오케스트레이션 모드에서 Vm 만들기: 기본적으로 유연

# Create configration object
$vmssConfig = New-AzVmssConfig -Location EastUs2 -UpgradePolicyMode Manual -SinglePlacementGroup $true

# VMSS Creation 
New-AzVmss -ResourceGroupName TestRg -VMScaleSetName myVMSS -VirtualMachineScaleSet $vmssConfig

다음은 새 VMSS를 만들고 OrchestrationMode Flexible로 기본값을 지정하는 예제입니다.

예제 6: TrustedLaunch가 기본적으로 켜져 있는 새 VMSS를 만듭니다.

$rgname = "<Resource Group>";
$loc = "<Azure Region>";
New-AzResourceGroup -Name $rgname -Location $loc -Force;

$vmssName = 'vmss' + $rgname;
$vmssSize = 'Standard_D4s_v3';
$imageName = "Win2022AzureEdition";
$publisherName = "MicrosoftWindowsServer";
$offer = "WindowsServer";
$sku = "2022-Datacenter-Azure-Edition";
$adminUsername = "<Username>";
$password = "<Password>";

# NRP
$vnetworkName = 'vnet' + $rgname;
$subnetName = 'subnet' + $rgname;
$subnet = New-AzVirtualNetworkSubnetConfig -Name $subnetName -AddressPrefix "10.0.0.0/24";
$vnet = New-AzVirtualNetwork -Name $vnetworkName -ResourceGroupName $rgname -Location $loc -AddressPrefix "10.0.0.0/16" -Subnet $subnet;
$vnet = Get-AzVirtualNetwork -Name $vnetworkName -ResourceGroupName $rgname;
$subnetId = $vnet.Subnets[0].Id;

$ipCfg = New-AzVmssIpConfig -Name 'test' -SubnetId $subnetId;

$vmss = New-AzVmssConfig -Location $loc -SkuCapacity 2 -SkuName $vmssSize -UpgradePolicyMode 'Manual' `
    | Add-AzVmssNetworkInterfaceConfiguration -Name 'test' -Primary $true -IPConfiguration $ipCfg `
    | Set-AzVmssOsProfile -ComputerNamePrefix 'test' -AdminUsername $adminUsername -AdminPassword $password;
    
# Create TL Vmss
$result = New-AzVmss -ResourceGroupName $rgname -VMScaleSetName $vmssName -VirtualMachineScaleSet $vmss;
$vmssGet = Get-AzVmss -ResourceGroupName $rgname -VMScaleSetName $vmssName;

# Verify $vmssGet.VirtualMachineProfile.SecurityProfile.SecurityType is TrustedLaunch.
# Verify $vmssGet.VirtualMachineProfile.SecurityProfile.UefiSettings.VTpmEnabled is True.
# Verify $vmssGet.VirtualMachineProfile.SecurityProfile.UefiSettings.SecureBootEnabled is True.
# Verify $vmssGet.VirtualMachineProfile.StorageProfile.ImageReference.Sku is 2022-Datacenter-Azure-Edition.

위의 가상 머신 확장 집합은 기본적으로 신뢰할 수 있는 시작을 사용하도록 설정되어 있습니다. 자세한 내용은 신뢰할 수 있는 시작 기능 페이지를 검사.

매개 변수

-AllocationMethod

확장 집합의 공용 IP 주소(정적 또는 동적)에 대한 할당 방법입니다. 값이 제공되지 않으면 할당이 정적입니다.

Type:String
Accepted values:Static, Dynamic
Position:Named
Default value:Static
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-AsJob

백그라운드에서 cmdlet을 실행하고 작업을 반환하여 진행률을 추적합니다.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-BackendPoolName

이 확장 집합의 부하 분산 장치에서 사용할 백 엔드 주소 풀의 이름입니다. 값이 제공되지 않으면 확장 집합과 동일한 이름으로 새 백 엔드 풀이 만들어집니다.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-BackendPort

확장 집합 부하 분산 장치에서 확장 집합의 VM과 통신하는 데 사용하는 백 엔드 포트 번호입니다. 값을 지정하지 않으면 포트 3389 및 5985가 Windows VMS에 사용되고 포트 22는 Linux VM에 사용됩니다.

Type:Int32[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CapacityReservationGroupId

할당하는 데 사용되는 용량 예약 그룹의 ID입니다.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

cmdlet을 실행하기 전에 확인 메시지가 표시됩니다.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

이 확장 집합의 VM에 대한 관리자 자격 증명(사용자 이름 및 암호)입니다.

사용자 이름
제한:
Windows: 특수 문자를 포함할 수 없음 /""[]:|<>+=;,?*@> 또는 ""로 끝납니다.
Linux: 사용자 이름은 문자, 숫자, 하이픈 및 밑줄만 포함해야 하며 하이픈 또는 숫자로 시작할 수 없습니다.
허용되지 않는 값: "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5".
최소 길이: 1자
최대 길이: Windows의 경우 20자, Linux의 경우 64자
암호
소문자 1개, 대문자 1개, 숫자 1개, 특수 문자 1개 중 3개여야 합니다.
값은 12자에서 123자 사이여야 합니다.

Type:PSCredential
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-DataDiskSizeInGb

데이터 디스크의 크기를 GB 단위로 지정합니다.

Type:Int32[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

Azure와의 통신에 사용되는 자격 증명, 계정, 테넌트 및 구독입니다.

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DiskControllerType

VM 및 VirtualMachineScaleSet에 대해 구성된 디스크 컨트롤러 유형을 지정합니다. 이 속성은 운영 체제 디스크 및 VM sku가 2세대(https://learn.microsoft.com/en-us/azure/virtual-machines/generation-2)를 지원하는 가상 머신에 대해서만 지원됩니다. 지역에 대한 Microsoft.Compute SKU API의 응답에서 VM sku 기능의 일부로 반환된 HyperVGenerations 기능에 V2(https://learn.microsoft.com/rest/api/compute/resourceskus/list)가 포함되어 있는지 검사.
지원되는 디스크 컨트롤러 유형에 대한 자세한 내용은 을 참조 https://aka.ms/azure-diskcontrollertypes하세요.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DomainNameLabel

이 확장 집합의 공용 FQDN(정규화된 do기본 이름)에 대한 do기본 이름 레이블입니다. 크기 집합에 자동으로 할당되는 do기본 이름의 첫 번째 구성 요소입니다. 자동으로 할당된 Do기본 이름은 양식(<DomainNameLabel>.<Location>.cloudapp.azure.com)을 사용합니다. 값이 제공되지 않으면 기본 do기본 이름 레이블은 <ScaleSetName> 연결 및 <ResourceGroupName>.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EdgeZone

에지 영역 이름을 설정합니다. 설정된 경우 쿼리는 기본 지역 대신 지정된 에지존으로 라우팅됩니다.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-EnableAutomaticOSUpgrade

최신 버전의 이미지를 사용할 수 있게 되면 OS 업그레이드를 확장 집합 인스턴스에 롤링 방식으로 자동으로 적용해야 하는지 여부입니다.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EnableSecureBoot

가상 머신에서 보안 부팅을 사용하도록 설정할지 여부를 지정합니다.

Type:Nullable<T>[Boolean]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-EnableUltraSSD

확장 집합의 VM에 UltraSSD 디스크를 사용합니다.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EnableVtpm

가상 머신에서 vTPM을 사용하도록 설정할지 여부를 지정합니다.

Type:Nullable<T>[Boolean]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-EncryptionAtHost

이 매개 변수는 호스트 자체의 리소스/임시 디스크를 비롯한 모든 디스크에 대한 암호화를 사용하도록 설정합니다. 기본값: 리소스에 대해 이 속성을 true로 설정하지 않으면 호스트의 암호화가 비활성화됩니다.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EvictionPolicy

우선 순위가 낮은 가상 머신 확장 집합에 대한 제거 정책입니다. 지원되는 값만 '할당 취소' 및 '삭제'입니다.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-FrontendPoolName

확장 집합 부하 분산 장치에서 사용할 프런트 엔드 주소 풀의 이름입니다. 값이 제공되지 않으면 확장 집합과 동일한 이름으로 새 프런트 엔드 주소 풀이 만들어집니다.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-HostGroupId

가상 머신 확장 집합이 상주할 전용 호스트 그룹을 지정합니다.

Type:String
Aliases:HostGroup
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ImageName

이 확장 집합에 있는 VM에 대한 이미지의 별칭입니다. 값이 제공되지 않으면 "Windows Server 2016 DataCenter" 이미지가 사용됩니다. 사용 가능한 별칭은 Win2022AzureEdition, Win2022AzureEditionCore, Win2019Datacenter, Win2016Datacenter, Win2012R2Datacenter, Win2012Datacenter, UbuntuLTS, Ubuntu204, CentOS85Gen2, Debian11, OpenSuseLeap154Gen2, RHELRaw8LVMGen2, SuseSles15SP3, FlatcarLinuxFreeGen2.

Type:String
Aliases:Image
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ImageReferenceId

vmss 배포에 대한 공유 갤러리 이미지 고유 ID를 지정했습니다. 공유 갤러리 이미지 GET 호출에서 가져올 수 있습니다.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InstanceCount

확장 집합의 VM 이미지 수입니다. 값이 제공되지 않으면 2개의 인스턴스가 만들어집니다.

Type:Int32
Position:Named
Default value:2
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-LoadBalancerName

이 확장 집합에 사용할 부하 분산 장치의 이름입니다. 값이 지정되지 않은 경우 확장 집합과 동일한 이름을 사용하는 새 부하 분산 장치가 만들어집니다.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Location

이 확장 집합을 만들 Azure 위치입니다. 값이 지정되지 않은 경우 위치는 매개 변수에서 참조되는 다른 리소스의 위치에서 유추됩니다.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MaxPrice

우선 순위가 낮은 가상 머신 확장 집합의 최대 청구 가격입니다.

Type:Double
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-NatBackendPort

인바운드 네트워크 주소 변환을 위한 백 엔드 포트입니다.

Type:Int32[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OrchestrationMode

가상 머신 확장 집합의 오케스트레이션 모드를 지정합니다. 가능한 값: Uniform, Flexible

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-PlatformFaultDomainCount

각 배치 그룹에 대한 장애 기본 개수입니다.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Priority

확장 집합의 가상 머신에 대한 우선 순위입니다. 지원되는 값만 'Regular', 'Spot' 및 'Low'입니다. '일반'은 일반 가상 머신용입니다. 'Spot'은 스폿 가상 머신을 위한 것입니다. 'Low'는 스폿 가상 머신용이지만 '스폿'으로 대체됩니다. '낮음' 대신 'Spot'을 사용하세요.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ProximityPlacementGroupId

이 확장 집합에 사용할 근접 배치 그룹의 리소스 ID입니다.

Type:String
Aliases:ProximityPlacementGroup
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PublicIpAddressName

이 확장 집합에 사용할 공용 IP 주소의 이름입니다. 값이 제공되지 않으면 확장 집합과 이름이 같은 새 공용 IPAddress가 만들어집니다.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ResourceGroupName

VMSS의 리소스 그룹 이름을 지정합니다. 값을 지정하지 않으면 확장 집합과 동일한 이름을 사용하여 새 ResourceGroup이 만들어집니다.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ScaleInPolicy

가상 머신 확장 집합을 스케일 인할 때 따라야 할 규칙입니다. 가능한 값은 'Default', 'OldestVM' 및 'NewestVM'입니다. 가상 머신 확장 집합이 확장되면 '기본값'은 영역 확장 집합인 경우 먼저 영역 간에 분산됩니다. 그런 다음 가능한 한 Fault Do기본 간에 균형을 이루게 됩니다. 각 Fault Do기본 내에서 제거를 위해 선택한 가상 머신은 스케일 인으로부터 보호되지 않는 최신 컴퓨터가 됩니다. 가상 머신 확장 집합이 확장될 때 'OldestVM'은 확장으로부터 보호되지 않는 가장 오래된 가상 머신을 제거하도록 선택됩니다. 영역 가상 머신 확장 집합의 경우 확장 집합은 먼저 영역 간에 균형을 이루게 됩니다. 각 영역 내에서 보호되지 않는 가장 오래된 가상 머신이 제거되도록 선택됩니다. 'NewestVM'은 가상 머신 확장 집합을 스케일 인할 때 확장으로부터 보호되지 않는 최신 가상 머신을 제거하도록 선택됩니다. 영역 가상 머신 확장 집합의 경우 확장 집합은 먼저 영역 간에 균형을 이루게 됩니다. 각 영역 내에서 보호되지 않는 최신 가상 머신이 제거를 위해 선택됩니다.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SecurityGroupName

이 확장 집합에 적용할 네트워크 보안 그룹의 이름입니다. 값이 제공되지 않으면 확장 집합과 이름이 같은 기본 네트워크 보안 그룹이 만들어지고 확장 집합에 적용됩니다.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SecurityType

가상 머신의 SecurityType을 지정합니다. Uefi설정 사용하도록 설정하려면 지정된 값으로 설정해야 합니다. 이 속성을 설정하지 않으면 Uefi설정를 사용할 수 없습니다.

Type:String
Accepted values:TrustedLaunch, ConfidentialVM, Standard
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-SharedGalleryImageId

vm 배포에 대한 공유 갤러리 이미지 고유 ID를 지정했습니다. 공유 갤러리 이미지 GET 호출에서 가져올 수 있습니다.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SinglePlacementGroup

단일 배치 그룹에서 확장 집합을 만들려면 이 값을 사용합니다. 기본값은 여러 그룹입니다.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SkipExtensionsOnOverprovisionedVMs

확장이 과도하게 프로비전된 추가 VM에서 실행되지 않도록 지정합니다.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SubnetAddressPrefix

ScaleSet에서 사용할 서브넷의 주소 접두사입니다. 값이 제공되지 않으면 기본 서브넷 설정(192.168.1.0/24)이 적용됩니다.

Type:String
Position:Named
Default value:192.168.1.0/24
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SubnetName

이 확장 집합에 사용할 서브넷의 이름입니다. 값이 제공되지 않으면 확장 집합과 동일한 이름으로 새 서브넷이 만들어집니다.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SystemAssignedIdentity

매개 변수가 있는 경우 확장 집합의 VM에 자동 생성되는 관리되는 시스템 ID가 할당됩니다.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UpgradePolicyMode

이 확장 집합의 VM 인스턴스에 대한 업그레이드 정책 모드입니다. 업그레이드 정책은 자동, 수동 또는 롤링 업그레이드를 지정할 수 있습니다.

Type:UpgradeMode
Accepted values:Automatic, Manual, Rolling
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UserAssignedIdentity

확장 집합의 VM에 할당해야 하는 관리 서비스 ID의 이름입니다.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UserData

Base-64로 인코딩되는 VM에 대한 UserData입니다. 고객은 여기에 비밀을 전달해서는 안됩니다.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-VirtualMachineScaleSet

이 cmdlet에서 만드는 VMSS의 속성을 포함하는 VirtualMachineScaleSet 개체를 지정합니다.

Type:PSVirtualMachineScaleSet
Position:2
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-VirtualNetworkName

이 확장 집합에 사용할 Virtual Network의 이름입니다. 값이 제공되지 않으면 확장 집합과 이름이 같은 새 가상 네트워크가 만들어집니다.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-VMScaleSetName

이 cmdlet에서 만드는 VMSS의 이름을 지정합니다.

Type:String
Aliases:Name
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-VmSize

이 확장 집합의 VM 인스턴스 크기입니다. Get-AzComputeResourceSku 를 사용하여 구독 및 지역에 사용 가능한 크기를 확인할 수 있습니다. 크기가 지정되지 않은 경우 기본 크기(Standard_DS1_v2)가 사용됩니다.

Type:String
Position:Named
Default value:Standard_DS1_v2
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-VnetAddressPrefix

이 확장 집합에 사용되는 가상 네트워크의 주소 접두사입니다. 값이 제공되지 않으면 기본 가상 네트워크 주소 접두사 설정(192.168.0.0/16)이 사용됩니다.

Type:String
Position:Named
Default value:192.168.0.0/16
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

cmdlet이 실행될 경우 결과 동작을 표시합니다. cmdlet이 실행되지 않습니다.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Zone

리소스에 할당된 IP를 나타내는 가용성 영역의 목록입니다.

Type:List<T>[String]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

입력

String

PSVirtualMachineScaleSet

List<T>[[System.String, System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]

출력

PSVirtualMachineScaleSet