Рабочая станция доступа к оператору 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 = '73BE1564EE7357691A44DB3BD01AD5BB931CD029DE613EC6F564E8CDEA59F09D'
$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:

  1. Загрузите файл Test-FileHash.psm1 из GitHub и выполните следующую команду:

    Import-Module .\Test-FileHash.psm1 -Force -Verbose
    
  2. После импорта модуля Test-FileHash проверьте хэш файла OAW.zip:

    Test-FileHash -ExpectedHash "73BE1564EE7357691A44DB3BD01AD5BB931CD029DE613EC6F564E8CDEA59F09D" -FilePath "<path to the OAW.zip file>"
    

Проверка версии HLH

Примечание

Этот шаг важен для определения того, развертывается ли OAW на HLH, развернутом с помощью образа Майкрософт или oem. Этот командлет PowerShell отсутствует в HLH, развернутом с помощью образа OEM. Если вы развертываете OAW на общем Microsoft Hyper-V, этот шаг можно пропустить.

  1. Войдите в HLH с учетными данными.

  2. Откройте интегрированную среду сценариев PowerShell и выполните следующий сценарий:

    C:\Version\Get-Version.ps1
    

    Пример:

    Снимок экрана: командлет PowerShell для проверки версии виртуальной машины OAW.

Создание виртуальной машины OAW с помощью скрипта

Следующий сценарий подготавливает виртуальную машину в качестве рабочей станции доступа к оператору (OAW), которая будет использоваться для доступа к Microsoft Azure Stack Hub.

  1. Войдите в HLH с учетными данными.

  2. Загрузите OAW.zip и извлеките файлы.

  3. Откройте сеанс PowerShell с повышенными привилегиями.

  4. Перейдите к извлеченному содержимому файла OAW.zip.

  5. Запустите скрипт 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

  1. Войдите на виртуальную машину OAW, используя свои учетные данные.

  2. Откройте интегрированную среду сценариев PowerShell и выполните следующий сценарий:

    C:\Version\Get-Version.ps1
    

    Пример:

    Снимок экрана: командлет PowerShell для проверка версии узла LifeCycle.

Передача файлов между HLH и OAW

Если вам нужно передать файлы между HLH и OAW, создайте общую папку SMB с помощью командлета New-SmbShare . New-SmbShare предоставляет папку файловой системы удаленным клиентам в качестве общей папки SMB. Пример:

Чтобы удалить общую папку, созданную этим командлетом, используйте командлет Remove-SmbShare .

Удаление виртуальной машины OAW

Следующий скрипт удаляет виртуальную машину OAW, которая используется для доступа к Azure Stack Hub для администрирования и диагностика. Этот скрипт также удаляет файлы диска и опекун, связанный с виртуальной машиной.

  1. Войдите в HLH, используя свои учетные данные.

  2. Откройте сеанс PowerShell с повышенными привилегиями.

  3. Перейдите к извлеченной содержимой установленного файла OAW.zip.

  4. Удалите виртуальную машину, выполнив скрипт Remove-OAW.ps1:

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

    Где <name> — это имя удаляемой виртуальной машины. По умолчанию используется имя AzSOAW.

    Пример:

    .\Remove-OAW.ps1 -VirtualMachineName AzSOAW
    

Дальнейшие действия

Задачи управления Azure Stack