Рабочая станция доступа к оператору 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 Storage Explorer |
AzCopy | [SystemDrive]\VMSoftware\azcopy_windows_amd64_* |
AzureStack-Tools | [SystemDrive]\VMSoftware\AzureStack-Tools |
Загрузка файлов
Файлы для создания виртуальной машины OAW можно загрузить здесь. Перед скачиванием обязательно ознакомьтесь с заявлением о конфиденциальности и юридическими условиями корпорации Майкрософт.
Учитывая, что решение не предполагает возможности отслеживания состояния, обновления для виртуальной машины OAW отсутствуют. Для каждой вехи выпускается новая версия файла образа виртуальной машины. Используйте последнюю версию для создания новой виртуальной машины ОАW. Файл образа создан на основе последней версии Windows Server 2019. После установки можно применить обновления, включая все критические обновления, используя клиентский компонент Центра обновления Windows.
Проверьте хэш загружаемого файла OAW.zip, чтобы убедиться, что он не был изменен до того, как его использовали для создания виртуальной машины OAW. Запустите следующий сценарий PowerShell. Если возвращается значение True, можно использовать загруженный OAW.zip:
Примечание
Разблокируйте файлы скриптов после извлечения скачиваемого файла.
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"
}
Еще один способ скопировать этот скрипт в среду — использовать командлет Test-FileHash, который доступен в AzureStack-Tools, чтобы проверить хэш файла OAW.zip:
Загрузите файл Test-FileHash.psm1 из GitHub и выполните следующую команду:
Import-Module .\Test-FileHash.psm1 -Force -Verbose
После импорта модуля Test-FileHash проверьте хэш файла OAW.zip:
Test-FileHash -ExpectedHash "4B5CE0EA6FA12C4A95EBDE4223BEED5B9D98D7D9FC7DA1D5C72D3620725E5119" -FilePath "<path to the OAW.zip file>"
Проверка версии HLH
Примечание
Этот шаг важен для определения того, развертывается ли OAW на HLH, развернутом с помощью образа Майкрософт или oem. Этот командлет PowerShell отсутствует в HLH, развернутом с помощью образа OEM. Если вы развертываете OAW на общем Microsoft Hyper-V, этот шаг можно пропустить.
Войдите в HLH с учетными данными.
Откройте интегрированную среду сценариев 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.windows.com, 0x8 для этого параметра. Обратите внимание, что настоятельно рекомендуется синхронизировать время в OAW и концентраторе, чтобы избежать потенциальных проблем неравномерного распределения часов при работе в OAW для взаимодействия с концентратором. |
ImageFilePath | Необязательно | Путь к OAW.vhdx, предоставленный корпорацией Майкрософт. Значение по умолчанию — OAW.vhdx в той же родительской папке этого скрипта. |
VirtualMachineName | Необязательно | Имя, назначаемое виртуальной машине. Если префикс именования можно найти в файле DeploymentData.json, он будет использоваться в качестве имени по умолчанию. В противном случае в качестве имени по умолчанию будет использоваться AzSOAW. Можно указать другое имя, чтобы перезаписать значение по умолчанию. |
VirtualMachineMemory | Необязательно | Память, назначаемая виртуальной машине. Значение по умолчанию — 2 ГБ. |
VirtualProcessorCount | Необязательно | Число виртуальных процессоров, назначаемых виртуальной машине. Значение по умолчанию — 4. |
VirtualMachineDiffDiskPath | Необязательно | Путь для хранения временных файлов diff диска, пока виртуальная машина управления была активна. Значение по умолчанию — подкаталог DiffDisks в той же родительской папке этого скрипта. |
AzureStackCertificatePath | Необязательно | Путь к сертификатам для импорта на виртуальную машину для доступа к Azure Stack Hub. |
AzSStampInfoFilePath | Необязательно | Путь к файлу AzureStackStampInformation.json, в котором скрипт может получить IP-адреса виртуальной машины ERCS. |
CertificatePassword | Необязательно | Пароль сертификата, импортируемого на виртуальную машину для доступа к Azure Stack Hub. |
ERCSVMIP | Необязательно | IP-адрес виртуальных машин ERCS Azure Stack Hub, добавляемых в список доверенных узлов виртуальной машины. Не вступит в силу, если задан параметр -SkipNetworkConfiguration . |
SkipNetworkConfiguration | Необязательно | Пропускает конфигурацию сети для виртуальной машины, чтобы пользователь смог настроить ее позже. |
DeploymentDataFilePath | Необязательно | Путь к DeploymentData.json. Не вступит в силу, если задан параметр -SkipNetworkConfiguration . |
PhysicalAdapterMACAddress | Необязательно | MAC-адрес сетевого адаптера узла, который будет использоваться для подключения виртуальной машины. — Если существует только один физический сетевой адаптер, этот параметр не требуется и будет использоваться только сетевой адаптер. — При наличии нескольких физических сетевых адаптеров этот параметр требуется, чтобы указать, какой из них следует использовать. |
VirtualSwitchName | Необязательно | Имя виртуального коммутатора, который необходимо настроить в Hyper-V для виртуальной машины. — Если имеется VMSwitch с указанным именем, будет выбран такой коммутатор VMSwitch. — Если vmSwitch с указанным именем отсутствует, будет создан vmSwitch с указанным именем. |
Re-Create | Необязательно | Удаляет и повторно создает виртуальную машину, если уже существует виртуальная машина с тем же именем. |
Проверка версии виртуальной машины OAW
Войдите на виртуальную машину OAW, используя свои учетные данные.
Откройте интегрированную среду сценариев PowerShell и выполните следующий сценарий:
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\>
Где <name> — это имя удаляемой виртуальной машины. По умолчанию используется имя AzSOAW.
Пример:
.\Remove-OAW.ps1 -VirtualMachineName AzSOAW