Partager via


New-AzCloudService

Créez ou mettez à jour un service cloud. Notez que certaines propriétés peuvent être définies uniquement lors de la création du service cloud.

Syntaxe

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

Description

Créez ou mettez à jour un service cloud. Notez que certaines propriétés peuvent être définies uniquement lors de la création du service cloud.

Exemples

Exemple 1 : Créer un service cloud avec un rôle unique

# 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

L’ensemble de commandes ci-dessus crée un service cloud avec un seul rôle

Exemple 2 : Créer un service cloud avec un rôle unique et une extension 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

Au-dessus de l’ensemble de commandes crée un service cloud avec un rôle unique et une extension RDP

Exemple 3 : Créer un service cloud avec un seul rôle et un certificat à partir du coffre de clés

# 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

L’ensemble de commandes ci-dessus crée un service cloud avec un seul rôle et un certificat à partir du coffre de clés.

Exemple 4 : Créer un service cloud avec plusieurs rôles et extensions

# 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

L’ensemble de commandes ci-dessus crée un service cloud avec un seul rôle et un certificat à partir du coffre de clés.

Exemple 5 : Créez un service cloud avec des fichiers CsCfg, CsDef et Cspkg à l’aide du jeu de paramètres « 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

L’ensemble de commandes ci-dessus crée un service cloud en extrayant les informations NetworkProfile et RoleProfile à partir du . CsCfg et . Fichiers CsDef.

Ces fichiers fournissent également des informations OSProfile ainsi que les certificats du coffre de clés fourni dans le paramètre « -KeyVaultName ». Ce jeu de paramètres charge également le . Fichier CsPkg fourni dans storageAccount fourni.

Exemple 6 : Créez un service cloud avec des fichiers CsCfg, CsDef et Cspkg à l’aide du jeu de paramètres « 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                                         `

L’ensemble de commandes ci-dessus crée un service cloud en extrayant les informations NetworkProfile et RoleProfile à partir du . CsCfg et . Fichiers CsDef.

Ces fichiers fournissent également des informations OSProfile ainsi que les certificats du coffre de clés fourni dans le paramètre « -KeyVaultName ».

Paramètres

-AllowModelOverride

(Facultatif) Indique si les propriétés de la référence sku de rôle (roleProfile.roles.sku) spécifiées dans le modèle/modèle doivent remplacer respectivement le nombre d’instances de rôle et la taille de machine virtuelle spécifiées dans .cscfg et .csdef. La valeur par défaut est false.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-AsJob

Exécuter la commande en tant que travail

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Configuration

Spécifie la configuration du service XML (.cscfg) pour le service cloud.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ConfigurationFile

Spécifie la configuration du service XML (.cscfg) pour le service cloud.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ConfigurationUrl

Spécifie une URL qui fait référence à l’emplacement de la configuration du service dans le service Blob. L’URL du package de service peut être un URI de signature d’accès partagé (SAP) à partir de n’importe quel compte de stockage. Il s’agit d’une propriété en écriture seule et n’est pas retournée dans les appels GET.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Confirm

Vous invite à confirmer avant d’exécuter l’applet de commande.

Type:SwitchParameter
Alias:cf
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DefaultProfile

Le paramètre DefaultProfile n’est pas fonctionnel. Utilisez le paramètre SubscriptionId lorsqu’il est disponible si vous exécutez l’applet de commande sur un autre abonnement.

Type:PSObject
Alias:AzureRMContext, AzureCredential
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DefinitionFile

Chemin d’accès au fichier .csdef.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DnsName

Nom du dns à utiliser pour la ressource CloudService.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ExtensionProfile

Décrit un profil d’extension de service cloud. Pour construire, consultez la section NOTES pour les propriétés EXTENSIONPROFILE et créer une table de hachage.

Type:ICloudServiceExtensionProfile
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-KeyVaultName

Nom du coffre de clés à utiliser pour la ressource CloudService.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Location

Emplacement des ressources.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Name

Nom du service cloud.

Type:String
Alias:CloudServiceName
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-NetworkProfile

Profil réseau pour le service cloud. Pour construire, consultez la section NOTES pour les propriétés NETWORKPROFILE et créer une table de hachage.

Type:ICloudServiceNetworkProfile
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-NoWait

Exécuter la commande de manière asynchrone

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-OSProfile

Décrit le profil du système d’exploitation pour le service cloud. Pour construire, consultez la section NOTES pour les propriétés OSPROFILE et créez une table de hachage.

Type:ICloudServiceOSProfile
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-PackageFile

Chemin d’accès au fichier .cspkg. Il sera chargé dans un objet blob

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-PackageUrl

Spécifie une URL qui fait référence à l’emplacement du package de service dans le service Blob. L’URL du package de service peut être un URI de signature d’accès partagé (SAP) à partir de n’importe quel compte de stockage. Il s’agit d’une propriété en écriture seule et n’est pas retournée dans les appels GET.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ResourceGroupName

Nom du groupe de ressources.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-RoleProfile

Décrit le profil de rôle pour le service cloud. Pour construire, consultez la section NOTES pour les propriétés ROLEPROFILE et créez une table de hachage.

Type:ICloudServiceRoleProfile
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-StartCloudService

(Facultatif) Indique s’il faut démarrer le service cloud immédiatement après sa création. La valeur par défaut est true. Si la valeur est false, le modèle de service est toujours déployé, mais le code n’est pas exécuté immédiatement. Au lieu de cela, le service est PoweredOff jusqu’à ce que vous appeliez Démarrer, au moment où le service sera démarré. Un service déployé entraîne toujours des frais, même s’il est alimenté.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-StorageAccount

Nom du compte de stockage qui stocke le fichier package.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-SubscriptionId

Informations d’identification d’abonnement qui identifient de manière unique l’abonnement Microsoft Azure. L’ID d’abonnement fait partie de l’URI de chaque appel de service.

Type:String
Position:Named
Valeur par défaut:(Get-AzContext).Subscription.Id
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Tag

Balises de ressource.

Type:Hashtable
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-UpgradeMode

Mode de mise à jour pour le service cloud. Les instances de rôle sont allouées aux domaines de mise à jour lorsque le service est déployé. Les mises à jour peuvent être lancées manuellement dans chaque domaine de mise à jour ou lancées automatiquement dans tous les domaines de mise à jour. Les valeurs possibles sont <br /><br />br automatique<br /><br />manuel<br /><br />br simultané<br /><br />Si ce n’est pas spécifié, la valeur par défaut est Auto. Si la valeur est Manuelle, PUT UpdateDomain doit être appelée pour appliquer la mise à jour. Si la valeur est Automatique, la mise à jour est automatiquement appliquée à chaque domaine de mise à jour en séquence.

Type:CloudServiceUpgradeMode
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-WhatIf

Affiche ce qui se passerait si l’applet de commande s’exécute. L’applet de commande n’est pas exécutée.

Type:SwitchParameter
Alias:wi
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Zone

Liste de la zone de disponibilité logique de la ressource. La liste ne doit contenir que 1 zone où le service cloud doit être approvisionné. Ce champ est facultatif.

Type:String[]
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

Sorties

ICloudService