Condividi tramite


Gestire macchine virtuali Arc in Locale di Azure

Si applica a: Azure Local 2311.2 e versioni successive

Questo articolo descrive come gestire le macchine virtuali (VM) di Azure Arc in esecuzione in Azure Local, versione 23H2. Vengono illustrate le procedure per abilitare la gestione guest e avviare, arrestare, riavviare, sospendere, salvare ed eliminare una macchina virtuale di Azure Arc.

Prerequisiti

  • Accesso a un'istanza locale di Azure distribuita e registrata. La distribuzione di un'istanza locale di Azure include la creazione di un bridge di risorse di Azure Arc e una posizione personalizzata.

    Passare al gruppo di risorse in Azure. Le informazioni visualizzate includono la posizione personalizzata e il bridge di risorse di Azure Arc creato per Azure Local.The display information includes the custom location and the Azure Arc resource bridge created for Azure Local. Prendere nota della sottoscrizione, del gruppo di risorse e della posizione personalizzata. Userai questi elementi più avanti in questo scenario.

  • Una o più macchine virtuali di Azure Arc in esecuzione nell'istanza locale di Azure. Per ulteriori informazioni, vedere Creare macchine virtuali Azure Arc su Azure Locale.

Abilitare la gestione guest

È importante comprendere due agenti nel contesto della gestione guest: un agente guest della macchina virtuale e un agente di Azure Connected Machine. Ogni macchina virtuale di Azure Arc creata tramite il portale di Azure o l'interfaccia della riga di comando di Azure viene fornita con un agente guest (detto anche mocguestagent).

Quando si abilita la gestione degli ospiti su una macchina virtuale Azure Arc, l'agente ospite installa l'agente di Azure Connected Machine . Usare l'agente di Azure Connected Machine per gestire le estensioni di Azure Arc sulla tua VM.

Di seguito sono riportate alcune considerazioni chiave per l'attivazione della gestione degli ospiti in una macchina virtuale dopo il provisioning.

  • Assicurarsi che l'istanza locale di Azure sia in esecuzione 2311.2 o versione successiva.
  • L'abilitazione della gestione guest dopo il provisioning delle macchine virtuali non è supportata per Windows Server 2012 e Windows Server 2012 R2.
  • I passaggi per abilitare la gestione guest variano a seconda che un agente guest sia in esecuzione nella macchina virtuale di Azure Arc.

Verificare che l'agente guest sia in esecuzione

Per verificare che l'agente guest sia in esecuzione nella macchina virtuale Di Azure Arc:

  1. Connettersi al computer.

  2. Esegui questo comando:

    az stack-hci-vm show --name "<VM name>" --resource-group "<Resource group name>"
    

    Ecco un frammento di output di esempio che indica che l'agente guest è in esecuzione. Cerca statuses sotto vmAgent nell'output.

    "instanceView": {
      "vmAgent": {
        "statuses": [
          {
            "code": "ProvisioningState/succeeded",
            "displayStatus": "Connected",
            "level": "Info",
            "message": "Successfully established connection with mocguestagent",
            "time": "2024-01-13T00:57:39Z"
          },
          {
            "code": "ProvisioningState/succeeded",
            "displayStatus": "Connected",
            "level": "Info",
            "message": "New mocguestagent version detected 'v0.13.0-3-gd13b4794",
            "time": "2024-01-13T00:57:39Z"
          }
        ],
        "vmConfigAgentVersion": "v0.13.0-3-gd13b4794"
      }
    }
    

    L'agente guest è in esecuzione quando statuses indica code come ProvisioningState/succeeded e indica displayStatus come Connected.

    Se si esegue una versione precedente, statuses indica code come OK e indica displayStatus come Active.

Se gli stati non corrispondono all'output precedente, seguire i passaggi descritti in Abilitare la gestione guest quando l'agente guest non è in esecuzione.

Abilitare la gestione guest in una macchina virtuale quando l'agente guest è in esecuzione

Per abilitare la gestione degli ospiti in una macchina virtuale di Azure Arc con l'agente guest in esecuzione:

  1. Eseguire il comando seguente, che imposta il parametro enable-agent su true:

    az stack-hci-vm update --name "mylocal-vm" --enable-agent true --resource-group "mylocal-rg"
    

    L'abilitazione della gestione ospiti richiede alcuni minuti.

  2. Verificare che la gestione degli ospiti sia abilitata. Seguire la procedura descritta in Verificare che la gestione guest sia abilitata nel portale di Azure.

