L'applicazione vm è un tipo di risorsa nella raccolta di calcolo di Azure che semplifica la gestione, la condivisione e la distribuzione globale delle applicazioni per le macchine virtuali.
Altre informazioni sull'applicazione vm
Verificare che l'account di archiviazione abbia accesso a livello pubblico o usare un URI di firma di accesso condiviso con privilegi di lettura, in quanto altri livelli di restrizione non riescono le distribuzioni. È possibile usare Storage Explorer per creare rapidamente un URI di firma di accesso condiviso, se non ne è già disponibile uno.
Se si usa PowerShell, è necessario usare la versione 3.11.0 del modulo Az.Storage.
- Passare alla portale di Azure, quindi cercare e selezionare Raccolta di calcolo di Azure.
- Selezionare la raccolta da usare nell'elenco.
- Nella pagina della raccolta selezionare Aggiungi nella parte superiore della pagina e quindi selezionare Definizione dell'applicazione vm dall'elenco a discesa. Verrà visualizzata la pagina Crea una definizione di applicazione vm.
-
Nella scheda Informazioni di base immettere un nome per l'applicazione e scegliere se l'applicazione è per le macchine virtuali che eseguono Linux o Windows.
- Selezionare la scheda Opzioni di pubblicazione se si vuole specificare una delle impostazioni facoltative seguenti per la definizione dell'applicazione vm:
- Descrizione della definizione dell'applicazione vm.
- Data di scadenza
- Collegamento a un contratto di licenza con l'utente finale
- URI di un'informativa sulla privacy
- URI per le note sulla versione
- Al termine, selezionare Rivedi e crea.
- Al termine della convalida, selezionare Crea per distribuire la definizione.
- Una volta completata la distribuzione, selezionare Vai alla risorsa.
- Nella pagina dell'applicazione selezionare Crea una versione dell'applicazione vm. Verrà visualizzata la pagina Crea una versione dell'applicazione vm.
- Immettere un numero di versione come 1.0.0.
- Selezionare l'area in cui vengono caricati i pacchetti dell'applicazione.
- In Pacchetto dell'applicazione di origine selezionare Sfoglia. Selezionare l'account di archiviazione, quindi il contenitore in cui si trova il pacchetto. Selezionare il pacchetto dall'elenco e quindi selezionare Seleziona al termine. In alternativa, è possibile incollare l'URI di firma di accesso condiviso in questo campo, se preferito.
- Specificare lo "Script di installazione". È anche possibile specificare lo script di disinstallazione e lo script di aggiornamento. Per informazioni su come creare gli script, vedere Panoramica.
- Se si dispone di un file di configurazione predefinito caricato in un account di archiviazione, è possibile selezionarlo in Configurazione predefinita.
- Selezionare Escludi dalla versione più recente se non si vuole che questa versione venga visualizzata come versione più recente quando si crea una macchina virtuale.
- Per Data di fine vita scegliere una data futura per tenere traccia del momento in cui questa versione deve essere ritirata. Non viene eliminato o rimosso automaticamente, ma solo per il proprio rilevamento.
- Per replicare questa versione in altre aree, selezionare la scheda Replica , aggiungere altre aree e apportare modifiche al numero di repliche per area. L'area originale in cui è stata creata la versione deve trovarsi nell'elenco e non può essere rimossa.
- Al termine delle modifiche, selezionare Rivedi e crea nella parte inferiore della pagina.
- Quando la convalida viene visualizzata come passata, selezionare Crea per distribuire la versione dell'applicazione vm.
Creare la definizione dell'applicazione vm usando New-AzGalleryApplication
. In questo esempio viene creata un'app Linux denominata myApp nella raccolta di calcolo di Azure myGallery e nel gruppo di risorse myGallery . Sostituire i valori per le variabili in base alle esigenze.
$galleryName = "myGallery"
$rgName = "myResourceGroup"
$applicationName = "myApp"
$description = "Backend Linux application for finance."
New-AzGalleryApplication `
-ResourceGroupName $rgName `
-GalleryName $galleryName `
-Location "East US" `
-Name $applicationName `
-SupportedOSType Linux `
-Description $description
Creare una versione dell'applicazione vm usando New-AzGalleryApplicationVersion
. I caratteri consentiti per la versione sono numeri e punti. I numeri devono essere compresi nell'intervallo di un valore Integer a 32 bit. Formato: VersionePrincipale.VersioneSecondaria.Patch.
In questo esempio viene creato il numero di versione 1.0.0. Sostituire i valori delle variabili in base alle esigenze.
$galleryName = "myGallery"
$rgName = "myResourceGroup"
$applicationName = "myApp"
$version = "1.0.0"
New-AzGalleryApplicationVersion `
-ResourceGroupName $rgName `
-GalleryName $galleryName `
-GalleryApplicationName $applicationName `
-Name $version `
-PackageFileLink "https://<storage account name>.blob.core.windows.net/<container name>/<filename>" `
-DefaultConfigFileLink "https://<storage account name>.blob.core.windows.net/<container name>/<filename>" `
-Location "East US" `
-Install "mv myApp .\myApp\myApp" `
-Remove "rm .\myApp\myApp" `
Le applicazioni vm richiedono l'interfaccia della riga di comando di Azure versione 2.30.0 o successiva.
Creare la definizione dell'applicazione vm usando 'az sig gallery-application create'. In questo esempio viene creata una definizione di applicazione vm denominata myApp per macchine virtuali basate su Linux.
az sig gallery-application create \
--application-name myApp \
--gallery-name myGallery \
--resource-group myResourceGroup \
--os-type Linux \
--location "East US"
Creare una versione dell'applicazione vm usando 'az sig gallery-application version create'. I caratteri consentiti per la versione sono numeri e punti. I numeri devono essere compresi nell'intervallo di un valore Integer a 32 bit. Formato: VersionePrincipale.VersioneSecondaria.Patch.
Sostituire i valori dei parametri con i propri.
az sig gallery-application version create \
--version-name 1.0.0 \
--application-name myApp \
--gallery-name myGallery \
--location "East US" \
--resource-group myResourceGroup \
--package-file-link "https://<storage account name>.blob.core.windows.net/<container name>/<filename>" \
--install-command "mv myApp .\myApp\myApp" \
--remove-command "rm .\myApp\myApp" \
--update-command "mv myApp .\myApp\myApp" \
--default-configuration-file-link "https://<storage account name>.blob.core.windows.net/<container name>/<filename>"\
Creare la definizione dell'applicazione vm usando l'API dell'applicazione della raccolta 'Create Gallery'
PUT
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/applications/{applicationName}?api-version=2024-03-03
{
"location": "West US",
"name": "myApp",
"properties": {
"supportedOSType": "Windows | Linux",
"endOfLifeDate": "2020-01-01",
"description": "Description of the App",
"eula": "Link to End-User License Agreement (EULA)",
"privacyStatementUri": "Link to privacy statement for the application",
"releaseNoteUri": "Link to release notes for the application"
}
}
Nome campo |
Descrizione |
Limiti |
nome |
Nome univoco per l'applicazione VM all'interno della galleria. |
Lunghezza massima di 117 caratteri. I caratteri consentiti sono lettere maiuscole o minuscole, cifre, trattini(-), punto (.), carattere di sottolineatura (_). Nomi non consentiti per terminare con period(.). |
tipoOSsupportato |
Definire il tipo di sistema operativo supportato. |
"Windows" o "Linux" |
data di fine vita |
Data di fine vita futura per l'applicazione. La data è solo per riferimento e non viene applicata. |
Data futura valida |
descrizione |
Facoltativo. Descrizione dell'applicazione. |
|
Eula |
Facoltativo. Riferimento al Contratto di Licenza End-User (EULA). |
|
privacyStatementUri |
Facoltativo. Riferimento all'informativa sulla privacy per l'applicazione. |
|
releaseNoteUri |
Facoltativo. Riferimento alle note sulla versione per l'app. |
|
Creare una versione dell'applicazione VM usando l'API di creazione della versione dell'applicazione della galleria.
PUT
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/applications/{applicationName}/versions/{versionName}?api-version=2024-03-03
{
"location": "$location",
"properties": {
"publishingProfile": {
"source": {
"mediaLink": "$mediaLink",
"defaultConfigurationLink": "$configLink"
},
"manageActions": {
"install": "echo installed",
"remove": "echo removed",
"update": "echo update"
},
"targetRegions": [
{
"name": "West US",
"regionalReplicaCount": 1
},
{
"name": "East US"
}
]
"endofLifeDate": "datetime",
"replicaCount": 1,
"excludeFromLatest": false,
"storageAccountType": "PremiumV2_LRS | Premium_LRS | Standard_LRS | Standard_ZRS"
"safetyProfile": {
"allowDeletionOfReplicatedLocations": false
}
"settings": {
"scriptBehaviorAfterReboot": "None | Rerun",
"configFileName": "$appConfigFileName",
"packageFileName": "$appPackageFileName"
}
}
}
Nome campo |
Descrizione |
Limiti |
luogo |
Percorso di origine per la versione dell'applicazione della macchina virtuale. |
Area di Azure valida |
mediaLink |
URL contenente il pacchetto della versione dell'applicazione. |
URL di archiviazione valido ed esistente |
LinkConfigurazionePredefinita |
Facoltativo. URL contenente la configurazione predefinita, che può essere sottoposta a override in fase di distribuzione. |
URL di archiviazione valido ed esistente |
Installa |
Comando per installare l'applicazione. |
Comando valido per il sistema operativo specificato |
Rimuovi |
Comando per rimuovere l'applicazione. |
Comando valido per il sistema operativo specificato |
Aggiornamento |
Facoltativo. Comando per aggiornare l'applicazione. Se non specificato e è necessario un aggiornamento, la versione precedente viene rimossa e quella nuova installata. |
Comando valido per il sistema operativo specificato |
targetRegioni/nome |
Nome di un'area in cui eseguire la replica. |
Convalidare l'area di Azure |
regioniDiDestinazione/numeroDiReplicheRegionali |
Facoltativo. Numero di repliche nell'area da creare. Assume il valore predefinito 1. |
Intero compreso tra 1 e 3 inclusi |
replicaCount |
Facoltativo. Definisce il numero di repliche in ogni area. Ha effetto se regionalReplicaCount non è definito. |
Intero compreso tra 1 e 3 inclusi |
data di fine vita |
Data di fine vita futura per la versione dell'applicazione. Questa proprietà è solo per il riferimento del cliente e non viene applicata. |
Data futura valida |
tipoDiAccountDiArchiviazione |
Facoltativo. Tipo di account di archiviazione da usare in ogni area per l'archiviazione del pacchetto dell'applicazione. Il valore predefinito è Standard_LRS. |
Questa proprietà non è aggiornabile. |
consentiEliminazioneDiPosizioniReplicate |
Facoltativo. Indica se è consentita o meno la rimozione della versione dell'immagine della raccolta dalle aree replicate. |
|
impostazioni/comportamentoScriptDopoRiavvio |
Facoltativo. Azione da eseguire per l'installazione, l'aggiornamento o la rimozione dell'applicazione galleria dopo il riavvio della macchina virtuale. |
|
Impostazioni/nomeFileConfigurazione |
Facoltativo. Nome da assegnare al file del pacchetto scaricato nella macchina virtuale. Se non specificato, il file del pacchetto avrà lo stesso nome dell'applicazione Gallery. |
Questo è limitato a 4.096 caratteri. |
impostazioni/nomeFilePacchetto |
Facoltativo. Nome per assegnare il file di configurazione scaricato nella macchina virtuale. Se non specificato, il file di configurazione viene denominato come nome dell'applicazione della raccolta seguito da "_config". |
Questo è limitato a 4.096 caratteri. |
È ora possibile creare una macchina virtuale e distribuirla usando il portale. È sufficiente creare la macchina virtuale come di consueto e nella scheda Avanzate scegliere Selezionare un'applicazione vm da installare.
Selezionare l'applicazione vm dall'elenco e quindi selezionare Salva nella parte inferiore della pagina.
Se sono presenti più applicazioni di macchine virtuali da installare, è possibile impostare di nuovo l'ordine di installazione per ogni applicazione vm nella scheda Avanzate.
È anche possibile distribuire l'applicazione vm in macchine virtuali attualmente in esecuzione. Selezionare l'opzione Estensioni e applicazioni in Impostazioni nel menu a sinistra quando si visualizzano i dettagli della macchina virtuale nel portale.
Scegliere Applicazioni vm e quindi Selezionare Aggiungi applicazione per aggiungere l'applicazione vm.
Selezionare l'applicazione vm dall'elenco e quindi selezionare Salva nella parte inferiore della pagina.
Impostare un'applicazione vm su una macchina virtuale esistente usando "az vm application set" e sostituire i valori dei parametri con i propri.
az vm application set \
--resource-group myResourceGroup \
--name myVM \
--app-version-ids /subscriptions/{subID}/resourceGroups/MyResourceGroup/providers/Microsoft.Compute/galleries/myGallery/applications/myApp/versions/1.0.0 \
--treat-deployment-as-failure true
Per impostare più applicazioni in una macchina virtuale:
az vm application set \
--resource-group myResourceGroup \
--name myVM \
--app-version-ids /subscriptions/{subId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGallery/applications/myApp/versions/1.0.0 /subscriptions/{subId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGallery/applications/myApp2/versions/1.0.1 \
--treat-deployment-as-failure true true
Per aggiungere un'applicazione a un set di scalabilità di macchine virtuali, usare 'az vmss application set':
az vmss application set \
--resource-group myResourceGroup \
--name myVmss \
--app-version-ids /subscriptions/{subId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGallery/applications/myApp/versions/1.0.0 \
--treat-deployment-as-failure true
Per aggiungere più applicazioni a un set di scalabilità di macchine virtuali:
az vmss application set \
--resource-group myResourceGroup \
--name myVmss
--app-version-ids /subscriptions/{subId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGallery/applications/myApp/versions/1.0.0 /subscriptions/{subId}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/galleries/myGallery/applications/myApp2/versions/1.0.0 \
--treat-deployment-as-failure true
Per aggiungere l'applicazione a una macchina virtuale esistente, ottenere la versione dell'applicazione e usarla per ottenere l'ID versione dell'applicazione vm. Usare l'ID per aggiungere l'applicazione alla configurazione della macchina virtuale.
$galleryName = "myGallery"
$rgName = "myResourceGroup"
$applicationName = "myApp"
$version = "1.0.0"
$vmName = "myVM"
$vm = Get-AzVM -ResourceGroupName $rgname -Name $vmName
$appVersion = Get-AzGalleryApplicationVersion `
-GalleryApplicationName $applicationName `
-GalleryName $galleryName `
-Name $version `
-ResourceGroupName $rgName
$packageId = $appVersion.Id
$app = New-AzVmGalleryApplication -PackageReferenceId $packageId
Add-AzVmGalleryApplication -VM $vm -GalleryApplication $app -TreatFailureAsDeploymentFailure true
Update-AzVM -ResourceGroupName $rgName -VM $vm
Per aggiungere l'applicazione a un insieme di scalabilità per macchine virtuali:
$vmss = Get-AzVmss -ResourceGroupName $rgname -Name $vmssName
$appVersion = Get-AzGalleryApplicationVersion `
-GalleryApplicationName $applicationName `
-GalleryName $galleryName `
-Name $version `
-ResourceGroupName $rgName
$packageId = $appVersion.Id
$app = New-AzVmssGalleryApplication -PackageReferenceId $packageId
Add-AzVmssGalleryApplication -VirtualMachineScaleSetVM $vmss.VirtualMachineProfile -GalleryApplication $app
Update-AzVmss -ResourceGroupName $rgName -VirtualMachineScaleSet $vmss -VMScaleSetName $vmssName
Per aggiungere una versione dell'applicazione vm a una macchina virtuale, eseguire un'operazione PUT nella macchina virtuale.
PUT
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{VMName}?api-version=2024-03-03
{
"properties": {
"applicationProfile": {
"galleryApplications": [
{
"order": 1,
"packageReferenceId": "/subscriptions/{subscriptionId}/resourceGroups/<resource group>/providers/Microsoft.Compute/galleries/{gallery name}/applications/{application name}/versions/{version | latest}",
"configurationReference": "{path to configuration storage blob}",
"treatFailureAsDeploymentFailure": false
}
]
}
},
"name": "{vm name}",
"id": "/subscriptions/{subscriptionId}/resourceGroups/{resource group}/providers/Microsoft.Compute/virtualMachines/{vm name}",
"location": "{vm location}"
}
Per applicare l'applicazione vm a un set di scalabilità uniforme:
PUT
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{VMSSName}?api-version=2024-03-03
{
"properties": {
"virtualMachineProfile": {
"applicationProfile": {
"galleryApplications": [
{
"order": 1,
"packageReferenceId": "/subscriptions/{subscriptionId}/resourceGroups/<resource group>/providers/Microsoft.Compute/galleries/{gallery name}/applications/{application name}/versions/{version | latest}",
"configurationReference": "{path to configuration storage blob}",
"treatFailureAsDeploymentFailure": false
}
]
}
}
},
"name": "{vm name}",
"id": "/subscriptions/{subscriptionId}/resourceGroups/{resource group}/providers/Microsoft.Compute/virtualMachines/{vm name}",
"location": "{vm location}"
}
Nome campo |
Descrizione |
Limiti |
ordine |
Facoltativo. Ordine in cui devono essere distribuite le applicazioni. |
Convalidare l'intero |
ID di riferimento pacchetto |
Un riferimento alla versione dell'applicazione galleria. Usare la parola chiave "latest" per la versione per installare automaticamente la versione più recente disponibile. |
Informazioni di riferimento sulla versione dell'applicazione valide |
configurationReference |
Facoltativo. URL completo di un BLOB di archiviazione contenente la configurazione per questa distribuzione. In questo modo viene eseguito l'override di qualsiasi valore fornito per defaultConfiguration in precedenza. |
Informazioni di riferimento valide sul BLOB di archiviazione |
trattaErroreComeErroreDiDistribuzione |
Facoltativo. Se abilitata, l'errore di distribuzione dell'app causa lo stato di provisioning delle macchine virtuali segnala lo stato di errore. |
True o False |
Il campo dell'ordine può essere usato per specificare le dipendenze tra le applicazioni. Le regole per l'ordine sono le seguenti:
Caso |
Significato installazione |
Significato errore |
Nessun ordine specificato |
Le applicazioni non ordinate vengono installate dopo le applicazioni ordinate. Non esiste alcuna garanzia di ordine di installazione tra le applicazioni non ordinate. |
Gli errori di installazione di altre applicazioni, se ordinati o non ordinati, non influiscono sull'installazione di applicazioni non ordinate. |
Valori di ordine duplicati |
L'applicazione viene installata in qualsiasi ordine rispetto ad altre applicazioni con lo stesso ordine. Tutte le applicazioni dello stesso ordine vengono installate dopo quelle con ordini inferiori e precedenti a quelle con ordini più elevati. |
Se non è stato possibile installare un'applicazione precedente con un ordine inferiore, nessuna applicazione con questo ordine di installazione. Se un'applicazione con questo ordine non riesce a eseguire l'installazione, nessuna applicazione con un'installazione di ordine superiore. |
Aumento degli ordini |
L'applicazione verrà installata dopo quelle con ordini inferiori e prima di quelle con ordini più elevati. |
Se non è stato possibile installare un'applicazione precedente con un ordine inferiore, questa applicazione non viene installata. Se l'applicazione non riesce a eseguire l'installazione, non viene installata alcuna applicazione con un ordine superiore. |
La risposta include il modello di macchina virtuale completo. Di seguito sono riportate le parti pertinenti.
{
"name": "{vm name}",
"id": "{vm id}",
"type": "Microsoft.Compute/virtualMachines",
"location": "{vm location}",
"properties": {
"applicationProfile": {
"galleryApplications": ""
},
"provisioningState": "Updating"
},
"resources": [
{
"name": "VMAppExtension",
"id": "{extension id}",
"type": "Microsoft.Compute/virtualMachines/extensions",
"location": "centraluseuap",
"properties": "@{autoUpgradeMinorVersion=True; forceUpdateTag=7c4223fc-f4ea-4179-ada8-c8a85a1399f5; provisioningState=Creating; publisher=Microsoft.CPlat.Core; type=VMApplicationManagerLinux; typeHandlerVersion=1.0; settings=}"
}
]
}
Per visualizzare lo stato dell'applicazione della macchina virtuale, passare alla scheda Estensioni e alle impostazioni delle applicazioni e controllare lo stato di VMAppExtension:
Per visualizzare lo stato dell'applicazione vm per il set di scalabilità, passare alla pagina Set di scalabilità di macchine virtuali del portale di Azure, quindi alla sezione Istanze selezionare uno dei set di scalabilità elencati e quindi passare a VMAppExtension:
Per verificare lo stato della distribuzione dell'applicazione in una macchina virtuale, usare 'az vm get-instance-view':
az vm get-instance-view -g myResourceGroup -n myVM --query "instanceView.extensions[?name == 'VMAppExtension']"
Per verificare lo stato della distribuzione dell'applicazione nel set di scalabilità di macchine virtuali, usare 'az vmss get-instance-view':
az vmss get-instance-view --ids (az vmss list-instances -g myResourceGroup -n myVmss --query "[*].id" -o tsv) --query "[*].extensions[?name == 'VMAppExtension']"
Nota
Il comando di stato della distribuzione del precedente set di scalabilità di macchine virtuali non include l'ID dell'istanza nei risultati. Per visualizzare l'ID istanza con lo stato dell'estensione in ogni istanza, sono necessari altri script. Fare riferimento all'esempio seguente dell'interfaccia della riga di comando che contiene la sintassi di PowerShell:
$ids = az vmss list-instances -g myResourceGroup -n myVmss --query "[*].{id: id, instanceId: instanceId}" | ConvertFrom-Json
$ids | Foreach-Object {
$iid = $_.instanceId
Write-Output "instanceId: $iid"
az vmss get-instance-view --ids $_.id --query "extensions[?name == 'VMAppExtension']"
}
Verificare che l'applicazione abbia avuto esito positivo:
$rgName = "myResourceGroup"
$vmName = "myVM"
$result = Get-AzVM -ResourceGroupName $rgName -VMName $vmName -Status
$result.Extensions | Where-Object {$_.Name -eq "VMAppExtension"} | ConvertTo-Json
Per verificare nel set di scalabilità di macchine virtuali:
$rgName = "myResourceGroup"
$vmssName = "myVMss"
$result = Get-AzVmssVM -ResourceGroupName $rgName -VMScaleSetName $vmssName -InstanceView
$resultSummary = New-Object System.Collections.ArrayList
$result | ForEach-Object {
$res = @{ instanceId = $_.InstanceId; vmappStatus = $_.InstanceView.Extensions | Where-Object {$_.Name -eq "VMAppExtension"}}
$resultSummary.Add($res) | Out-Null
}
$resultSummary | ConvertTo-Json -Depth 5
Se l'applicazione vm non è installata nella macchina virtuale, il valore è vuoto.
Per ottenere il risultato della visualizzazione dell'istanza della macchina virtuale:
GET
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{VMName}/instanceView?api-version=2024-03-03
Il risultato è simile al seguente:
{
...
"extensions" [
...
{
"name": "VMAppExtension",
"type": "Microsoft.CPlat.Core.VMApplicationManagerLinux",
"typeHandlerVersion": "1.0.9",
"statuses": [
{
"code": "ProvisioningState/succeeded",
"level": "Info",
"displayStatus": "Provisioning succeeded",
"message": "Enable succeeded: {\n \"CurrentState\": [\n {\n \"applicationName\": \"doNothingLinux\",\n \"version\": \"1.0.0\",\n \"result\": \"Install SUCCESS\"\n },\n {
\n \"applicationName\": \"badapplinux\",\n \"version\": \"1.0.0\",\n \"result\": \"Install FAILED Error executing command \u0027exit 1\u0027: command terminated with exit status=1\"\n }\n ],\n \"ActionsPerformed\": []\n}
"
}
]
}
...
]
}
Lo stato dell'app della macchina virtuale è nel messaggio di stato del risultato dell'estensione dell'app della macchina virtuale nella visualizzazione dell'istanza.
Per ottenere lo stato dell'applicazione nel set di scalabilità di macchine virtuali:
GET
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/ virtualMachineScaleSets/{VMSSName}/virtualMachines/{instanceId}/instanceView?api-version=2019-03-01
L'output è simile all'esempio di macchina virtuale precedente.
Per eliminare la risorsa applicazione macchina virtuale, è necessario prima eliminare tutte le relative versioni. L'eliminazione della versione dell'applicazione provoca l'eliminazione della risorsa della versione dell'applicazione da Azure Compute Gallery e da tutte le sue repliche. Il BLOB dell'applicazione nell'account di archiviazione utilizzato per creare la versione dell'applicazione rimane invariato. Dopo aver eliminato la versione dell'applicazione, se una macchina virtuale usa tale versione, l'operazione di ricreazione dell'immagine in tali macchine virtuali avrà esito negativo. Usare la parola chiave 'latest' come numero di versione nel 'applicationProfile' invece di codificare direttamente il numero di versione per risolvere questo problema.
Tuttavia, se l'applicazione viene eliminata, la macchina virtuale non riesce durante l'operazione di ricreazione dell'immagine perché non sono disponibili versioni per l'installazione di Azure. Il profilo della macchina virtuale deve essere aggiornato per non usare l'applicazione vm.
Eliminare la versione dell'applicazione vm:
Remove-AzGalleryApplicationVersion -ResourceGroupName $rgNmae -GalleryName $galleryName -GalleryApplicationName $galleryApplicationName -Name $name
Eliminare l'applicazione di macchina virtuale dopo l'eliminazione di tutte le relative versioni:
Remove-AzGalleryApplication -ResourceGroupName $rgNmae -GalleryName $galleryName -Name $name
Eliminare la versione dell'applicazione vm:
az sig gallery-application version delete --resource-group $rg-name --gallery-name $gallery-name --application-name $app-name --version-name $version-name
Eliminare l'applicazione di macchina virtuale dopo l'eliminazione di tutte le relative versioni:
az sig gallery-application delete --resource-group $rg-name --gallery-name $gallery-name --application-name $app-name
Eliminare la versione dell'applicazione vm:
DELETE
https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/applications/{galleryApplicationName}/versions/{galleryApplicationVersionName}?api-version=2024-03-03
Eliminare l'applicazione di macchina virtuale dopo l'eliminazione di tutte le relative versioni:
DELETE
https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/galleries/{galleryName}/applications/{galleryApplicationName}?api-version=2024-03-03
Passaggi successivi
Altre informazioni sulle applicazioni di macchine virtuali di Azure.