Workstation di accesso per l'operatore dell'hub di Azure Stack

La workstation di accesso dell'operatore (OAW) viene usata per distribuire una macchina virtuale (VM) in un host del ciclo di vita hardware dell'hub di Azure Stack (HLH) o in qualsiasi altro computer che esegue Microsoft Hyper-V. Richiede la connettività di rete agli endpoint dell'hub di Azure Stack da usare per gli scenari di operatore o utente.

La macchina virtuale OAW è una macchina virtuale facoltativa che non è richiesta per il funzionamento dell'hub di Azure Stack. Lo scopo è fornire gli strumenti più recenti agli operatori o agli utenti durante l'interazione con l'hub di Azure Stack.

Scenari di OAW

Le tabelle seguenti elencano gli scenari comuni per la workstation OAW. Usare Desktop remoto per connettersi alla workstation OAW.

Scenario Descrizione
Accedere al portale di amministrazione Eseguire operazioni amministrative.
Accedere a PEP Raccolta di log e caricamento:
- Creare una condivisione SMB nell'HLH per il trasferimento di file dall'hub di Azure Stack.
-Usare Azure Storage Explorer per caricare i log salvati nella condivisione SMB.
Registrare l'hub di Azure Stack Per la nuova registrazione, ottenere il nome di registrazione e il gruppo di risorse precedenti dal portale di amministrazione.
Diffusione del Marketplace Creare una condivisione SMB in HLH per archiviare l'immagine o l'estensione scaricati.
Creare macchine virtuali Creare macchine virtuali mediante l'interfaccia della riga di comando di Azure.
Gestire il servizio Azure Kubernetes Gestire i cluster del servizio Azure Kubernetes, ad esempio dimensionare o aggiornare.

Software preinstallato

La tabella seguente elenca il software preinstallato nella macchina virtuale OAW.

Nome software Posizione
Microsoft Edge for Business [SystemDrive]\Programmi (x86)\Microsoft\Edge\Application
Moduli Az [SystemDrive]\Programmi\WindowsPowerShell\Modules
PowerShell 7 [SystemDrive]\Programmi\PowerShell\7
Interfaccia della riga di comando di Azure [SystemDrive]\Programmi (x86)\Microsoft SDKs\Azure\CLI2
Microsoft Azure Storage Explorer [SystemDrive]\Programmi (x86)\Microsoft Azure Storage Explorer
AzCopy [SystemDrive]\VMSoftware\azcopy_windows_amd64_*
AzureStack-Tools [SystemDrive]\VMSoftware\AzureStack-Tools

Scaricare i file

Per ottenere i file per creare la macchina virtuale OAW, scaricarli da qui. Assicurarsi di esaminare l'informativa sulla privacy e le condizioni legali di Microsoft prima di scaricare.

A causa della natura senza stato della soluzione, non sono disponibili aggiornamenti per la macchina virtuale OAW. Per ogni punto cardine viene rilasciata una nuova versione del file di immagine della macchina virtuale. Usare la versione più recente per creare una nuova macchina virtuale OAW. Il file di immagine si basa sulla versione più recente di Windows Server 2019. Dopo l'installazione è possibile applicare gli aggiornamenti, inclusi gli aggiornamenti critici, usando Windows Update.

Convalidare l'hash del file OAW.zip scaricato per assicurarsi che non sia stato modificato prima di usarlo per creare la macchina virtuale OAW. Eseguire lo script PowerShell seguente. Se il valore restituito è True, è possibile usare il file OAW.zip scaricato:

Nota

Sbloccare i file di script dopo aver estratto il download.

param(
    [Parameter(Mandatory=$True)]
    [ValidateNotNullOrEmpty()]
    [ValidateScript({Test-Path $_ -PathType Leaf})]
    [string]
    $DownloadedOAWZipFilePath
)
$expectedHash = '4B5CE0EA6FA12C4A95EBDE4223BEED5B9D98D7D9FC7DA1D5C72D3620725E5119'
$actualHash = (Get-FileHash -Path $DownloadedOAWZipFilePath).Hash
Write-Host "Expected hash: $expectedHash"
if ($expectedHash -eq $actualHash)
{
    Write-Host 'SUCCESS: OAW.zip file hash matches.'
}
else
{
    Write-Error "ERROR: OAW.zip file hash does not match! It isn't safe to use it, please download it again. Actual hash: $actualHash"
}

