Внимание
В настоящее время невозможно создать масштабируемый набор виртуальных машин с помощью гибкого режима оркестрации из образа, доступного другому клиенту.
Создайте масштабируемый набор на основе специализированной версии образа, хранящейся в Коллекции вычислений Azure. Если требуется создать масштабируемый набор с помощью универсальной версии образа, см. статью Создание масштабируемого набора на основе универсального образа.
Внимание
При создании нового масштабируемого набора из специализированного образа виртуальные машины сохраняют имя компьютера исходной виртуальной машины. Также сохраняются другие сведения, относящиеся к компьютеру, например CMID. Эта повторяющаяся информация может вызвать проблемы. При использовании специализированного образа следует учитывать, какие типы сведений о компьютере используют приложения.
При необходимости замените имена ресурсов в этих примерах.
Создание масштабируемого набора из коллекции
Создание масштабируемого набора с помощью образа, хранящегося в коллекции вычислений Azure, аналогично созданию масштабируемого набора с помощью образа Marketplace, за исключением того, что при выборе образа необходимо выбрать Просмотреть все образы.
Откроется страница Выбор образа. Выберите Мои образы, если нужный образ находится в вашей собственной коллекции, или выберите Общие образы, если образ был предоставлен вам из коллекции других пользователей.
Если вы решили установить и использовать интерфейс командной строки локально, то для работы с этим руководством вам понадобится Azure CLI 2.35.0 или более поздней версии. Чтобы узнать версию, выполните команду az --version
. Если вам необходимо выполнить установку или обновление, см. статью Установка Azure CLI 2.0.
Укажите определения образов в коллекции, используя команду az sig image-definition list для просмотра имен и идентификаторов определений.
resourceGroup=myGalleryRG
gallery=myGallery
az sig image-definition list \
--resource-group $resourceGroup \
--gallery-name $gallery \
--query "[].[name, id]" \
--output tsv
Создайте масштабируемый набор с помощью команды az vmss create
, используя параметр --specialized
, чтобы указать, что образ является специализированным.
Используйте идентификатор определения образа в качестве значения параметра --image
, чтобы создать экземпляры масштабируемого набора на основе последней доступной версии образа. Вы также можете создать экземпляры масштабируемого набора на основе определенной версии, указав идентификатор версии образа в параметре --image
. Имейте в виду, что при использовании конкретной версии образа автоматизация может завершиться ошибкой, если эта версия будет недоступна из-за того, что она была удалена из региона или полностью удалена. Для создания новой виртуальной машины рекомендуется использовать идентификатор определения образа, если только не требуется определенная версия образа.
В нашем примере экземпляры создаются на основе последней версии образа myImageDefinition.
az group create --name myResourceGroup --location eastus
az vmss create \
--resource-group myResourceGroup \
--name myScaleSet \
--image "/subscriptions/<Subscription ID>/resourceGroups/myGalleryRG/providers/Microsoft.Compute/galleries/myGallery/images/myImageDefinition" \
--specialized
В этом примере мы используем идентификатор определения образа, чтобы новая виртуальная машина использовала самую последнюю версию образа. Вы также можете использовать определенную версию, добавив параметр -ImageReferenceId
с идентификатором версии образа. Например, чтобы использовать образ версии 1.0.0, введите -ImageReferenceId "/subscriptions/<subscription ID where the gallery is located>/resourceGroups/myGalleryRG/providers/Microsoft.Compute/galleries/myGallery/images/myImageDefinition/versions/1.0.0"
.
Имейте в виду, что при использовании конкретной версии образа автоматизация может завершиться ошибкой, если эта версия будет недоступна из-за того, что она была удалена из региона или полностью удалена. Для создания новой виртуальной машины рекомендуется использовать идентификатор определения образа, если только не требуется определенная версия образа.
В следующем примере создается масштабируемый набор с именем myScaleSet в группе ресурсов myVMSSRG в расположении SouthCentralUS. Масштабируемый набор будет создан из образа myImageDefinition в коллекции образов myGallery в группе ресурсов myGalleryRG. При появлении запроса задайте собственные административные учетные данные для экземпляров виртуальных машин в масштабируемом наборе.
# Get the image definition
$imageDefinition = Get-AzGalleryImageDefinition `
-GalleryName myGallery `
-ResourceGroupName myGalleryRG `
-Name myImageDefinition
# Define variables for the scale set
$resourceGroupName = "myVMSSRG"
$scaleSetName = "myScaleSet"
$location = "South Central US"
# Create a resource group
New-AzResourceGroup -ResourceGroupName $resourceGroupName -Location $location
# Create a networking pieces
$subnet = New-AzVirtualNetworkSubnetConfig `
-Name "mySubnet" `
-AddressPrefix 10.0.0.0/24
$vnet = New-AzVirtualNetwork `
-ResourceGroupName $resourceGroupName `
-Name "myVnet" `
-Location $location `
-AddressPrefix 10.0.0.0/16 `
-Subnet $subnet
$publicIP = New-AzPublicIpAddress `
-ResourceGroupName $resourceGroupName `
-Location $location `
-AllocationMethod Static `
-Name "myPublicIP"
$frontendIP = New-AzLoadBalancerFrontendIpConfig `
-Name "myFrontEndPool" `
-PublicIpAddress $publicIP
$backendPool = New-AzLoadBalancerBackendAddressPoolConfig -Name "myBackEndPool"
$inboundNATPool = New-AzLoadBalancerInboundNatPoolConfig `
-Name "myRDPRule" `
-FrontendIpConfigurationId $frontendIP.Id `
-Protocol TCP `
-FrontendPortRangeStart 50001 `
-FrontendPortRangeEnd 50010 `
-BackendPort 3389
# Create the load balancer and health probe
$lb = New-AzLoadBalancer `
-ResourceGroupName $resourceGroupName `
-Name "myLoadBalancer" `
-Location $location `
-FrontendIpConfiguration $frontendIP `
-BackendAddressPool $backendPool `
-InboundNatPool $inboundNATPool
Add-AzLoadBalancerProbeConfig -Name "myHealthProbe" `
-LoadBalancer $lb `
-Protocol TCP `
-Port 80 `
-IntervalInSeconds 15 `
-ProbeCount 2
Add-AzLoadBalancerRuleConfig `
-Name "myLoadBalancerRule" `
-LoadBalancer $lb `
-FrontendIpConfiguration $lb.FrontendIpConfigurations[0] `
-BackendAddressPool $lb.BackendAddressPools[0] `
-Protocol TCP `
-FrontendPort 80 `
-BackendPort 80 `
-Probe (Get-AzLoadBalancerProbeConfig -Name "myHealthProbe" -LoadBalancer $lb)
Set-AzLoadBalancer -LoadBalancer $lb
# Create IP address configurations
$ipConfig = New-AzVmssIpConfig `
-Name "myIPConfig" `
-LoadBalancerBackendAddressPoolsId $lb.BackendAddressPools[0].Id `
-LoadBalancerInboundNatPoolsId $inboundNATPool.Id `
-SubnetId $vnet.Subnets[0].Id
# Create a configuration
$vmssConfig = New-AzVmssConfig `
-Location $location `
-SkuCapacity 2 `
-SkuName "Standard_DS2" `
-UpgradePolicyMode "Automatic"
# Reference the image version
Set-AzVmssStorageProfile $vmssConfig `
-OsDiskCreateOption "FromImage" `
-ImageReferenceId $imageDefinition.Id
# Complete the configuration
Add-AzVmssNetworkInterfaceConfiguration `
-VirtualMachineScaleSet $vmssConfig `
-Name "network-config" `
-Primary $true `
-IPConfiguration $ipConfig
# Create the scale set
New-AzVmss `
-ResourceGroupName $resourceGroupName `
-Name $scaleSetName `
-VirtualMachineScaleSet $vmssConfig
Создание и настройка всех ресурсов и виртуальных машин масштабируемого набора занимает несколько минут.
Внимание
Коллекция вычислений Azure — это коллекции сообщества, которые в настоящее время находятся в предварительной версии и распространяются на условиях предварительной версии коллекции вычислений Azure для коллекции сообщества.
Корпорация Майкрософт не предоставляет поддержку образов из коллекции сообщества.
Масштабируемые наборы можно создавать из образов в коллекции сообществ, но если затем образ будет удален, вы не сможете выполнить масштабирование. Чтобы обеспечить доступ к образу в течение длительного времени, рекомендуется создать образ в собственной коллекции из виртуальной машины, созданной с помощью образа из коллекции сообщества, который вы хотите использовать для масштабируемого набора. Дополнительные сведения см. в статье Создание определения образа и версии образа.
Чтобы получить общедоступное имя коллекции сообщества, конечный пользователь должен использовать портал. Выберите Виртуальные машины>Создать>Виртуальная машина Azure>Образ>Просмотреть все образы>Образы сообщества>Имя общедоступной коллекции.
При необходимости замените имена ресурсов в этих примерах.
Если вы решили установить и использовать интерфейс командной строки локально, для работы с коллекцией сообщества вам понадобится Azure CLI 2.4.0 или более поздней версии. Чтобы узнать версию, выполните команду az --version
. Если вам необходимо выполнить установку или обновление, см. статью Установка Azure CLI 2.0.
Чтобы создать виртуальную машину, используя образ, предоставленный для коллекции сообщества, используйте уникальный идентификатор образа для --image
, который будет иметь следующий формат:
/CommunityGalleries/<community gallery name>/Images/<image name>/Versions/latest
Чтобы отобразить список всех определений образов, доступных в коллекции сообщества, выполните команду az sig image-definition list-community. В этом примере мы отобразим список всех образов в коллекции ContosoImage в западной части США, а также по имени, уникальный идентификатор, необходимый для создания виртуальной машины, операционную систему и состояние ОС.
az sig image-definition list-community \
--public-gallery-name "ContosoImages-1a2b3c4d-1234-abcd-1234-1a2b3c4d5e6f" \
--location westus \
--query [*]."{Name:name,ID:uniqueId,OS:osType,State:osState}" -o table
Создайте масштабируемый набор, задав для параметра --image
уникальный идентификатор образа в коллекции сообщества. В этом примере мы создаем масштабируемый набор Flexible
.
az group create --name myResourceGroup --location eastus
imgDef="/CommunityGalleries/ContosoImages-1a2b3c4d-1234-abcd-1234-1a2b3c4d5e6f>/Images/myLinuxImage/Versions/latest"
az vmss create \
--resource-group myResourceGroup \
--name myScaleSet \
--image $imgDef \
--orchestration-mode Flexible
При использовании образа сообщества вам необходимо будет принять юридические условия. Сообщение будет выглядеть следующим образом:
To create the scale set from community gallery image, you must accept the license agreement and privacy statement: http://contoso.com. (If you want to accept the legal terms by default, please use the option '--accept-term' when creating VM/VMSS) (Y/n):
Процедура создания масштабируемого набора с помощью образа из коллекции сообщества аналогична созданию масштабируемого набора с помощью образа Marketplace, за исключением того, что при выборе образа необходимо выбрать Просмотреть все образы.
Откроется страница Выбор образа. Выберите Образы сообщества (предварительная версия), чтобы просмотреть список образов, доступных в коллекции сообщества.
Следующие шаги
С помощью Конструктора образов виртуальных машин Azure (предварительная версия) можно автоматизировать процесс создания версий образов, а также обновлять существующие версии и создавать новые на основе существующих.
Вы также можете создать ресурс Коллекции вычислений Azure с помощью шаблонов. Существует несколько шаблонов быстрого запуска Azure: