Azure Stack HCI を Hyper-V VM として構築する
TL;DR
- Hyper-V VM で Azure Stack HCI を構築し隊
- スクリーンショットいっぱいでわかりやすく
- 注意点がいっぱいあるので注意
はじめに
VMware の Broadcom 買収に伴うもろもろにより、Azure Stack HCI の注目度が上がってきてるように思います。
ということで、Azure Stack HCI の検証環境を構築したいみなさまに向けて、Hyper-V VM での構築例をご紹介します!
デプロイの前提条件
Azure Stack HCI にはハードウェア、ネットワークなど Azure Stack HCI バージョン 23H2 をデプロイするための前提条件 があり、サポートを受けるためにはこれらを満たす必要があります。
ただ、今回は検証環境なので、そういうものは放っておいて、とりあえず Azure Stack HCI で VM が立てられればいいだろう、くらいの最小要件を目指していきます。
事前準備
Active Directory の準備
さすが Microsoft 製品だなと思わせますが、Azure Stack HCI は Active Directory が必要です。
内部的に Windows Server Failover Cluster (WSFC) が使われていることなどが理由かと考えています。
Azure Stack HCI バージョン 23H2 デプロイ用に Active Directory を準備する を参考に、専用の OU とユーザーを作成しておきます。
Azure Stack HCI の ISO ファイルのダウンロード
Azure Stack HCI の ISO ファイルが必要になるので、Azure Stack HCI バージョン 23H2 ソフトウェアをダウンロードする を参考にして、ダウンロードしておきます。
Hyper-V VM を立てる
ということで、Hyper-V VM を作成していきましょう。
Hyper-V Manager から設定可能なものがほとんどですが、一部は PowerShell での設定が必要です。
Hyper-V VM を立てる
まずは全体の外側というか、Hyper-V VM 自体を作ります。
-
Name
適当にどうぞ。
-
Generation
特にこだわりがなければ Generation 2 でよいです。
-
Memory
システム要件としては 32GB です。Azure Stack HCI 上に VM を構築しなくてもよいのであれば 14GB くらいでも動いてる気がします。
-
Network
後でインターネットに出れる必要があるので NAT とかなんでもいいんですけどつなげておきます。
-
Disk
システム要件としては 200GB くらいだった気がするので、キリのよい 256GB にしておきます。
-
Installation Options
別途ダウンロードしておいた Azure Stack HCI の iso を参照しておきます。
-
Summary
もろもろ確認して作成しましょう。
Hyper-V VM のカスタマイズ - Hyper-V Manager
最初のウィザードでは設定できないものがいくつかあるので、作成後、初回起動前にカスタマイズします。
もろもろの内容をセットしたら、「Apply」を押して反映します。
-
Security
なんとなく vTPM 有効化しておきます。
-
Processor
初期状態では 1 vCPU になるかと思いますが、とても動くものではないので適当に増やしておきます。
-
SCSI Controller
500GB 以上のディスクが 2 本必要になるので、キリのよい 512GB のディスクを 2 つ作成してくっつけておきます。
まず、「Hard Drive」が選択されている状態で、右下の「Add」をクリックします。
ここでは「New」をクリックします。
ウィザードが開くので適当に進めます。
-
Network Adapter - Advanced Features
「Enable MAC address spoofing」 と「Enable device naming」を有効化しておきます。
-
Integration Services
Guest services を有効化しておきます。
-
Checkpoints
好みの問題ですが、なんかあんまり好きではないので無効化しておきます。
Hyper-V VM のカスタマイズ - PowerShell
Nested Virtualization (入れ子になった仮想化) を有効化したいのですが、Hyper-V Manager からは設定できないので PowerShell で設定します。
Set-VMProcessor -VMName <VirtualMachine> -ExposeVirtualizationExtensions $true
Azure Stack HCI OS をインストールする
Azure Stack HCI バージョン 23H2 オペレーティング システムをインストールする を参考にいい感じにやっていきます。
最後に以下の PowerShell を実行する箇所があります。
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
が、どうも足りないっぽいので以下の PowerShell も追加で実行しておきます。
Install-WindowsFeature -Name Failover-Clustering -IncludeAllSubFeature -IncludeManagementTools
Arc に登録する
サーバーを登録し、Azure Stack HCI バージョン 23H2 デプロイのアクセス許可を割り当てる を参考にいい感じに。
Azure Stack HCI をデプロイ
いい言い方が分からないですが、さっきまでの手順はハードウェアへの OS のインストール、Arc への登録、という感じで、ここで初めて Azure Stack HCI として使えるように Azure Resource Bridge (ARB) など含めて準備が整う感じです。
Azure portalを使用して Azure Stack HCI バージョン 23H2 システムをデプロイする の手順を踏めば大体大丈夫です。
進捗状況は Azure Stack HCI > Settings > Deployments から確認ができます。
トラブルシュートに役立つかも情報
-
Azure Stack HCI にリモートからアクセスする前の準備
管理者として実行している PowerShell から実施します。なんかローカルで IP アドレスの許可リストを持っている感じっぽい。
-Concatenate
を入れないと元の内容と置き換わっちゃうので注意します。
Set-Item wsman:\localhost\Client\TrustedHosts 192.168.11.201 -Concatenate
- Azure Stack HCI にリモートからアクセス
Enter-PSSession -ComputerName 192.168.11.201 -Credential administrator
Azure Stack HCI としてのデプロイが完了した後には、アカウント名が変わるので注意します。
Enter-PSSession -ComputerName 192.168.11.201 -Credential asbuiltinadmin
-
Arc としての接続確認
Connected Machine agent に様子を伺います。
azcmagent show
-
既定でのメモリの使いっぷり
名前からして Azure Stack HCI の control plane 的な VM が動いており、8GB のメモリを割り当てられています。そのほかに Azure Stack HCI OS として利用している分を考えると、14GB くらいは必要そうです。実際、20GB を全体として割り当てて Azure Stack HCI を構成したのち、8GB のメモリを割り当てた Azure Stack HCI VM はメモリ不足で起動しませんでした。
> Get-VM
Name State CPUUsage(%) MemoryAssigned(M) Uptime Status Version
---- ----- ----------- ----------------- ------ ------ -------
xxxxxxxxxxxxxxx-control-plane-0-111ea396 Running 9 8192 21:53:11.1770000 Operating normally 11.2
-
Azure Stack HCI のデプロイにおいて「Create the cluster」で止まる
以下の PowerShell コマンドの実行が足りていないかもしれません。docs には今のところ書いてないのですが、入れると動くのでとりあえずはい。
Install-WindowsFeature -Name Failover-Clustering -IncludeAllSubFeature -IncludeManagementTools
-
Azure Stack HCI のデプロイにおいて「Deploy Arc infrastructure components」で止まる
たぶんここが一番の難所というか、純粋に時間がかかります。手元の結果を見ていると、1h ほどかかることもありそうです。じっくり待っていてください。
-
Azure Stack HCI のデプロイにおいて「~」で止まる
「Install OS updates (10 分)」「Clean up post update (20分)」「Deploy Arc infrastructure components (1時間)」あたりが比較的長いステップな気がします。人生が一億年あると思って待ちましょう。
参考
- Azure Stack HCI バージョン 23H2 デプロイの概要
- メモ的な Zenn の scrap
- Azure Stack HCI バージョン 23H2 のセキュリティ機能
- 入れ子になった仮想化による仮想マシンでの Hyper-V の実行
- How to add more than one machine to the trusted hosts list using winrm
- MS-01 はいいぞ!
- Jumpstart HCIBox を小さくしてみる
Discussion