Un altro modo per copiare questo script nell'ambiente consiste nell'usare il cmdlet Test-FileHash offerto in AzureStack-Tools per verificare l'hash del file OAW.zip:

  1. Scaricare il file Test-FileHash.psm1 da GitHub e quindi eseguire:

    Import-Module .\Test-FileHash.psm1 -Force -Verbose
    
  2. Dopo aver importato il modulo Test-FileHash, verificare l'hash del file OAW.zip:

    Test-FileHash -ExpectedHash "4B5CE0EA6FA12C4A95EBDE4223BEED5B9D98D7D9FC7DA1D5C72D3620725E5119" -FilePath "<path to the OAW.zip file>"
    

Controllare la versione dell'host HLH

Nota

Questo passaggio è importante per determinare se si distribuisce OAW in un HLH distribuito usando un'immagine Microsoft o un'immagine OEM. Questo cmdlet di PowerShell non è presente in un'HLH distribuita usando un'immagine OEM. Se si distribuisce la workstation OAW in un'istanza generale di Microsoft Hyper-V, è possibile ignorare questo passaggio.

  1. Accedere all'host HLH con le credenziali personali.

  2. Aprire Windows PowerShell ISE ed eseguire lo script seguente:

    C:\Version\Get-Version.ps1
    

    Ad esempio:

    Screenshot del cmdlet di PowerShell per controllare la versione della macchina virtuale OAW.

Creare la macchina virtuale OAW usando uno script

Lo script seguente prepara la macchina virtuale come workstation OAW (Operator Access Workstation), usata per accedere all'hub di Microsoft Azure Stack.

  1. Accedere all'host HLH con le credenziali personali.

  2. Scaricare OAW.zip ed estrarre i file.

  3. Aprire una sessione di PowerShell con privilegi elevati.

  4. Passare al contenuto estratto del file OAW.zip.

  5. Eseguire lo script New-OAW.ps1.

Esempio: Distribuire nell'host HLH usando un'immagine Microsoft

$oawRootPath = "D:\oawtest"
$securePassword = Read-Host -Prompt "Enter password for Azure Stack OAW's local administrator" -AsSecureString

if (Get-ChildItem -Path $oawRootPath -Recurse | Get-Item -Stream Zone* -ErrorAction SilentlyContinue | Select-Object FileName)
{ Write-Host "Execution failed, unblock the script files first" }
else { .\New-OAW.ps1 -LocalAdministratorPassword $securePassword }

Esempio: Distribuire nell'host HLH usando un'immagine OEM

$oawRootPath = "D:\oawtest"
$securePassword = Read-Host -Prompt "Enter password for Azure Stack OAW's local administrator" -AsSecureString

if (Get-ChildItem -Path $oawRootPath -Recurse | Get-Item -Stream Zone* -ErrorAction SilentlyContinue | Select-Object FileName)
{ Write-Host "Execution failed, unblock the script files first" }
else { .\New-OAW.ps1 -LocalAdministratorPassword $securePassword -AzureStackCertificatePath 'F:\certroot.cer' -DeploymentDataFilePath 'F:\DeploymentData.json' -AzSStampInfoFilePath 'F:\AzureStackStampInformation.json' }

Se il AzureStackStampInformation.json file include il prefisso di denominazione per la macchina virtuale OAW, tale valore verrà usato per il VirtualMachineName parametro. In caso contrario, il nome predefinito è AzSOAW o qualsiasi nome specificato dall'utente. L'oggetto AzureStackStampInformation.json può essere ricreato usando l'endpoint con privilegi nel caso in cui non sia presente nell'HLH.

Nota

Il parametro AzureStackCertificatePath deve essere usato solo quando l'hub di Azure Stack è stato distribuito usando i certificati rilasciati da un'autorità di certificazione aziendale. Se non DeploymentData.json è disponibile, contattare il partner hardware per recuperarlo o continuare con l'esempio di distribuzione in Microsoft Hyper-V.

Esempio: Distribuire in Microsoft Hyper-V

Il computer che esegue Microsoft Hyper-V richiede quattro core (4) e due (2) GB di memoria disponibile. I cmdlet di PowerShell creeranno la macchina virtuale OAW senza applicare una configurazione IP all'interfaccia di rete guest. Se si usa l'esempio per effettuare il provisioning dell'OAW in un HLH, è necessario configurare l'indirizzo IP originariamente usato dalla macchina virtuale di distribuzione (DVM), che in genere è il secondo all'ultimo indirizzo IP della rete BMC.

Esempio Indirizzi IP
Rete BMC 10.26.5.192/26
Primo indirizzo IP host 10.26.5.193
Ultimo indirizzo IP host 10.26.5.254
DVM/OAW IP 10.26.5.253
Subnet mask 255.255.255.192
Gateway predefinito 10.26.5.193
$oawRootPath = "D:\oawtest"
$securePassword = Read-Host -Prompt "Enter password for Azure Stack OAW's local administrator" -AsSecureString

