Azure Stack HCI のラボ (Jumpstart HCIBox 23H2) を展開してみよう
はじめに
Azure Stack HCI は、Microsoft のハイブリッド環境向けソリューションの 1 つです。
"Azure Stack HCI OS" という、専用の OS が提供されており、この HCI OS をインストールしたサーバーを基本的には複数台クラスタリングして利用します。(クラスタリングしない単体利用も可能です)
この Azure Stack HCI の最新バージョンである 23H2 がリリースされました!
- Azure 更新情報 : Generally Available: Azure Stack HCI latest feature release
- tech community blog : Azure Stack HCI version 23H2 is generally available
本来、Azure Stack HCI は、試すためには 物理ハードが必要になります。
ですが、Azure 上に入れ子になった仮想化が有効化された VM 上に環境が一式簡単に用意できる Jumpstart HCIBox というラボ環境が提供されています!
23H2 版が提供されていますので、今回こちらを展開してみることとしました!
さっそく試してみる
0. 作業用PCの構成 (Azure Developer CLI のインストール等)
今回は Azure Developer CLI を利用して、ラボ環境を展開してみました。
参考まで、Azure Developer CLI 等のインストール手順を載せておきます。
なお、私の手元の環境では Azure CLI もちゃんとログインをしないと処理が進まなかったため、一応、Azure CLI も含めたインストール手順を記載しておきます。
参考画面キャプチャ:Azure Developer CLI + Azure CLI + Git のインストール
0-1. Azure Developer CLI
Azure Developer CLI をインストールします。
PowerShell を起動し、以下のコマンドを実行します。
powershell -ex AllSigned -c "Invoke-RestMethod 'https://aka.ms/install-azd.ps1' | Invoke-Expression"
0-2. Azure CLI
Azure CLI をインストールします。
PowerShell を起動し、以下のコマンドを実行します。
$ProgressPreference = 'SilentlyContinue'; Invoke-WebRequest -Uri https://aka.ms/installazurecliwindows -OutFile .\AzureCLI.msi; Start-Process msiexec.exe -Wait -ArgumentList '/I AzureCLI.msi /quiet'; Remove-Item .\AzureCLI.msi
32 ビットの Azure CLI が、C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2 にインストールされます。
0-3. Git
Git をインストールします。
Click here to download を選ぶか、Standalone Installer - 64bitを選ぶと、インストーラをダウンロードできます。
インストーラーを起動後は、全て既定値のままインストールを進めていきます。
1. 環境の準備
前述の通り、今回は Azure Developer CLI を利用して、ラボ環境を展開します。
基本的には、手順は Deploy HCIBox infrastructure with Azure Developer CLI に記載されています。
1-1. Jumpstart HCIBox リポジトリをクローン
以下のコマンドを実行して、Jumpstart HCIBox のリポジトリをクローンします。
git clone https://github.com/microsoft/azure_arc.git
クローンしたリポジトリ azure_arc
内の azure_jumpstart_hcibox
ディレクトリに移動します。
cd .\azure_arc\azure_jumpstart_hcibox
1-2. Azure ログイン( azd auth login , az login )
前述の通り、私の手元の環境では Azure CLI もちゃんとログインをしないと処理が進まなかったため、一応、合わせて記載しておきます。
それぞれ、実行するとブラウザが立ち上がり、 Azure への認証画面が表示されますのでログインを行います。
なお、複数テナントに所属している場合は、以下のように --tenant-id
を指定し、しっかりと、対象サブスクリプション がある テナントID を指定してログインを行います。
azd auth login --tenant-id <テナントID>
az login --tenant-id <テナントID>
1-3. Azure Developer CLI 新しいアプリケーション を初期化
azd init
で初期化を行います。
環境名を指定しますが、ここで指定した環境名は、後で展開するリソース名の接頭辞になります。
例えば、 hcibox
とした場合、作成されるリソースグループ名は hcibox-rg
となります。
azd init
2 . Jumpstart HCIBox を展開
2-1 . Azure Developer CLI で、Azure IaaS VM を展開
まずはAzure 上に VM を中心としたいくつかのリソースを展開します。
このとき展開される VM は、今後 入れ子になった仮想化を有効化し、nested で Azure Stack HCI ノードx2 や 管理用VM などの展開先となる VM です。
そのため以下のような大きなサイズとなります。
- SKU : Standard E32s v5 (32 vcpu 数、256 GiB メモリ)
- OSDisk : Premium SSD LRS 1024 GiB x 1
- DataDisk : Premium SSD LRS 256 GiB x 8
azd up
で展開を行います。
azd up
デプロイするサブスクリプションを、キーボードの上下キーで選択し、Enter で決定します。
また、同様に、デプロイするリージョンを選択します。
Windows Admin Username [arcdemo] : という形で 管理者ユーザー名 の設定を求められますので、入力します。
続けて、 Bastion を利用するか、 RDP を利用するかを選択します。今回は Bastion を利用することを選択しました。
その後、Windows の管理者ユーザのパスワードを設定するよう求められますので、入力します。
最後に、これまでの設定情報(ユーザー名等) を保存するかを選択します。保存するとした場合は、\azure_arc\azure_jumpstart_hcibox\.azure\hcibox
に保存されます。
そのまま待つこと、約30分程度で、まずは Azure VM のデプロイが完了しました。 (29 minutes 3 seconds)
2-2. Azure VM へログインして、スクリプトを実行
デプロイされた Azure VM にログインして、入れ子になった仮想化を利用した Azure Stack HCI ノードx2 や 管理用VM などの展開を行うためのスクリプトを実行させます。
これ以降の手順について、Jumpstart HCIBox での該当ページは、Start post-deployment automation です。
Azure Portal を開くと、<環境名>-rg
という名前のリソースグループが作成されているはずです。リソースグループ内には、 HCIBox-Client という VM があるはずですので、設定した 管理者ユーザー名/パスワード で、ログインします。
HCIBox-Client へログインしさえすれば、自動的に PowerShell が立ち上がり、スクリプトが自動的に起動されて実行されます。
(しばらく待って進んで無さそうであれば、 Enter を数回押してみると良いかも)
2時間程度で、HCIBox-Client 内に Azure Stack HCI ノードx2 (AzSHost1, AzSHost2) や 管理用VM(AzSMGMT) が展開されます。
展開されると、[Azure Portal] - [Azure Arc] に、Azure Stack HCI が登録されるはずです。
ただし、現時点では、独立した2つの Azure Stack HCI OS インストール済みマシンが Azure Arc 登録されているにすぎず、まだ クラスタリング はされていません。
そこで、以降の手順で、Azure Stack HCI クラスターの検証と構成を行います。
2-3. Azure Stack HCI クラスターの検証にあたり必要な権限の設定
Azure Stack HCI クラスターの検証にあたり、Azure Stack HCI クラスターを登録するリソースグループに対して、キー コンテナー管理者の役割を割り当てます。
Azure Portal から <環境名>-rg
を開き、 [アクセス制御 (IAM)] - [ロールの割り当て] から、キー コンテナー管理者
の役割を割り当てます。
2-4. Azure Stack HCI クラスターの検証
HCIBox-Client 内には C:\HCIBox
というフォルダーが作成されています。
フォルダ内には、hci.json
と hci.parameters.json
というファイルがあるはずなので、それぞれ、開きます。
なおこのファイルは、ARM テンプレート と、そのパラメータファイルであり、本来の手順の、以下箇所までを skip している形になっています。
Azure Resource Manager デプロイ テンプレートを使用して Azure Stack HCI バージョン 23H2 をデプロイする - 手順 3: ARM テンプレートを使用してデプロイする
この ARM テンプレートを利用して、Azure Stack HCI クラスターを構成します。
Azure Portal にログインし、[カスタムテンプレートのデプロイ] を開きます。
[エディターで独自のテンプレートを作成する] を開きます。
右側のエディターに、先ほどの hci.json
の内容を貼り付け、保存します。
続いて、パラメーターの編集を開き、先ほどの hci.parameters.json
の内容を貼り付けて、保存します。
リソースグループ 欄以外は、指定された状態になるはずです。リソースグループには先ほど権限を設定した <環境名>-rg
を指定し、確認と作成 に進んで、検証を開始します。
15分程で、検証が完了しました。
2-5. Azure Stack HCI クラスターの構成
検証が完了すると、Azure Arc の [Azure Stack HCI] 欄に、Azure Stack HCI クラスターのリソースが登録(仮登録といったほうがいいかもしれませんが)されているはずです。
クラスターリソースを開くと、上部にバナーで、検証は完了したが、まだデプロイはされていない旨が、表示されます。
バナーのリンクを開き、クラスタの構成を開始します。
私の場合には、およそ合計で 3 時間程度で構成が完了しました。
なお、途中で HCIBox-Client の VM自体 を夜間に一時的に停止し、翌朝再開させるような形でクラスタの構成作業を中断させてしまいました。が、それでも特に何事もなく、自動的に処理は再開され、無事構築が完了しました。
参考までに、全ステップを載せておきます。
3. できあがり
Azure Stack HCI クラスターの構成が完了しました!
できあがった環境を、少し Azure Portal から覗いてみます。
出来上がった環境で何を試すか、ですが、まずは基本中の基本として、VM を立ててみるのが良さそうです。
すでにリソースブリッジ等も展開されているので、Azure Portal から、Azure Marketplace で提供されている OS イメージを利用して、VM を立てることができます。
基本的には、Azure Stack HCI クラスター内に OSイメージを保存し、次に、そのイメージを使って Azure Stack HCI で Arc 仮想マシンを作成する、といった流れになります。
Jumpstart HCIBOX 上で試す際の手順としては Virtual machine provisioning with Azure Arc が、案内されています。
公式ドキュメント的には、このあたりです。
- https://learn.microsoft.com/ja-jp/azure-stack/hci/manage/virtual-machine-image-azure-marketplace?tabs=azureportal
- https://learn.microsoft.com/ja-jp/azure-stack/hci/manage/create-arc-virtual-machines?tabs=azureportal
現在のOSバージョン の リンク を開くと、最新ではなく、若干古いバージョンであることがわかります。
検証する内容によっては、最新のバージョンに更新する必要がありそうです。
- 10.2311.0.26 は プレビュー版:Azure Stack HCI 2311 リリースの既知の問題に関するリリース ノート (プレビュー) - Azure Stack HCI | Microsoft Learn
- 10.2311.2.7 が GA版:Azure Stack HCI 2311.2 GA リリースの修正済みおよび既知の問題に関するリリース ノート - Azure Stack HCI | Microsoft Learn
Azure Portal から Azure Stack HCI クラスターをデプロイする方法(Ignite参考動画)
2-4. ~ 2-5 までの箇所、Azure Portal からデプロイする方法については、2023年11月 Microsoft Ignite 2023 でのデモが参考になるかと思います。
Discussion