Поделиться через


New-AzCloudService

Создание или обновление облачной службы. Обратите внимание, что некоторые свойства можно задать только во время создания облачной службы.

Синтаксис

New-AzCloudService
   -Name <String>
   -ResourceGroupName <String>
   [-SubscriptionId <String>]
   -Location <String>
   [-AllowModelOverride]
   [-Configuration <String>]
   [-ConfigurationUrl <String>]
   [-ExtensionProfile <ICloudServiceExtensionProfile>]
   [-NetworkProfile <ICloudServiceNetworkProfile>]
   [-OSProfile <ICloudServiceOSProfile>]
   [-PackageUrl <String>]
   [-RoleProfile <ICloudServiceRoleProfile>]
   [-StartCloudService]
   [-Tag <Hashtable>]
   [-UpgradeMode <CloudServiceUpgradeMode>]
   [-Zone <String[]>]
   [-DefaultProfile <PSObject>]
   [-AsJob]
   [-NoWait]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzCloudService
   -Name <String>
   -ResourceGroupName <String>
   [-SubscriptionId <String>]
   -Location <String>
   [-ExtensionProfile <ICloudServiceExtensionProfile>]
   -PackageUrl <String>
   [-StartCloudService]
   [-Tag <Hashtable>]
   [-UpgradeMode <CloudServiceUpgradeMode>]
   -ConfigurationFile <String>
   -DefinitionFile <String>
   [-DnsName <String>]
   [-KeyVaultName <String>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzCloudService
   -Name <String>
   -ResourceGroupName <String>
   [-SubscriptionId <String>]
   -Location <String>
   [-ExtensionProfile <ICloudServiceExtensionProfile>]
   [-StartCloudService]
   [-Tag <Hashtable>]
   [-UpgradeMode <CloudServiceUpgradeMode>]
   -ConfigurationFile <String>
   -DefinitionFile <String>
   -PackageFile <String>
   -StorageAccount <String>
   [-DnsName <String>]
   [-KeyVaultName <String>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Описание

Создание или обновление облачной службы. Обратите внимание, что некоторые свойства можно задать только во время создания облачной службы.

Примеры

Пример 1. Создание облачной службы с одной ролью

# Create role profile object
$role = New-AzCloudServiceRoleProfilePropertiesObject -Name 'ContosoFrontend' -SkuName 'Standard_D1_v2' -SkuTier 'Standard' -SkuCapacity 2
$roleProfile = @{role = @($role)}

# Create network profile object
$publicIp = Get-AzPublicIpAddress -ResourceGroupName ContosOrg -Name ContosIp
$feIpConfig = New-AzCloudServiceLoadBalancerFrontendIPConfigurationObject -Name 'ContosoFe' -PublicIPAddressId $publicIp.Id
$loadBalancerConfig = New-AzCloudServiceLoadBalancerConfigurationObject -Name 'ContosoLB' -FrontendIPConfiguration $feIpConfig
$networkProfile = @{loadBalancerConfiguration = $loadBalancerConfig}

# Read Configuration File
$cscfgFile = "<Path to cscfg configuration file>"
$cscfgContent = Get-Content $cscfgFile | Out-String

# Create cloud service
$cloudService = New-AzCloudService                                              `
                          -Name ContosoCS                                               `
                          -ResourceGroupName ContosOrg                                  `
                          -Location EastUS                                              `
                          -PackageUrl "https://xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"    `
                          -Configuration $cscfgContent                                  `
                          -UpgradeMode 'Auto'                                           `
                          -RoleProfile $roleProfile                                     `
                          -NetworkProfile $networkProfile

Приведенный выше набор команд создает облачную службу с одной ролью

Пример 2. Создание облачной службы с одним ролем и расширением RDP

# Create role profile object
$role = New-AzCloudServiceRoleProfilePropertiesObject -Name 'ContosoFrontend' -SkuName 'Standard_D1_v2' -SkuTier 'Standard' -SkuCapacity 2
$roleProfile = @{role = @($role)}

# Create network profile object
$publicIp = Get-AzPublicIpAddress -ResourceGroupName ContosoOrg -Name ContosIp
$feIpConfig = New-AzCloudServiceLoadBalancerFrontendIPConfigurationObject -Name 'ContosoFe' -PublicIPAddressId $publicIp.Id
$loadBalancerConfig = New-AzCloudServiceLoadBalancerConfigurationObject -Name 'ContosoLB' -FrontendIPConfiguration $feIpConfig
$networkProfile = @{loadBalancerConfiguration = $loadBalancerConfig}

# Create RDP extension object
$credential = Get-Credential
$expiration = (Get-Date).AddYears(1)
$extension = New-AzCloudServiceRemoteDesktopExtensionObject -Name 'RDPExtension' -Credential $credential -Expiration $expiration -TypeHandlerVersion '1.2.1'
$extensionProfile = @{extension = @($extension)}

# Read Configuration File
$cscfgFile = "<Path to cscfg configuration file>"
$cscfgContent = Get-Content $cscfgFile | Out-String

# Create cloud service
$cloudService = New-AzCloudService                                              `
                          -Name ContosoCS                                               `
                          -ResourceGroupName ContosOrg                                  `
                          -Location EastUS                                              `
                          -PackageUrl "https://xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"    `
                          -Configuration $cscfgContent                                  `
                          -UpgradeMode 'Auto'                                           `
                          -RoleProfile $roleProfile                                     `
                          -NetworkProfile $networkProfile                               `
                          -ExtensionProfile $extensionProfile

Приведенный выше набор команд создает облачную службу с одним ролем и расширением RDP

Пример 3. Создание облачной службы с одной ролью и сертификатом из хранилища ключей

# Create role profile object
$role = New-AzCloudServiceRoleProfilePropertiesObject -Name 'ContosoFrontend' -SkuName 'Standard_D1_v2' -SkuTier 'Standard' -SkuCapacity 2
$roleProfile = @{role = @($role)}

# Create OS profile object
$keyVault = Get-AzKeyVault -ResourceGroupName ContosOrg -VaultName ContosKeyVault
$certificate=Get-AzKeyVaultCertificate -VaultName ContosKeyVault -Name ContosCert
$secretGroup = New-AzCloudServiceVaultSecretGroupObject -Id $keyVault.ResourceId -CertificateUrl $certificate.SecretId
$osProfile = @{secret = @($secretGroup)}

# Create network profile object
$publicIp = Get-AzPublicIpAddress -ResourceGroupName ContosOrg -Name ContosIp
$feIpConfig = New-AzCloudServiceLoadBalancerFrontendIPConfigurationObject -Name 'ContosoFe' -PublicIPAddressId $publicIp.Id
$loadBalancerConfig = New-AzCloudServiceLoadBalancerConfigurationObject -Name 'ContosoLB' -FrontendIPConfiguration $feIpConfig
$networkProfile = @{loadBalancerConfiguration = $loadBalancerConfig}

# Read Configuration File
$cscfgFile = "<Path to cscfg configuration file>"
$cscfgContent = Get-Content $cscfgFile | Out-String

# Create cloud service
$cloudService = New-AzCloudService                                              `
                          -Name ContosoCS                                               `
                          -ResourceGroupName ContosOrg                                  `
                          -Location EastUS                                              `
                          -PackageUrl "https://xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"    `
                          -Configuration $cscfgContent                                  `
                          -UpgradeMode 'Auto'                                           `
                          -RoleProfile $roleProfile                                     `
                          -NetworkProfile $networkProfile                               `
                          -OSProfile $osProfile

Приведенный выше набор команд создает облачную службу с одной ролью и сертификатом из хранилища ключей.

Пример 4. Создание облачной службы с несколькими ролями и расширениями

# Create role profile object
$role1 = New-AzCloudServiceRoleProfilePropertiesObject -Name 'ContosoFrontend' -SkuName 'Standard_D1_v2' -SkuTier 'Standard' -SkuCapacity 2
$role2 = New-AzCloudServiceRoleProfilePropertiesObject -Name 'ContosoBackend' -SkuName 'Standard_D1_v2' -SkuTier 'Standard' -SkuCapacity 2
$roleProfile = @{role = @($role1, $role2)}

# Create network profile object
$publicIp = Get-AzPublicIpAddress -ResourceGroupName ContosOrg -Name ContosIp
$feIpConfig = New-AzCloudServiceLoadBalancerFrontendIPConfigurationObject -Name 'ContosoFe' -PublicIPAddressId $publicIp.Id
$loadBalancerConfig = New-AzCloudServiceLoadBalancerConfigurationObject -Name 'ContosoLB' -FrontendIPConfiguration $feIpConfig
$networkProfile = @{loadBalancerConfiguration = $loadBalancerConfig}

# Create RDP extension object
$credential = Get-Credential
$expiration = (Get-Date).AddYears(1)
$rdpExtension = New-AzCloudServiceRemoteDesktopExtensionObject -Name 'RDPExtension' -Credential $credential -Expiration $expiration -TypeHandlerVersion '1.2.1'

# Create Geneva extension object
$genevaExtension = New-AzCloudServiceExtensionObject -Name GenevaExtension -Publisher Microsoft.Azure.Geneva -Type GenevaMonitoringPaaS -TypeHandlerVersion "2.14.0.2"
$extensionProfile = @{extension = @($rdpExtension, $genevaExtension)}

# Add tags
$tag=@{"Owner" = "Contoso"}

# Read Configuration File
$cscfgFile = "<Path to cscfg configuration file>"
$cscfgContent = Get-Content $cscfgFile | Out-String

# Create cloud service
$cloudService = New-AzCloudService                                              `
                          -Name ContosoCS                                               `
                          -ResourceGroupName ContosOrg                                  `
                          -Location EastUS                                              `
                          -PackageUrl "https://xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"    `
                          -Configuration $cscfgContent                                  `
                          -UpgradeMode 'Auto'                                           `
                          -RoleProfile $roleProfile                                     `
                          -NetworkProfile $networkProfile                               `
                          -ExtensionProfile $extensionProfile                           `
                          -Tag $tag

Приведенный выше набор команд создает облачную службу с одной ролью и сертификатом из хранилища ключей.

Пример 5. Создание облачной службы с помощью csCfg, CsDef и Cspkg-файлов с помощью набора параметров quickCreateParameterSetWithStorage.

# Set up a storage account if you have not
$storageAccount = New-AzStorageAccount -ResourceGroupName ContosoOrg -Name ContosoStorAcc -Location "East US" -SkuName "Standard_RAGRS" -Kind "StorageV2"

# Create cloud service
$cloudService = New-AzCloudService                                              `
                          -Name ContosoCS                                               `
                          -ResourceGroupName ContosOrg                                  `
                          -Location EastUS                                              `
                          -ConfigurationFile C:\files\CS.cscfg                          `
                          -DefinitionFile C:\files\CS.csdef                             `
                          -PackageFile C:\CS.cspkg                                      `
                          -StorageAccount ContosoStorAcc                                `
                          -KeyVaultName ContosoKV

Приведенный выше набор команд создает облачную службу путем извлечения сведений NetworkProfile и RoleProfile из . CsCfg и . CsDef-файлы.

Эти файлы также предоставляют сведения OSProfile вместе с сертификатами из keyvault, предоставленного в параметре KeyVaultName. Этот набор параметров также отправляет объект . CsPkg-файл для предоставленного хранилищаAccount.

Пример 6. Создание облачной службы с помощью csCfg, CsDef и Cspkg-файлов с помощью набора параметров quickCreateParameterSetWithoutStorage.

# getting Package URL
$tokenStartTime = Get-Date 
$tokenEndTime = $tokenStartTime.AddYears(1) 
$storAcc = Get-AzStorageAccount -ResourceGroupName ContosoOrg -Name ContosoStorAcc
$csPkgBlob = Get-AzStorageBlob -Container Contoso-Container -Blob ContosoBlob.cspkg -Context $storAcc.Context
$csPkgToken = New-AzStorageBlobSASToken -Container Contoso-Container -Blob ContosoBlob.cspkg -Permission rwd -StartTime $tokenStartTime -ExpiryTime $tokenEndTime -Context $storAcc.Context
$cspkgUrl = $csPkgBlob.ICloudBlob.Uri.AbsoluteUri + $csPkgToken 

# Create cloud service
$cloudService = New-AzCloudService                                              `
                          -Name ContosoCS                                               `
                          -ResourceGroupName ContosOrg                                  `
                          -Location EastUS                                              `
                          -ConfigurationFile C:\files\CS.cscfg                          `
                          -DefinitionFile C:\files\CS.csdef                             `
                          -packageUrl $cspkgUrl                                         `

Приведенный выше набор команд создает облачную службу путем извлечения сведений NetworkProfile и RoleProfile из . CsCfg и . CsDef-файлы.

Эти файлы также предоставляют сведения OSProfile вместе с сертификатами из keyvault, предоставленного в параметре KeyVaultName.

Параметры

-AllowModelOverride

(Необязательно) Указывает, должны ли свойства sku роли (roleProfile.role.sku), указанные в модели или шаблоне, переопределить количество экземпляров ролей и размер виртуальной машины, указанные в CSCFG и CSDEF соответственно. Значение по умолчанию — false.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-AsJob

Выполнение команды в качестве задания

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Configuration

Указывает конфигурацию СЛУЖБЫ XML (CSCFG) для облачной службы.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ConfigurationFile

Указывает конфигурацию СЛУЖБЫ XML (CSCFG) для облачной службы.

Тип:String
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ConfigurationUrl

Указывает URL-адрес, ссылающийся на расположение конфигурации службы в службе BLOB-объектов. URL-адрес пакета службы может быть url-адресом URI подписанного URL-адреса (SAS) из любой учетной записи хранения. Это свойство только для записи и не возвращается в вызовах GET.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Confirm

Запрашивает подтверждение перед запуском командлета.

Тип:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-DefaultProfile

Параметр DefaultProfile не работает. Используйте параметр SubscriptionId, если он доступен при выполнении командлета в другой подписке.

Тип:PSObject
Aliases:AzureRMContext, AzureCredential
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-DefinitionFile

Путь к CSDEF-файлу.

Тип:String
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-DnsName

Имя Dns, используемое для ресурса CloudService.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ExtensionProfile

Описывает профиль расширения облачной службы. Сведения о создании см. в разделе NOTES для свойств EXTENSIONPROFILE и создании хэш-таблицы.

Тип:ICloudServiceExtensionProfile
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-KeyVaultName

Имя keyVault, используемого для ресурса CloudService.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Location

Расположение ресурса.

Тип:String
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Name

Имя облачной службы.

Тип:String
Aliases:CloudServiceName
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-NetworkProfile

Сетевой профиль облачной службы. Сведения о создании см. в разделе NOTES для свойств NETWORKPROFILE и создании хэш-таблицы.

Тип:ICloudServiceNetworkProfile
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-NoWait

Асинхронное выполнение команды

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-OSProfile

Описывает профиль ОС для облачной службы. Сведения о создании см. в разделе NOTES для свойств OSPROFILE и создании хэш-таблицы.

Тип:ICloudServiceOSProfile
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-PackageFile

Путь к CSPKG-файлу. Он будет отправлен в большой двоичный объект

Тип:String
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-PackageUrl

Указывает URL-адрес, ссылающийся на расположение пакета службы в службе BLOB-объектов. URL-адрес пакета службы может быть url-адресом URI подписанного URL-адреса (SAS) из любой учетной записи хранения. Это свойство только для записи и не возвращается в вызовах GET.

Тип:String
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-ResourceGroupName

Имя группы ресурсов.

Тип:String
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-RoleProfile

Описывает профиль роли облачной службы. Сведения о создании см. в разделе NOTES для свойств ROLEPROFILE и создании хэш-таблицы.

Тип:ICloudServiceRoleProfile
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-StartCloudService

(Необязательно) Указывает, следует ли запускать облачную службу сразу после ее создания. Значение по умолчанию — true. Если значение false, модель службы по-прежнему развертывается, но код не выполняется немедленно. Вместо этого служба poweredOff будет запущена до вызова Start, в то время как служба будет запущена. Развернутая служба по-прежнему взимает плату, даже если она отключена.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-StorageAccount

Имя учетной записи хранения, которая будет хранить файл пакета.

Тип:String
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-SubscriptionId

Учетные данные подписки, которые однозначно определяют подписку Microsoft Azure. Идентификатор подписки входит в состав URI для каждого вызова службы.

Тип:String
Position:Named
Default value:(Get-AzContext).Subscription.Id
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Tag

Теги ресурсов.

Тип:Hashtable
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-UpgradeMode

Режим обновления облачной службы. Экземпляры ролей выделяются для обновления доменов при развертывании службы. Обновления можно инициировать вручную в каждом домене обновления или автоматически инициировать во всех доменах обновления. Возможные значения: <br /><br />Auto<br /><br />Manual<br /><br />Одновременный<br /><br />Если не указано, значение по умолчанию — Auto. Если задано значение "Вручную", для применения обновления необходимо вызвать PUT UpdateDomain. Если задано значение "Авто", обновление автоматически применяется к каждому домену обновления в последовательности.

Тип:CloudServiceUpgradeMode
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-WhatIf

Показывает, что произойдет, если командлет выполняется. Командлет не выполняется.

Тип:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Zone

Список логической зоны доступности ресурса. Список должен содержать только 1 зону, в которой должна быть подготовлена облачная служба. Это поле является необязательным.

Тип:String[]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

Выходные данные

ICloudService