if (Get-ChildItem -Path $oawRootPath -Recurse | Get-Item -Stream Zone* -ErrorAction SilentlyContinue | Select-Object FileName)
{ Write-Host "Execution failed, unblock the script files first" }
else { .\New-OAW.ps1 -LocalAdministratorPassword $securePassword -AzureStackCertificatePath 'F:\certroot.cer' `-SkipNetworkConfiguration -VirtualSwitchName Example }

Nota

Il parametro AzureStackCertificatePath deve essere usato solo quando l'hub di Azure Stack è stato distribuito usando i certificati rilasciati da un'autorità di certificazione aziendale. La macchina virtuale OAW verrà distribuita senza una configurazione di rete. È possibile configurare un indirizzo IP statico o recuperare un indirizzo IP tramite DHCP.

Criteri dell'account utente

I criteri dell'account utente seguenti vengono applicati alla macchina virtuale OAW:

  • Nome utente amministratore predefinito: AdminUser
  • MinimumPasswordLength = 14
  • PasswordComplexity è abilitato
  • MinimumPasswordAge = 1 (giorno)
  • MaximumPasswordAge = 42 (giorni)
  • NewGuestName = GUser (disabilitato per impostazione predefinita)

Parametri del cmdlet New-OAW

Per New-OAW sono disponibili due set di parametri. I parametri facoltativi vengono visualizzati tra parentesi quadre.

New-OAW
-LocalAdministratorPassword <Security.SecureString> `
[-AzureStackCertificatePath <String>] `
[-AzSStampInfoFilePath <String>] `
[-CertificatePassword <Security.SecureString>] `
[-ERCSVMIP <String[]>] `
[-DNS <String[]>] `
[-DeploymentDataFilePath <String>] `
[-SkipNetworkConfiguration] `
[-ImageFilePath <String>] `
[-VirtualMachineName <String>] `
[-VirtualMachineMemory <int64>] `
[-VirtualProcessorCount <int>] `
[-VirtualMachineDiffDiskPath <String>] `
[-PhysicalAdapterMACAddress <String>] `
[-VirtualSwitchName <String>] `
[-ReCreate] `
[-AsJob] `
[-Passthru] `
[-WhatIf] `
[-Confirm] `
[<CommonParameters>]

New-OAW
-LocalAdministratorPassword <Security.SecureString> `
-IPAddress <String> `
-SubnetMask <String> `
-DefaultGateway <String> `
-DNS <String[]> `
-TimeServer<String> `
[-AzureStackCertificatePath <String>] `
[-AzSStampInfoFilePath <String>] `
[-CertificatePassword <Security.SecureString>] `
[-ERCSVMIP <String[]>] `
[-ImageFilePath <String>] `
[-VirtualMachineName <String>] `
[-VirtualMachineMemory <int64>] `
[-VirtualProcessorCount <int>] `
[-VirtualMachineDiffDiskPath <String>] `
[-PhysicalAdapterMACAddress <String>] `
[-VirtualSwitchName <String>] `
[-ReCreate] `
[-AsJob] `
[-Passthru] `
[-WhatIf] `
[-Confirm] `
[<CommonParameters>]

Nella tabella seguente viene elencata la definizione per ogni parametro.

Parametro Obbligatorio/facoltativo Descrizione
LocalAdministratorPassword Necessario Password per l'account amministratore locale della macchina virtuale AdminUser.
IPAddress Necessario Indirizzo IPv4 statico per configurare TCP/IP nella macchina virtuale.
SubnetMask Necessario Subnet mask IPv4 per configurare TCP/IP nella macchina virtuale.
DefaultGateway Necessario Indirizzo IPv4 del gateway predefinito per configurare TCP/IP nella macchina virtuale.
DNS Necessario Server DNS per configurare TCP/IP nella macchina virtuale.
TimeServer Necessario Indirizzo IP del server di tempo da cui viene sincronizzato l'hub di Azure Stack, che sarà l'origine temporale sincronizzata anche da OAW. Controllare AzureStackStampInformation.json o chiedere all'amministratore l'indirizzo IP del server di tempo sincronizzato dall'hub. In caso di urgenza e non è stato possibile ottenere l'INDIRIZZO IP del server di tempo sincronizzato dall'hub, è possibile immettere il server di ora predefinito , 'time.windows.com,0x8' per questo parametro. Si noti che è consigliabile assicurarsi che l'ora in OAW e Hub sia sincronizzata per evitare potenziali problemi di deviazione del clock quando si lavora in un OAW per interagire con Hub.
ImageFilePath Facoltativo Percorso di OAW.vhdx fornito da Microsoft. Il valore predefinito è OAW.vhdx nella stessa cartella padre di questo script.
VirtualMachineName Facoltativo Nome da assegnare alla macchina virtuale. Se il prefisso di denominazione è disponibile nel file DeploymentData.json, verrà usato come nome predefinito. In caso contrario, AzSOAWverrà usato come nome predefinito. È possibile specificare un altro nome per sovrascrivere il valore predefinito.
VirtualMachineMemory Facoltativo Memoria da assegnare alla macchina virtuale. Il valore predefinito è 2 GB.
VirtualProcessorCount Facoltativo Numero di processori virtuali da assegnare alla macchina virtuale. Il valore predefinito è 4.
VirtualMachineDiffDiskPath Facoltativo Percorso per archiviare i file diff su disco temporanei durante l'attività della macchina virtuale di gestione. Il valore predefinito è la sottodirectory DiffDisks nella stessa cartella padre di questo script.
AzureStackCertificatePath Facoltativo Percorso dei certificati da importare nella macchina virtuale per l'accesso all'hub di Azure Stack.
AzSStampInfoFilePath Facoltativo Percorso del file AzureStackStampInformation.json in cui lo script può recuperare gli INDIRIZZI IP della macchina virtuale ERCS.
CertificatePassword Facoltativo Password del certificato da importare nella macchina virtuale per l'accesso all'hub di Azure Stack.
ERCSVMIP Facoltativo IP delle macchine virtuali ERCS dell'hub di Azure Stack da aggiungere all'elenco host attendibile della macchina virtuale. Non funzionerà se -SkipNetworkConfiguration è impostato.
SkipNetworkConfiguration Facoltativo Ignora la configurazione di rete per la macchina virtuale in modo che l'utente possa configurare in un secondo momento.
DeploymentDataFilePath Facoltativo Percorso di DeploymentData.json. Non funzionerà se -SkipNetworkConfiguration è impostato.
PhysicalAdapterMACAddress Facoltativo Indirizzo MAC della scheda di rete dell'host che verrà usata per connettere la macchina virtuale a.
- Se è presente una sola scheda di rete fisica, questo parametro non è necessario e verrà usata l'unica scheda di rete.
- Se sono presenti più schede di rete fisiche, questo parametro è necessario per specificare quale usare.
VirtualSwitchName Facoltativo Nome del commutatore virtuale che deve essere configurato in Hyper-V per la macchina virtuale.
- Se è presente VMSwitch con il nome specificato, verrà selezionato vmSwitch.
- Se non è presente vmSwitch con il nome specificato, verrà creato un vmSwitch con il nome specificato.
Re-Create Facoltativo Rimuove e ricrea la macchina virtuale se esiste già una macchina virtuale con lo stesso nome.

Controllare la versione della macchina virtuale OAW

  1. Accedere alla macchina virtuale OAW con le credenziali.

  2. Aprire Windows PowerShell ISE ed eseguire lo script seguente:

    C:\Version\Get-Version.ps1
    

    Ad esempio:

    Screenshot del cmdlet di PowerShell per verificare la versione Hardware LifeCycle Host.

Trasferire file tra HLH e OAW

Se è necessario trasferire file tra HLH e OAW, creare una condivisione SMB usando il cmdlet New-SmbShare . New-SmbShare espone una cartella del file system ai client remoti come condivisione SMB (Server Message Block). Ad esempio:

Per eliminare una condivisione creata da questo cmdlet, usare il cmdlet Remove-SmbShare .

Rimuovere la macchina virtuale OAW

Lo script seguente rimuove la macchina virtuale OAW, usata per accedere all'hub di Azure Stack per l'amministrazione e la diagnostica. Questo script rimuove anche i file del disco e il guardiano associato alla macchina virtuale.

  1. Accedere a HLH con le credenziali.

  2. Aprire una sessione di PowerShell con privilegi elevati.

  3. Passare al contenuto estratto del file OAW.zip installato.

  4. Rimuovere la macchina virtuale eseguendo lo script Remove-OAW.ps1:

    .\Remove-OAW.ps1 -VirtualMachineName \<name\>
    

    Dove <name> è il nome della macchina virtuale da rimuovere. Per impostazione predefinita, il nome è AzSOAW.

    Ad esempio:

    .\Remove-OAW.ps1 -VirtualMachineName AzSOAW
    

Passaggi successivi

Attività di gestione di Azure Stack