Åsidosätt SKU-inställningar i .cscfg- och .csdef-filer för Cloud Services (extended-support)
Den här artikeln beskriver hur du uppdaterar rollstorleken och antalet instanser i Azure Cloud Services med hjälp av egenskapen allowModelOverride . När du använder den här egenskapen behöver du inte uppdatera tjänstkonfigurationsfilerna (.cscfg) och tjänstdefinitionsfilerna (.csdef). Så du kan skala upp, ned, i eller ut molntjänsten utan att packa om och distribuera om den.
Ange egenskapen allowModelOverride
Du kan ange egenskapen allowModelOverride till true
eller false
.
När allowModelOverride är inställt på
true
uppdaterar ett API-anrop rollstorleken och antalet instanser för molntjänsten utan att verifiera värdena med .csdef- och .cscfg-filerna.Kommentar
.cscfg-filen uppdateras för att återspegla antalet rollinstanser. .csdef-filen (inbäddad i .cspkg) behåller de gamla värdena.
När allowModelOverride har angetts till
false
utlöser ett API-anrop ett fel om värdena för rollstorlek och antal instanser inte matchar värdena i .csdef- respektive .cscfg-filerna.
Standardvärdet är false
. Om egenskapen återställs till false
efter att ha angetts till true
verifieras .csdef- och .cscfg-filerna igen.
Följande exempel visar hur du anger egenskapen allowModelOverride med hjälp av en ARM-mall (Azure Resource Manager), PowerShell eller SDK.
ARM-mall
Om du anger egenskapen allowModelOverride till true
här uppdateras molntjänsten med rollegenskaperna som definierats i roleProfile
avsnittet:
"properties": {
"packageUrl": "[parameters('packageSasUri')]",
"configurationUrl": "[parameters('configurationSasUri')]",
"upgradeMode": "[parameters('upgradeMode')]",
"allowModelOverride": true,
"roleProfile": {
"roles": [
{
"name": "WebRole1",
"sku": {
"name": "Standard_D1_v2",
"capacity": "1"
}
},
{
"name": "WorkerRole1",
"sku": {
"name": "Standard_D1_v2",
"capacity": "1"
}
}
]
},
PowerShell
Om du ställer in växeln AllowModelOverride
på den nya New-AzCloudService
cmdleten uppdateras molntjänsten med de SKU-egenskaper som definierats i rollprofilen:
New-AzCloudService `
-Name "ContosoCS" `
-ResourceGroupName "ContosOrg" `
-Location "East US" `
-AllowModelOverride `
-PackageUrl $cspkgUrl `
-ConfigurationUrl $cscfgUrl `
-UpgradeMode 'Auto' `
-RoleProfile $roleProfile `
-NetworkProfile $networkProfile `
-ExtensionProfile $extensionProfile `
-OSProfile $osProfile `
-Tag $tag
SDK
Om du anger variabeln AllowModelOverride
till true
uppdateras molntjänsten med de SKU-egenskaper som definierats i rollprofilen:
CloudService cloudService = new CloudService
{
Properties = new CloudServiceProperties
{
RoleProfile = cloudServiceRoleProfile
Configuration = < Add Cscfg xml content here>
PackageUrl = <Add cspkg SAS url here>,
ExtensionProfile = cloudServiceExtensionProfile,
OsProfile= cloudServiceOsProfile,
NetworkProfile = cloudServiceNetworkProfile,
UpgradeMode = 'Auto',
AllowModelOverride = true
},
Location = m_location
};
CloudService createOrUpdateResponse = m_CrpClient.CloudServices.CreateOrUpdate("ContosOrg", "ContosoCS", cloudService);
Azure Portal
Azure-portalen tillåter inte att du använder egenskapen allowModelOverride för att åsidosätta rollstorleken och antalet instanser i csdef- och .cscfg-filerna.
Nästa steg
- Visa distributionskraven för Cloud Services (utökad support).
- Visa vanliga frågor och svar om Cloud Services (utökad support).