Abilitare la gestione guest in una macchina virtuale quando l'agente guest non è in esecuzione

L'agente guest non viene eseguito in due scenari: quando lo stato è Connecting e quando lo stato è Null. Le sezioni seguenti descrivono questi scenari e i passaggi corrispondenti.

Stato visualizzato come 'In connessione'

Questo frammento di output di esempio mostra lo stato di Connecting:

"instanceView": {
      "vmAgent": {
        "statuses": [
          {
            "code": "ProvisioningState/InProgress",
            "displayStatus": "Connecting",
            "level": "Info",
            "message": "Waiting for connection with mocguestagent",
            "time": "2024-01-19T01:41:15Z"
          }
        ]
      }
    },

L'agente guest non è in esecuzione quando statuses indica code come ProvisioningState/InProgress e indica displayStatus come Connecting.

Se si esegue una versione precedente, statuses indica code come OK, displayStatus come Activee message come Successfully started HyperV listener.

Seguire questa procedura:

  1. Connettersi alla macchina virtuale usando i passaggi specifici del sistema operativo. Eseguire Azure PowerShell come amministratore.

  2. Eseguire uno dei comandi seguenti per abilitare l'agente guest nella macchina virtuale, in base al tipo di sistema operativo.

    Usare questo comando per Linux:

    sudo -- sh -c 'mkdir /mociso && mount -L mocguestagentprov /mociso && bash /mociso/install.sh && umount /mociso && rm -df /mociso && eject LABEL=mocguestagentprov'
    

    Usare questo comando per Windows:

    $d=Get-Volume -FileSystemLabel mocguestagentprov;$p=Join-Path ($d.DriveLetter+':\') 'install.ps1';powershell $p
    

    Ecco un output di esempio per una macchina virtuale Linux che mostra l'installazione corretta dell'agente guest.

    Screenshot che mostra che l'agente guest è abilitato correttamente in una macchina virtuale.

  3. Connettersi a uno dei computer. Eseguire il comando seguente per abilitare la gestione guest:

    az stack-hci-vm update --name "mylocal-vm" --enable-agent true --resource-group "mylocal-rg"
    
  4. Verificare che la gestione degli ospiti sia abilitata. Seguire la procedura descritta in Verificare che la gestione guest sia abilitata nel portale di Azure.

Stato visualizzato come Null

Il frammento di output di esempio seguente mostra uno stato Null. Questo stato indica che manca il iso necessario per l'agente guest.

"instanceView": {
      "vmAgent": {
        "statuses": []
      }
    },

Seguire questa procedura:

  1. Connettersi a un computer.

  2. Esegui questo comando:

    az stack-hci-vm update --name "<VM Name>" --resource-group "<Resource group name>" --enable-vm-config-agent true
    

    Il parametro enable-vm-config-agent monta il iso necessario per l'agente guest.

  3. Attendere alcuni minuti ed eseguire di nuovo il az stack-hci-vm show comando. Quando lo stato mostra Connecting, seguire la procedura descritta in Stato visualizzato come Connessione.

Verificare che la gestione guest sia abilitata nel portale di Azure

  1. Vai al portale di Azure.

  2. Passare a Le macchine virtuali locali di Azure>e quindi selezionare la macchina virtuale in cui è stata abilitata la gestione guest.

  3. Nella pagina Panoramica, nella scheda Proprietà, vai su Configurazione. di gestione guest deve essere visualizzato Abilitato (connesso).

    Screenshot del portale di Azure che mostra l'area per verificare che la gestione guest sia abilitata.

Visualizzare le proprietà della macchina virtuale

Per visualizzare le proprietà della macchina virtuale per l'istanza locale di Azure, seguire questa procedura nel portale di Azure:

  1. Passare alla risorsa locale di Azure e quindi passare a Macchine virtuali.

  2. Nell'elenco delle macchine virtuali selezionare il nome della macchina virtuale le cui proprietà si desidera visualizzare.

    Screenshot di una macchina virtuale selezionata nell'elenco delle macchine virtuali.

  3. Nella pagina Panoramica selezionare la scheda Proprietà per visualizzare le proprietà della macchina virtuale.

    Screenshot delle proprietà di una macchina virtuale di Azure Arc selezionata.

Avviare una VM

Per avviare una macchina virtuale, seguire questa procedura nel portale di Azure per l'istanza locale di Azure:

  1. Passare alla risorsa locale di Azure e quindi passare a Macchine virtuali.

  2. Nell'elenco delle macchine virtuali selezionare una macchina virtuale che non è in esecuzione e che si vuole avviare.

  3. Nella pagina Panoramica per la macchina virtuale, sulla barra dei comandi selezionare Avvia.

    Screenshot del pulsante per l'avvio di una macchina virtuale nella pagina di panoramica.

  4. Selezionare .

  5. Verificare che la macchina virtuale sia stata avviata.

Arrestare una macchina virtuale

Per arrestare una macchina virtuale, seguire questa procedura nel portale di Azure per l'istanza locale di Azure:

  1. Passare alla risorsa locale di Azure e quindi passare a Macchine virtuali.

  2. Nell'elenco delle macchine virtuali selezionare una macchina virtuale in esecuzione e che si vuole arrestare.

  3. Nella pagina Panoramica per la macchina virtuale, nella barra dei comandi, selezionare Arresta.

    Screenshot del pulsante per arrestare una macchina virtuale nella pagina di panoramica.

  4. Selezionare .

  5. Verificare che la macchina virtuale sia stata arrestata.

Riavvia una macchina virtuale

Per riavviare una macchina virtuale, seguire questa procedura nel portale di Azure per l'istanza locale di Azure:

  1. Passare alla risorsa locale di Azure e quindi passare a Macchine virtuali.

  2. Nell'elenco delle macchine virtuali selezionare una macchina virtuale arrestata e che si vuole riavviare.

  3. Nella pagina Panoramica della macchina virtuale, sulla barra dei comandi, selezionare Riavvia.

    Screenshot del pulsante per il riavvio di una macchina virtuale nella pagina di panoramica.

  4. Selezionare .

  5. Verificare che la macchina virtuale sia stata riavviata.

Sospendere una macchina virtuale

La sospensione di una macchina virtuale è utile per salvare le risorse di calcolo quando non si usa la macchina virtuale. La sospensione di una macchina virtuale arresta qualsiasi attività della CPU.

È possibile sospendere solo le macchine virtuali in esecuzione. Dopo aver sospeso una macchina virtuale, è possibile riprenderla in un secondo momento.

  1. Connettersi a un computer nel sistema.

  2. Eseguire questo cmdlet di Azure PowerShell:

    #Set input parameters
    
    $rg = "<Resource group name>"
    $vmName = "<VM name>"
    
    #Pause the VM
    
    az stack-hci-vm pause --name $vmName --resource-group $rg
    

    I parametri per questo cmdlet sono i seguenti:

    Parametro Descrizione
    name Nome della macchina virtuale.
    resource-group Nome del gruppo di risorse. È possibile configurare il gruppo predefinito usando az configure --defaults group=<name>.
    subscription Nome o ID della sottoscrizione. È possibile configurare la sottoscrizione predefinita usando az account set -s NAME_OR_ID.
  3. Controllare lo stato della macchina virtuale per verificare che la macchina virtuale sia sospesa:

    #Check the VM status
    
    az stack-hci-vm show --name $vmName --resource-group $rg
    
  4. Avviare la macchina virtuale per riprendere la macchina virtuale dallo stato sospeso:

    #Start the VM
    
    az stack-hci-vm start --name $vmName --resource-group $rg
    
  5. Verificare che la macchina virtuale sia in esecuzione.

Output di esempio

Espandere questa sezione per visualizzare un output di esempio.

#Set parameters

[v-host1]: PS C:\Users\HCIDeploymentUser> $rg = "<Resource group name>"    
[v-host1]: PS C:\Users\HCIDeploymentUser> $vmName = "<VM name>"

#Pause the VM

[v-host1]: PS C:\Users\HCIDeploymentUser> az stack-hci-vm pause --name $vmName --resource-group $rg

#Show the current state of the VM
[v-host1]: PS C:\Users\HCIDeploymentUser> az stack-hci-vm show -g $rg --name $vmName
{
  "attestationStatus": null,
  "virtualmachineinstance": {
    "extendedLocation": {
      "name": "/subscriptions/<Subscription ID>/resourcegroups/<Resource group name>/providers/Microsoft.ExtendedLocation/customLocations/s-cluster-customlocation",
      "type": "CustomLocation"
    },
    "id": "/subscriptions/<Subscription ID>/resourceGroups/<Resource group name>/providers/Microsoft.HybridCompute/machines/testvm001/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default",
    "identity": null,
    "name": "default",
    "properties": {
      "guestAgentInstallStatus": null,
      "hardwareProfile": {
        "dynamicMemoryConfig": {
          "maximumMemoryMb": null,
          "minimumMemoryMb": null,
          "targetMemoryBuffer": null
        },
        "memoryMb": 2000,
        "processors": 2,
        "vmSize": "Custom"
      },
      "httpProxyConfig": null,
      "instanceView": {
        "vmAgent": {
          "statuses": [
            {
              "code": "ProvisioningState/succeeded",
              "displayStatus": "Connected",
              "level": "Info",
              "message": "Connection with mocguestagent was successfully reestablished",
              "time": "2024-06-24T16:30:05+00:00"
            },
          ],
          "vmConfigAgentVersion": "v0.18.0-4-gd54376b0"
        }
      },
      "networkProfile": {
        "networkInterfaces": []
      },
      "osProfile": {
        "adminPassword": null,
        "adminUsername": "azureuser",
        "computerName": "testvm001",
        "linuxConfiguration": {
          "disablePasswordAuthentication": false,
          "provisionVmAgent": false,
          "provisionVmConfigAgent": true,
          "ssh": {
            "publicKeys": null
          }
        },
        "windowsConfiguration": {
          "enableAutomaticUpdates": null,
          "provisionVmAgent": false,
          "provisionVmConfigAgent": true,
          "ssh": {
            "publicKeys": null
          },
          "timeZone": null
        }
      },
      "provisioningState": "Succeeded",
      "resourceUid": null,
      "securityProfile": {
        "enableTpm": false,
        "securityType": null,
        "uefiSettings": {
          "secureBootEnabled": true
        }
      },
      "status": {
        "errorCode": "",
        "errorMessage": "",
        "powerState": "Paused",
        "provisioningStatus": null
      },
      "storageProfile": {
        "dataDisks": [],
        "imageReference": {
          "id": "/subscriptions/<Subscription ID>/resourceGroups/<Resource group name>/providers/Microsoft.AzureStackHCI/galleryImages/WinImage-26tdJUIS",
          "resourceGroup": "<Resource group name>"
        },
        "osDisk": {
          "id": null,
          "osType": "Windows"
        },
        "vmConfigStoragePathId": "/subscriptions/<Subscription ID>/resourceGroups/<Resource group name>/providers/Microsoft.AzureStackHCI/storageContainers/UserStorage2-guid"
      },
      "vmId": "<guid>"
    },
    "resourceGroup": "<Resource group name>",
    "systemData": {
      "createdAt": "2024-06-24T01:29:06.594266+00:00",
      "createdBy": "7d6ffe2f-dac5-4e74-9bf2-4830cf7f4668",
      "createdByType": "Application",
      "lastModifiedAt": "2024-06-24T16:41:27.166668+00:00",
      "lastModifiedBy": "319f651f-7ddb-4fc6-9857-7aef9250bd05",
      "lastModifiedByType": "Application"
    },
    "type": "microsoft.azurestackhci/virtualmachineinstances"
  }
}

#Start the VM after it was paused. 

[v-host1]: PS C:\Users\HCIDeploymentUser> az stack-hci-vm start --name $vmName --resource-group $rg
Inside _start_initial/subscriptions/<Subscription ID>/resourceGroups/<Resource group name>/providers/Microsoft.HybridCompute/machines/testvm0012024-02-01-preview/https://management.azure.com/subscriptions/<Subscription ID>/resourceGroups/<Resource group name>/providers/Microsoft.HybridCompute/machines/testvm001/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/start?api-version=2024-02-01-preview

#Show the current state of the VM. The VM should be running.

[v-host1]: PS C:\Users\HCIDeploymentUser> az stack-hci-vm show -g $rg --name $vmName
{
  "attestationStatus": null,
  "virtualmachineinstance": {
    "extendedLocation": {
      "name": "/subscriptions/<Subscription ID>/resourcegroups/<Resource group name>/providers/Microsoft.ExtendedLocation/customLocations/s-cluster-customlocation",
      "type": "CustomLocation"
    },
    "id": "/subscriptions/<Subscription ID>/resourceGroups/<Resource group name>/providers/Microsoft.HybridCompute/machines/testvm001/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default",
    "identity": null,
    "name": "default",
    "properties": {
      "guestAgentInstallStatus": null,
      "hardwareProfile": {
        "dynamicMemoryConfig": {
          "maximumMemoryMb": null,
          "minimumMemoryMb": null,
          "targetMemoryBuffer": null
        },
        "memoryMb": 2000,
        "processors": 2,
        "vmSize": "Custom"
      },
      "httpProxyConfig": null,
      "instanceView": {
        "vmAgent": {
          "statuses": [
            {
              "code": "ProvisioningState/succeeded",
              "displayStatus": "Connected",
              "level": "Info",
              "message": "Connection with mocguestagent was successfully reestablished",
              "time": "2024-06-24T17:25:19+00:00"
            }
          ],
          "vmConfigAgentVersion": "v0.18.0-4-gd54376b0"
        }
      },
      "networkProfile": {
        "networkInterfaces": []
      },
      "osProfile": {
        "adminPassword": null,
        "adminUsername": "azureuser",
        "computerName": "testvm001",
        "linuxConfiguration": {
          "disablePasswordAuthentication": false,
          "provisionVmAgent": false,
          "provisionVmConfigAgent": true,
          "ssh": {
            "publicKeys": null
          }
        },
        "windowsConfiguration": {
          "enableAutomaticUpdates": null,
          "provisionVmAgent": false,
          "provisionVmConfigAgent": true,
          "ssh": {
            "publicKeys": null
          },
          "timeZone": null
        }
      },
      "provisioningState": "Succeeded",
      "resourceUid": null,
      "securityProfile": {
        "enableTpm": false,
        "securityType": null,
        "uefiSettings": {
          "secureBootEnabled": true
        }
      },
      "status": {
        "errorCode": "",
        "errorMessage": "",
        "powerState": "Running",
        "provisioningStatus": null
      },
      "storageProfile": {
        "dataDisks": [],
        "imageReference": {
          "id": "/subscriptions/<Subscription ID>/resourceGroups/<Resource group name>/providers/Microsoft.AzureStackHCI/galleryImages/WinImage-26tdJUIS",
          "resourceGroup": "<Resource group name>"
        },
        "osDisk": {
          "id": null,
          "osType": "Windows"
        },
        "vmConfigStoragePathId": "/subscriptions/<Subscription ID>/resourceGroups/<Resource group name>/providers/Microsoft.AzureStackHCI/storageContainers/UserStorage2-guid"
      },
      "vmId": "<guid>"
    },
    "resourceGroup": "<Resource group name>",
    "systemData": {
      "createdAt": "2024-06-24T01:29:06.594266+00:00",
      "createdBy": "<guid>",
      "createdByType": "Application",
      "lastModifiedAt": "2024-06-24T17:28:13.206935+00:00",
      "lastModifiedBy": "<guid>",
      "lastModifiedByType": "Application"
    },
    "type": "microsoft.azurestackhci/virtualmachineinstances"
  }
}

Salvare una macchina virtuale

Il salvataggio di una macchina virtuale archivia lo stato corrente nel disco e arresta la macchina virtuale. Il salvataggio di una macchina virtuale libera risorse di memoria e CPU. È possibile salvare solo le macchine virtuali in esecuzione.

  1. Connettersi a un computer nel sistema.

  2. Eseguire questo cmdlet di Azure PowerShell:

    #Set input parameters
    
    $rg = "<Resource group name>"
    $vmName = "<VM name>"
    
    #Save the VM
    
    az stack-hci-vm save --name $vmName --resource-group $rg
    

    I parametri per questo cmdlet sono i seguenti:

    Parametro Descrizione
    name Nome della macchina virtuale.
    resource-group Nome del gruppo di risorse. È possibile configurare il gruppo predefinito usando az configure --defaults group=<name>.
    subscription Nome o ID della sottoscrizione. È possibile configurare la sottoscrizione predefinita usando az account set -s <Subscription name or Subscription ID>.
  3. Controllare lo stato della macchina virtuale per verificare che la macchina virtuale sia stata salvata:

    #Check the VM status
    
    az stack-hci-vm show --name $vmName --resource-group $rg
    
  4. Avviare la macchina virtuale per riprendere la macchina virtuale dallo stato salvato:

    #Start the VM
    
    az stack-hci-vm start --name $vmName --resource-group $rg
    
  5. Verificare che la macchina virtuale sia in esecuzione.

Output di esempio

Espandere questa sezione per visualizzare un output di esempio.
#Set parameters

[v-host1]: PS C:\Users\HCIDeploymentUser> $rg = "<Resource group name>"    
[v-host1]: PS C:\Users\HCIDeploymentUser> $vmName = "<VM name>"

#Save the VM

[v-host1]: PS C:\Users\HCIDeploymentUser> az stack-hci-vm save --name $vmName --resource-group $rg

#Show the current state of the VM

[v-host1]: PS C:\Users\HCIDeploymentUser> az stack-hci-vm show -g $rg --name $vmName
{
  "attestationStatus": null,
  "virtualmachineinstance": {
    "extendedLocation": {
      "name": "/subscriptions/<Subscription ID>/resourcegroups/<Resource group name>/providers/Microsoft.ExtendedLocation/customLocations/s-cluster-customlocation",
      "type": "CustomLocation"
    },
    "id": "/subscriptions/<Subscription ID>/resourceGroups/<Resource group name>/providers/Microsoft.HybridCompute/machines/testvm001/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default",
    "identity": null,
    "name": "default",
    "properties": {
      "guestAgentInstallStatus": null,
      "hardwareProfile": {
        "dynamicMemoryConfig": {
          "maximumMemoryMb": null,
          "minimumMemoryMb": null,
          "targetMemoryBuffer": null
        },
        "memoryMb": 2000,
        "processors": 2,
        "vmSize": "Custom"
      },
      "httpProxyConfig": null,
      "instanceView": {
        "vmAgent": {
          "statuses": [
            {
              "code": "ProvisioningState/succeeded",
              "displayStatus": "Connected",
              "level": "Info",
              "message": "Connection with mocguestagent was successfully reestablished",
              "time": "2024-06-24T17:25:19+00:00"
            },
          ],
          "vmConfigAgentVersion": "v0.18.0-4-gd54376b0"
        }
      },
      "networkProfile": {
        "networkInterfaces": []
      },
      "osProfile": {
        "adminPassword": null,
        "adminUsername": "azureuser",
        "computerName": "testvm001",
        "linuxConfiguration": {
          "disablePasswordAuthentication": false,
          "provisionVmAgent": false,
          "provisionVmConfigAgent": true,
          "ssh": {
            "publicKeys": null
          }
        },
        "windowsConfiguration": {
          "enableAutomaticUpdates": null,
          "provisionVmAgent": false,
          "provisionVmConfigAgent": true,
          "ssh": {
            "publicKeys": null
          },
          "timeZone": null
        }
      },
      "provisioningState": "Succeeded",
      "resourceUid": null,
      "securityProfile": {
        "enableTpm": false,
        "securityType": null,
        "uefiSettings": {
          "secureBootEnabled": true
        }
      },
      "status": {
        "errorCode": "",
        "errorMessage": "",
        "powerState": "Saved",
        "provisioningStatus": null
      },
      "storageProfile": {
        "dataDisks": [],
        "imageReference": {
          "id": "/subscriptions/<Subscription ID>/resourceGroups/<Resource group name>/providers/Microsoft.AzureStackHCI/galleryImages/WinImage-26tdJUIS",
          "resourceGroup": "<Resource group name>"
        },
        "osDisk": {
          "id": null,
          "osType": "Windows"
        },
        "vmConfigStoragePathId": "/subscriptions/<Subscription ID>/resourceGroups/<Resource group name>/providers/Microsoft.AzureStackHCI/storageContainers/UserStorage2-345d968fa1e74e99a9509ab7f3d259fd"
      },
      "vmId": "<guid>"
    },
    "resourceGroup": "<Resource group name>",
    "systemData": {
      "createdAt": "2024-06-24T01:29:06.594266+00:00",
      "createdBy": "<guid>",
      "createdByType": "Application",
      "lastModifiedAt": "2024-06-24T18:29:02.794305+00:00",
      "lastModifiedBy": "<guid>",
      "lastModifiedByType": "Application"
    },
    "type": "microsoft.azurestackhci/virtualmachineinstances"
  }
}
    
#Start the VM after it was saved

[v-host1]: PS C:\Users\HCIDeploymentUser> az stack-hci-vm start --name $vmName --resource-group $rg
Inside _start_initial/subscriptions/<Subscription ID>/resourceGroups/<Resource group name>/providers/Microsoft.HybridCompute/machines/testvm0012024-02-01-previewhttps://management.azure.com/subscriptions/<Subscription ID>/resourceGroups/<Resource group name>/providers/Microsoft.HybridCompute/machines/testvm001/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default/start?api-version=2024-02-01-preview

#Show the current state of the VM. The VM should be running.

[v-host1]: PS C:\Users\HCIDeploymentUser> az stack-hci-vm show -g $rg --name $vmName
{
  "attestationStatus": null,
  "virtualmachineinstance": {
    "extendedLocation": {
      "name": "/subscriptions/<Subscription ID>/resourcegroups/<Resource group name>/providers/Microsoft.ExtendedLocation/customLocations/s-cluster-customlocation",
      "type": "CustomLocation"
    },
    "id": "/subscriptions/<Subscription ID>/resourceGroups/<Resource group name>/providers/Microsoft.HybridCompute/machines/testvm001/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default",
    "identity": null,
    "name": "default",
    "properties": {
      "guestAgentInstallStatus": null,
      "hardwareProfile": {
        "dynamicMemoryConfig": {
          "maximumMemoryMb": null,
          "minimumMemoryMb": null,
          "targetMemoryBuffer": null
        },
        "memoryMb": 2000,
        "processors": 2,
        "vmSize": "Custom"
      },
      "httpProxyConfig": null,
      "instanceView": {
        "vmAgent": {
          "statuses": [
            {
              "code": "ProvisioningState/succeeded",
              "displayStatus": "Connected",
              "level": "Info",
              "message": "Connection with mocguestagent was successfully reestablished",
              "time": "2024-06-24T18:32:41+00:00"
            }
          ],
          "vmConfigAgentVersion": "v0.18.0-4-gd54376b0"
        }
      },
      "networkProfile": {
        "networkInterfaces": []
      },
      "osProfile": {
        "adminPassword": null,
        "adminUsername": "azureuser",
        "computerName": "testvm001",
        "linuxConfiguration": {
          "disablePasswordAuthentication": false,
          "provisionVmAgent": false,
          "provisionVmConfigAgent": true,
          "ssh": {
            "publicKeys": null
          }
        },
        "windowsConfiguration": {
          "enableAutomaticUpdates": null,
          "provisionVmAgent": false,
          "provisionVmConfigAgent": true,
          "ssh": {
            "publicKeys": null
          },
          "timeZone": null
        }
      },
      "provisioningState": "Succeeded",
      "resourceUid": null,
      "securityProfile": {
        "enableTpm": false,
        "securityType": null,
        "uefiSettings": {
          "secureBootEnabled": true
        }
      },
      "status": {
        "errorCode": "",
        "errorMessage": "",
        "powerState": "Running",
        "provisioningStatus": null
      },
      "storageProfile": {
        "dataDisks": [],
        "imageReference": {
          "id": "/subscriptions/<Subscription ID>/resourceGroups/<Resource group name>/providers/Microsoft.AzureStackHCI/galleryImages/WinImage-26tdJUIS",
          "resourceGroup": "<Resource group name>"
        },
        "osDisk": {
          "id": null,
          "osType": "Windows"
        },
        "vmConfigStoragePathId": "/subscriptions/<Subscription ID>/resourceGroups/<Resource group name>/providers/Microsoft.AzureStackHCI/storageContainers/UserStorage2-guid"
      },
      "vmId": "<guid>"
    },
    "resourceGroup": "<Resource group name>",
    "systemData": {
      "createdAt": "2024-06-24T01:29:06.594266+00:00",
      "createdBy": "<guid>",
      "createdByType": "Application",
      "lastModifiedAt": "2024-06-24T18:35:18.206280+00:00",
      "lastModifiedBy": "<guid>",
      "lastModifiedByType": "Application"
    },
    "type": "microsoft.azurestackhci/virtualmachineinstances"
  }
}

Modificare la password dell'account locale

Seguire questa procedura per modificare le password dell'account locale per una macchina virtuale Di Azure Arc distribuita nell'istanza locale di Azure. I passaggi sono diversi per le macchine virtuali Windows e Linux.

  1. Accedere alla macchina virtuale di Azure Arc.

  2. Eseguire il comando di Azure PowerShell seguente:

    # Define the username
    $username = "AccountName"
    
    # Prompt the user to enter the new password
    $newPassword = Read-Host -AsSecureString "Enter the new password for $username"
    
    # Prompt the user to re-enter the new password for verification
    $verifyPassword = Read-Host -AsSecureString "Re-enter the new password for verification"
    
    # Convert the secure strings to plain text for comparison
    $plainPassword = [Runtime.InteropServices.Marshal]::PtrToStringAuto([Runtime.InteropServices.Marshal]::SecureStringToBSTR($newPassword))
    $plainVerifyPassword = [Runtime.InteropServices.Marshal]::PtrToStringAuto([Runtime.InteropServices.Marshal]::SecureStringToBSTR($verifyPassword))
    
    # Check if the passwords match, and change the password if they match. Fail if the passwords don't match.
    if ($plainPassword -eq $plainVerifyPassword) {
        $account = [ADSI]"WinNT://./$username,user"
        $account.SetPassword($plainPassword)
        $account.SetInfo()
    
        Write-Host "Password for user $username has been reset successfully." -ForegroundColor Green
    } else {
        Write-Host "The passwords do not match. Please try again." -ForegroundColor Red
    }    
    

Eliminare una macchina virtuale

L'eliminazione di una macchina virtuale non comporta l'eliminazione di tutte le risorse associate alla macchina virtuale. Ad esempio, non elimina i dischi dati e le interfacce di rete associate alla macchina virtuale. È necessario individuare ed eliminare queste risorse separatamente.

Per eliminare una macchina virtuale, seguire questa procedura nel portale di Azure per l'istanza locale di Azure:

  1. Passare alla risorsa locale di Azure e quindi passare a Macchine virtuali.

  2. Nell'elenco delle macchine virtuali selezionare una macchina virtuale che si vuole rimuovere dal sistema.

  3. Nella pagina Panoramica per la macchina virtuale, sulla barra dei comandi, selezionare Elimina.

  4. Ti viene chiesto di confermare l'eliminazione. Selezionare .

    Screenshot dell'avviso per l'eliminazione di una macchina virtuale.

  5. Passare al gruppo di risorse in cui è stata distribuita la macchina virtuale. Verificare che la macchina virtuale sia stata rimossa dall'elenco di risorse nel gruppo di risorse.

  6. Individuare le risorse associate, ad esempio le interfacce di rete e i dischi dati, ed eliminarle. Potrebbe essere necessario selezionare Mostra tipi nascosti per visualizzare le risorse associate a questa macchina virtuale che non sono state eliminate.

    Screenshot dei tipi nascosti di risorse associate a una macchina virtuale.

Eseguire la migrazione in tempo reale delle macchine virtuali di Azure Arc

La migrazione in tempo reale delle macchine virtuali di Azure Arc tra i nodi locali di Azure è supportata tramite strumenti interni come Failover Cluster Manager o Windows Admin Center. La migrazione in tempo reale dell'archiviazione di macchine virtuali non è supportata.

Modificare core e memoria

Per modificare core e memoria, seguire questa procedura nel portale di Azure per l'istanza locale di Azure:

  1. Vai alla risorsa locale di Azure e quindi vai a Macchine virtuali.

  2. Nell'elenco delle macchine virtuali, selezionare e passare alla macchina virtuale i cui core e la cui memoria sono da modificare.

  3. In Impostazioni selezionare Dimensioni. Modificare i valori del numero di processori virtuali o della memoria (MB) per cambiare i core o le dimensioni della memoria per la macchina virtuale. Per la memoria, è possibile modificare solo le dimensioni. Non è possibile modificare il tipo di memoria dopo la creazione di una macchina virtuale.

    Screenshot del riquadro per la modifica dei core e delle dimensioni della memoria di una macchina virtuale.