Condividi tramite


New-AzCloudService

Creare o aggiornare un servizio cloud. Si noti che alcune proprietà possono essere impostate solo durante la creazione del servizio cloud.

Sintassi

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>]

Descrizione

Creare o aggiornare un servizio cloud. Si noti che alcune proprietà possono essere impostate solo durante la creazione del servizio cloud.

Esempio

Esempio 1: Creare un nuovo servizio cloud con un singolo ruolo

# 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

Il set di comandi precedente crea un servizio cloud con un singolo ruolo

Esempio 2: Creare un nuovo servizio cloud con un singolo ruolo e un'estensione 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

Il set di comandi precedente crea un servizio cloud con un singolo ruolo e un'estensione RDP

Esempio 3: Creare un nuovo servizio cloud con un singolo ruolo e un certificato dall'insieme di credenziali delle chiavi

# 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

Il set di comandi precedente crea un servizio cloud con un singolo ruolo e un certificato dall'insieme di credenziali delle chiavi.

Esempio 4: Creare un nuovo servizio cloud con più ruoli ed estensioni

# 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

Il set di comandi precedente crea un servizio cloud con un singolo ruolo e un certificato dall'insieme di credenziali delle chiavi.

Esempio 5: Creare un nuovo servizio cloud con file CsCfg, CsDef e Cspkg usando il set di parametri '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

Il set di comandi precedente crea un servizio cloud estraendo le informazioni NetworkProfile e RoleProfile da . CsCfg e . File CsDef.

Questi file forniranno anche informazioni osProfile insieme ai certificati dell'insieme di credenziali delle chiavi fornito nel parametro '-KeyVaultName'. Questo set di parametri carica anche . File CsPkg nell'account di archiviazione fornito.

Esempio 6: Creare un nuovo servizio cloud con i file CsCfg, CsDef e Cspkg usando il set di parametri '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                                         `

Il set di comandi precedente crea un servizio cloud estraendo le informazioni NetworkProfile e RoleProfile da . CsCfg e . File CsDef.

Questi file forniranno anche informazioni osProfile insieme ai certificati dell'insieme di credenziali delle chiavi fornito nel parametro '-KeyVaultName'.

Parametri

-AllowModelOverride

(Facoltativo) Indica se le proprietà dello SKU del ruolo (roleProfile.roles.sku) specificate nel modello/modello devono eseguire l'override rispettivamente del numero di istanze del ruolo e delle dimensioni della macchina virtuale specificate rispettivamente in .cscfg e .csdef. Il valore predefinito è false.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-AsJob

Eseguire il comando come processo

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Configuration

Specifica la configurazione del servizio XML (con estensione cscfg) per il servizio cloud.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ConfigurationFile

Specifica la configurazione del servizio XML (con estensione cscfg) per il servizio cloud.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ConfigurationUrl

Specifica un URL che fa riferimento al percorso della configurazione del servizio nel servizio BLOB. L'URL del pacchetto di servizio può essere l'URI della firma di accesso condiviso da qualsiasi account di archiviazione. Si tratta di una proprietà di sola scrittura e non viene restituita nelle chiamate GET.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Confirm

Richiede conferma prima di eseguire il cmdlet.

Tipo:SwitchParameter
Alias:cf
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-DefaultProfile

Il parametro DefaultProfile non è funzionale. Usare il parametro SubscriptionId quando disponibile se si esegue il cmdlet su una sottoscrizione diversa.

Tipo:PSObject
Alias:AzureRMContext, AzureCredential
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-DefinitionFile

Percorso del file con estensione csdef.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-DnsName

Nome dns da usare per la risorsa CloudService.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ExtensionProfile

Descrive un profilo di estensione del servizio cloud. Per costruire, vedere la sezione NOTES per le proprietà EXTENSIONPROFILE e creare una tabella hash.

Tipo:ICloudServiceExtensionProfile
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-KeyVaultName

Nome dell'insieme di credenziali delle chiavi da usare per la risorsa CloudService.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Location

Percorso della risorsa.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Name

Nome del servizio cloud.

Tipo:String
Alias:CloudServiceName
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-NetworkProfile

Profilo di rete per il servizio cloud. Per costruire, vedere la sezione NOTES per le proprietà NETWORKPROFILE e creare una tabella hash.

Tipo:ICloudServiceNetworkProfile
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-NoWait

Eseguire il comando in modo asincrono

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-OSProfile

Descrive il profilo del sistema operativo per il servizio cloud. Per costruire, vedere la sezione NOTES per le proprietà OSPROFILE e creare una tabella hash.

Tipo:ICloudServiceOSProfile
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-PackageFile

Percorso del file con estensione cspkg. Verrà caricato in un BLOB

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-PackageUrl

Specifica un URL che fa riferimento al percorso del pacchetto del servizio nel servizio BLOB. L'URL del pacchetto di servizio può essere l'URI della firma di accesso condiviso da qualsiasi account di archiviazione. Si tratta di una proprietà di sola scrittura e non viene restituita nelle chiamate GET.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ResourceGroupName

Nome del gruppo di risorse.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-RoleProfile

Descrive il profilo del ruolo per il servizio cloud. Per costruire, vedere la sezione NOTES per le proprietà ROLEPROFILE e creare una tabella hash.

Tipo:ICloudServiceRoleProfile
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-StartCloudService

(Facoltativo) Indica se avviare il servizio cloud subito dopo la creazione. Il valore predefinito è true. Se false, il modello di servizio viene ancora distribuito, ma il codice non viene eseguito immediatamente. Al contrario, il servizio è PoweredOff fino a quando non si chiama Start, al momento dell'avvio del servizio. Un servizio distribuito comporta comunque addebiti, anche se è spento.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-StorageAccount

Nome dell'account di archiviazione che archivierà il file del pacchetto.

Tipo:String
Posizione:Named
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-SubscriptionId

Credenziali di sottoscrizione che identificano in modo univoco la sottoscrizione di Microsoft Azure. L'ID sottoscrizione fa parte dell'URI per ogni chiamata al servizio.

Tipo:String
Posizione:Named
Valore predefinito:(Get-AzContext).Subscription.Id
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Tag

Tag di risorsa.

Tipo:Hashtable
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-UpgradeMode

Modalità di aggiornamento per il servizio cloud. Le istanze del ruolo vengono allocate ai domini di aggiornamento quando il servizio viene distribuito. Gli aggiornamenti possono essere avviati manualmente in ogni dominio di aggiornamento o avviati automaticamente in tutti i domini di aggiornamento. I valori possibili sono <br/><br/>Auto<br/><br/>Manual<br/><br/>Simultaneo<br/><br/>Se non specificato, il valore predefinito è Auto. Se impostato su Manuale, PUT UpdateDomain deve essere chiamato per applicare l'aggiornamento. Se impostato su Auto, l'aggiornamento viene applicato automaticamente a ogni dominio di aggiornamento in sequenza.

Tipo:CloudServiceUpgradeMode
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-WhatIf

Mostra cosa accadrebbe se il cmdlet viene eseguito. Il cmdlet non viene eseguito.

Tipo:SwitchParameter
Alias:wi
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Zone

Elenco della zona di disponibilità logica della risorsa. L'elenco deve contenere solo 1 zona in cui eseguire il provisioning del servizio cloud. Questo campo è facoltativo.

Tipo:String[]
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

Output

ICloudService