Рабочая станция доступа к оператору Azure Stack Hub
Рабочая станция доступа к операторам (OAW) используется для развертывания виртуальной машины на узле жизненного цикла оборудования Azure Stack Hub (HLH) или на любом другом компьютере, на котором выполняется Microsoft Hyper-V. Для этого требуется сетевое подключение к конечным точкам Azure Stack Hub, которые будут использоваться для сценариев оператора или пользователя.
Виртуальная машина OAW — это необязательная виртуальная машина, которая не требуется для работы Azure Stack Hub. Она предназначена для предоставления новейших инструментов операторам или пользователям при взаимодействии с Azure Stack Hub.
Сценарии OAW
В следующих таблицах перечислены распространенные сценарии для OAW. Используйте удаленный рабочий стол для подключения к OAW.
| Сценарий | Описание |
|---|---|
| Доступ к порталу администрирования | Выполнение административных операций. |
| Доступ к PEP | Сбор журналов и отправка: -Создайте общий ресурс SMB в HLH для передачи файлов из Azure Stack Hub. -Используйте Обозреватель службы хранилища Azure для отправки журналов, сохраненных в общей папке SMB. |
| Регистрация Azure Stack Hub | Для повторной регистрации получите предыдущее имя регистрации и группу ресурсов на портале администрирования. |
| Синдикация Marketplace | Создайте общую папку SMB в HLH, чтобы сохранить скачанный образ или расширение. |
| Создание Виртуальные машины | Создание виртуальных машин с помощью Azure CLI. |
| Управление AKS | Управление кластерами AKS, например масштабированием или обновлением. |
Предустановленное ПО
В следующей таблице перечислены предварительно установленные программы на виртуальной машине OAW.
| Имя программного обеспечения | Расположение |
|---|---|
| Microsoft Edge для бизнеса | [SystemDrive]\Program Files (x86)\Microsoft\Edge\Application |
| Модули Az | [SystemDrive]\ProgramFiles\WindowsPowerShell\Modules |
| PowerShell 7 | [SystemDrive]\Program Files\PowerShell\7 |
| Интерфейс командной строки Azure (CLI) | [SystemDrive]\Program Files (x86)\Microsoft SDKs\Azure\CLI2 |
| Обозреватель службы хранилища Microsoft Azure | [SystemDrive]\Program Files (x86)\Обозреватель службы хранилища Microsoft Azure |
| AzCopy | [SystemDrive]\VMSoftware\azcopy_windows_amd64_* |
| AzureStack-Tools | [SystemDrive]\VMSoftware\AzureStack-Tools |
Загрузка файлов
Чтобы получить файлы для создания виртуальной машины OAW, скачайте здесь. Перед скачиванием обязательно ознакомьтесь с заявлением майкрософт о конфиденциальности и юридическими условиями .
Из-за характера решения без отслеживания состояния обновления для виртуальной машины OAW отсутствуют. Для каждой вехи выпускается новая версия файла образа виртуальной машины. Используйте последнюю версию для создания новой виртуальной машины OAW. Файл образа основан на последней версии Windows Server 2019. После установки можно применить обновления, включая любые критические обновления, с помощью клиентский компонент Центра обновления Windows.
Проверьте хэш скачаемого файла OAW.zip, чтобы убедиться, что он не был изменен до его использования для создания виртуальной машины OAW. Запустите следующий сценарий PowerShell. Если возвращаемое значение равно True, можно использовать скачанный OAW.zip:
Примечание
Разблокируйте файлы скриптов после извлечения скачивания.
param(
[Parameter(Mandatory=$True)]
[ValidateNotNullOrEmpty()]
[ValidateScript({Test-Path $_ -PathType Leaf})]
[string]
$DownloadedOAWZipFilePath
)
$expectedHash = '2F6242F122532E176A5FACD694C132D3DAFD50D0F17F5F23F26A8102C7BA6157'
$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"
}
Другой способ скопировать этот скрипт в среду — использовать командлет Test-FileHash, предлагаемый в AzureStack-Tools , чтобы проверить хэш файла OAW.zip:
Скачайте файл Test-FileHash.psm1 из GitHub и выполните следующую команду:
Import-Module .\Test-FileHash.psm1 -Force -VerboseПосле импорта модуля Test-FileHash проверьте хэш файла OAW.zip:
Test-FileHash -ExpectedHash "2F6242F122532E176A5FACD694C132D3DAFD50D0F17F5F23F26A8102C7BA6157" -FilePath "<path to the OAW.zip file>"
Проверка версии HLH
Примечание
Этот шаг важен, чтобы определить, развертываете ли OAW в HLH, развернутом с помощью образа Майкрософт или образа OEM. Этот командлет PowerShell отсутствует в HLH, развернутом с помощью образа OEM. Если вы развертываете OAW на общем Microsoft Hyper-V, этот шаг можно пропустить.
Войдите в HLH с учетными данными.
Откройте isE PowerShell и выполните следующий сценарий:
C:\Version\Get-Version.ps1Пример:

Создание виртуальной машины OAW с помощью скрипта
Следующий скрипт подготавливает виртуальную машину в качестве рабочей станции доступа к операторам (OAW), которая используется для доступа к Microsoft Azure Stack Hub.
Войдите в HLH с учетными данными.
Скачайте OAW.zip и извлеките файлы.
Откройте сеанс PowerShell с повышенными привилегиями.
Перейдите к извлеченное содержимое файла OAW.zip.
Запустите скрипт New-OAW.ps1.
Пример. Развертывание в HLH с помощью образа Майкрософт
$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 }
Пример. Развертывание в HLH с помощью образа 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' }
AzureStackStampInformation.json Если файл содержит префикс именования для виртуальной машины OAW, это значение будет использоваться для VirtualMachineName параметра. В противном случае имя по умолчанию — это AzSOAW имя или любое имя, указанное пользователем. Его AzureStackStampInformation.json можно повторно создать с помощью привилегированной конечной точки , если она отсутствует в HLH.
Примечание
Этот параметр AzureStackCertificatePath следует использовать только при развертывании Azure Stack Hub с использованием сертификатов, выданных центром сертификации предприятия. Если он DeploymentData.json недоступен, обратитесь к своему партнеру по оборудованию, чтобы получить его или продолжить развертывание в примере на Microsoft Hyper-V.
Пример. Развертывание в Microsoft Hyper-V
На компьютере, на котором выполняется Microsoft Hyper-V, требуется четыре (4) ядра и два (2) ГБ доступной памяти. Командлеты PowerShell создают виртуальную машину OAW без применения IP-конфигурации к гостевого сетевого интерфейса. Если вы используете пример для подготовки OAW в HLH, необходимо настроить IP-адрес, первоначально используемый виртуальной машиной развертывания (DVM), который обычно является вторым по последнему IP-адресу сети BMC.
| Примеры | IP-адреса. |
|---|---|
| Сеть BMC | 10.26.5.192/26 |
| IP-адрес первого узла | 10.26.5.193 |
| Ip-адрес последнего узла | 10.26.5.254 |
| DVM/OAW IP | 10.26.5.253 |
| Маска подсети | 255.255.255.192 |
| Шлюз по умолчанию | 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 }
Примечание
Этот параметр AzureStackCertificatePath следует использовать только при развертывании Azure Stack Hub с использованием сертификатов, выданных центром сертификации предприятия. Виртуальная машина OAW будет развернута без настройки сети. Вы можете настроить статический IP-адрес или получить IP-адрес через DHCP.
Политика учетных записей пользователей
К виртуальной машине OAW применяется следующая политика учетной записи пользователя:
- Встроенное имя администратора: AdminUser
- MinimumPasswordLength = 14
- Включена функция PasswordComplexity
- MinimumPasswordAge = 1 (день)
- MaximumPasswordAge = 42 (в днях)
- NewGuestName = GUser (отключен по умолчанию)
Параметры командлета New-OAW
Для New-OAW доступны два набора параметров. Необязательные параметры отображаются в квадратных скобках.
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>]
В следующей таблице перечислены определения для каждого параметра.
| Параметр | Обязательный/необязательный | Описание |
|---|---|---|
| LocalAdministratorPassword | Обязательно | Пароль для учетной записи локального администратора виртуальной машины AdminUser. |
| IPAddress | Обязательно | Статический IPv4-адрес для настройки TCP/IP на виртуальной машине. |
| SubnetMask | Обязательно | Маска подсети IPv4 для настройки TCP/IP на виртуальной машине. |
| DefaultGateway | Обязательно | IPv4-адрес шлюза по умолчанию для настройки TCP/IP на виртуальной машине. |
| DNS | Обязательно | DNS-серверы для настройки TCP/IP на виртуальной машине. |
| TimeServer | Обязательно | IP-адрес сервера времени, из которого синхронизируется Azure Stack Hub, который также будет источником времени, из которого выполняется синхронизация OAW. Проверьте AzureStackStampInformation.json или попросите администратора указать IP-адрес сервера времени, с которым выполняется синхронизация Концентратора. В случае срочности и не удалось получить IP-адрес сервера времени, с которым синхронизирован центр, можно ввести сервер времени по умолчанию time server time.windows.com, 0x8 для этого параметра. Обратите внимание, что настоятельно рекомендуется убедиться, что время в OAW и Центре синхронизировано, чтобы избежать потенциальных проблем неравномерного распределения часов при работе в OAW для взаимодействия с Концентратором. |
| ImageFilePath | Необязательно | Путь OAW.vhdx, предоставляемый корпорацией Майкрософт. Значение по умолчанию — OAW.vhdx в той же родительской папке этого скрипта. |
| VirtualMachineName | Необязательно | Имя, присваиваемое виртуальной машине. Если префикс именования можно найти в файле DeploymentData.json, он будет использоваться в качестве имени по умолчанию. В противном случае AzSOAWбудет использоваться в качестве имени по умолчанию. Можно указать другое имя, чтобы перезаписать значение по умолчанию. |
| VirtualMachineMemory | Необязательно | Память, назначенная виртуальной машине. Значение по умолчанию — 2 ГБ. |
| VirtualProcessorCount | Необязательно | Количество виртуальных процессоров, назначенных виртуальной машине. Значение по умолчанию — 4. |
| VirtualMachineDiffDiskPath | Необязательно | Путь к хранению временных файлов диска разбиения во время активности виртуальной машины управления. Значение по умолчанию — подкаталог DiffDisks в той же родительской папке этого скрипта. |
| AzureStackCertificatePath | Необязательно | Путь к сертификатам, импортируемым на виртуальную машину для доступа к Azure Stack Hub. |
| AzSStampInfoFilePath | Необязательно | Путь к файлу AzureStackStampInformation.json, где скрипт может получить IP-адреса виртуальной машины ERCS. |
| CertificatePassword | Необязательно | Пароль сертификата, импортируемого на виртуальную машину для доступа к Azure Stack Hub. |
| ERCSVMIP | Необязательно | IP-адрес виртуальных машин Azure Stack Hub ERCS, добавляемых в список доверенных узлов виртуальной машины. Не вступит в силу, если задан параметр -SkipNetworkConfiguration . |
| SkipNetworkConfiguration | Необязательно | Пропускает конфигурацию сети для виртуальной машины, чтобы пользователь смог настроить позже. |
| DeploymentDataFilePath | Необязательно | Путь к DeploymentData.json. Не вступит в силу, если задан параметр -SkipNetworkConfiguration . |
| PhysicalAdapterMACAddress | Необязательно | MAC-адрес сетевого адаптера узла, к которому будет использоваться подключение виртуальной машины. — Если существует только один физический сетевой адаптер, этот параметр не нужен и будет использоваться только сетевой адаптер. — Если существует несколько физических сетевых адаптеров, этот параметр требуется, чтобы указать, какой из них следует использовать. |
| VirtualSwitchName | Необязательно | Имя виртуального коммутатора, который необходимо настроить в Hyper-V для виртуальной машины. — При наличии VMSwitch с указанным именем будет выбран такой VMSwitch. — Если vmSwitch с указанным именем отсутствует, vmSwitch будет создан с указанным именем. |
| Re-Create | Необязательно | Удаляет и повторно создает виртуальную машину, если уже существует виртуальная машина с тем же именем. |
Проверка версии виртуальной машины OAW
Войдите в виртуальную машину OAW с учетными данными.
Откройте powerShell ISE и выполните следующий сценарий:
C:\\Version\\Get-Version.ps1Пример:

Передача файлов между HLH и OAW
Если необходимо передать файлы между HLH и OAW, создайте общую папку SMB с помощью командлета New-SmbShare . New-SmbShare предоставляет папку файловой системы удаленным клиентам в качестве общего ресурса SMB. Вот несколько примеров.
Чтобы удалить общую папку, созданную этим командлетом, используйте командлет Remove-SmbShare .
Удаление виртуальной машины OAW
Следующий сценарий удаляет виртуальную машину OAW, которая используется для доступа к Azure Stack Hub для администрирования и диагностики. Этот скрипт также удаляет файлы диска и опекун, связанные с виртуальной машиной.
Войдите в HLH с помощью учетных данных.
Откройте сеанс PowerShell с повышенными привилегиями.
Перейдите к извлеченное содержимое установленного файла OAW.zip.
Удалите виртуальную машину, запустив сценарий Remove-OAW.ps1:
Remove-OAW.ps1 -VirtualMachineName \<name\>> Имя <удаляемой виртуальной машины. По умолчанию используется имя AzSOAW.
Например:
Remove-OAW.ps1 -VirtualMachineName AzSOAW