2026年1月28日水曜日

Azure Local のRack Aware/multi-rack deploymentsで要求されるリソースプロバイダーの登録状況を確認する その2

Azure Local のRack Aware/multi-rack deploymentsで要求されるリソースプロバイダーの登録状況を確認する

では、Azure PowerShellをCloud Shellで実行するようにしました。ただ

Prerequisites for multi-rack deployments of Azure Local (preview)

は、Azure CLIで実行するようになっています。だったら、Azure CLIで登録状況を確認できた方が良いですよね。
改めてChatGPTとやりとりして、Cloud Shellで動作確認したものです。

Cloud Shellにcatを使ってファイルを保存します。

cat << 'EOF' > check-providers.sh
#!/usr/bin/env bash
set -euo pipefail

SUBSCRIPTION_ID="$1"

if [[ -z "${SUBSCRIPTION_ID:-}" ]]; then
  echo "Usage: $0 <subscription-id>"
  exit 1
fi

PROVIDERS=(
  "Microsoft.AzureArcData"
  "Microsoft.Compute"
  "Microsoft.AzureStackHCI"
  "Microsoft.ContainerService"
  "Microsoft.ExtendedLocation"
  "Microsoft.GuestConfiguration"
  "Microsoft.HybridCompute"
  "Microsoft.HybridConnectivity"
  "Microsoft.HybridContainerService"
  "Microsoft.HybridNetwork"
  "Microsoft.Insights"
  "Microsoft.KeyVault"
  "Microsoft.Kubernetes"
  "Microsoft.KubernetesConfiguration"
  "Microsoft.ManagedIdentity"
  "Microsoft.ManagedNetworkFabric"
  "Microsoft.Network"
  "Microsoft.NetworkCloud"
  "Microsoft.OperationalInsights"
  "Microsoft.OperationsManagement"
  "Microsoft.Relay"
  "Microsoft.ResourceConnector"
  "Microsoft.Resources"
  "Microsoft.Storage"
  "Microsoft.NexusIdentity"
)

az account set --subscription "$SUBSCRIPTION_ID"

printf "%-40s %s\n" "Provider" "Status"
printf "%-40s %s\n" "--------" "------"

for ns in "${PROVIDERS[@]}"; do
  state=$(az provider show \
    --namespace "$ns" \
    --query "registrationState" \
    -o tsv 2>/dev/null || echo "NotFound")

  printf "%-40s %s\n" "$ns" "$state"
done
EOF

実行権限を付与します。

chmod +x check-providers.sh

実行権限を付与したので、ファイル名とサブスクリプションIDを指定して実行します。

./check-providers.sh <subscription-id>

実行結果の例を下記に貼ります。


結果の内容自体は、Azure Local のRack Aware/multi-rack deploymentsで要求されるリソースプロバイダーの登録状況を確認する と同じです。

2026年1月27日火曜日

Azure Local のRack Aware/multi-rack deploymentsで要求されるリソースプロバイダーの登録状況を確認する

Prerequisites for multi-rack deployments of Azure Local (preview) - Register resource providers

を読んでいまして、Azure Localの通常デプロイにはないリソースプロバイダーがあるなと。とりあえず、未登録のものを知りたいので、chatGPTとやりとりすること数回。結果、

$subscriptionId = "あなたのサブスクリプションID"
Select-AzSubscription -SubscriptionId $subscriptionId
$providers = @(
  "Microsoft.AzureArcData",
  "Microsoft.Compute",
  "Microsoft.AzureStackHCI",
  "Microsoft.ContainerService",
  "Microsoft.ExtendedLocation",
  "Microsoft.GuestConfiguration",
  "Microsoft.HybridCompute",
  "Microsoft.HybridConnectivity",
  "Microsoft.HybridContainerService",
  "Microsoft.HybridNetwork",
  "Microsoft.Insights",
  "Microsoft.Keyvault",
  "Microsoft.Kubernetes",
  "Microsoft.KubernetesConfiguration",
  "Microsoft.ManagedIdentity",
  "Microsoft.ManagedNetworkFabric",
  "Microsoft.Network",
  "Microsoft.NetworkCloud",
  "Microsoft.OperationalInsights",
  "Microsoft.OperationsManagement",
  "Microsoft.Relay",
  "Microsoft.ResourceConnector",
  "Microsoft.Resources",
  "Microsoft.Storage",
  "Microsoft.NexusIdentity"
)
$providers |
ForEach-Object {
    $rp = Get-AzResourceProvider -ProviderNamespace $_ -ErrorAction SilentlyContinue
    if ($null -eq $rp) {
        [PSCustomObject]@{
            Provider = $_
            Status   = "NotFound"
        }
    }
    else {
        [PSCustomObject]@{
            Provider = $_
            Status   = ($rp | Select-Object -First 1).RegistrationState
        }
    }
} |
Format-Table -AutoSize

が出来上がりました。出力結果は下記の通りなのですが、しばらく待つ必要がありますのでご注意ください。

別途、未登録のリソースプロバイダーを登録するように改良もできますね。

2026年1月22日木曜日

Nested Azure Localクラスターを解体する

PoC環境なので、定期的にNested Azure Localクラスターを解体しています。今回はUpdateに失敗した状況でそれができるかというものです。。。

なおここから記載する順番は、何か根拠があってではなく、デプロイの順番をおおよそ巻き戻していく感じで進めていくことをご了承ください。この手順通りにやったとして何か起きてもご自身でリスクを負っていただきます。(今回は自分自身でもリスクを負っています)

注)アップデートの失敗は、Azureサポートに照会するのが本来かと思います。今回は、PoC故にHyper-Vホストのリソースを開けることを目的としたに解体です。改めてご承知おきください。

一番問題なのが、Azure Localクラスターがアップデート実行中のまま(もしくはアップデートが失敗)であることです。

この状態で、Azure LocalクラスターのリソースをAzureから削除できるのだろうかということで、強行してみます。

最初のエラーは、Lockオブジェクトの削除し忘れなので気にしないでください。

改めてロックオブジェクトを削除します。
Azure Localのオブジェクトを削除します。
無事に削除できました。

続いてAzrure Arc対応サーバーであるAzure Localのノードを削除します。Lockオブジェクトの削除、Extensionの削除、ノードのオブジェクトを削除といった順で進めます。

注)Azure Arc対応サーバーのリソースは、拡張を削除してから削除しています。Azure Arc対応サーバーが稼働している状態で、拡張を削除、Azure Connecte Machine Agentの関連付け削除といった順番です。

あとは、リソースグループに残っている不要なリソースを削除します。下記ではまとめて削除しました。(Arcゲートウェイを除きます)

実際には、Lockオブジェクトを持つストレージアカウントの二つが残りました。こちらはLockオブジェクトを削除後、改めて削除しました。

Azure側の登録解除が終わりましたら、S2D無効化、クラスターの解体、OU内のオブジェクトクリーンアップ、OUの削除、DNSレコードの削除を進めれば完了します。この辺りは、画面キャプチャを省略させていただきます。

2026年1月21日水曜日

Network ATCを入れたつもりが、Windows Admin Centerで未インストールになっていた

Nestec Windows Server 2025に対して、下記のコマンドでNetwork ATCを有効化していました。

install-WindowsFeature -Vhd $VhdPath -Name "BitLocker", "Data-Center-Bridging", "Failover-Clustering", "FS-FileServer", "FS-Data-Deduplication", "Hyper-V", "Hyper-V-PowerShell", "RSAT-AD-Powershell", "RSAT-Clustering-PowerShell", "Storage-Replica", "NetworkATC" -IncludeAllSubFeature -IncludeManagementTools

が、Windows Admin CenterのNetwork ATCが未インストールになっておりました。
Get-WindowsFeatureなど実行しつつ、加えて情報を探してみました。

Network ATC を使用してホスト ネットワークをデプロイする

に下記の記載があり、赤字箇所が足りていないと気づきました。

Install-WindowsFeature -Name NetworkATC, Hyper-V, 'Failover-Clustering', 'Data-Center-Bridging', FS-SMBBW -IncludeManagementTools

Windows Admin CenterでNetwork ATCを有効化前のGet-WindowsFeatureで該当行は、下記でした。
[ ] SMB 帯域幅制限                                                  FS-SMBBW                                         Available
Windows Admin CenterでNetwork ATCを有効化後は、下記でした。
[X] SMB 帯域幅制限                                                  FS-SMBBW                                         Installed

ビンゴでした。。。
ということで、VHDへのInstall-WindowsFeatureを書き直しましたよ。
install-WindowsFeature -Vhd $VhdPath -Name "BitLocker", "Data-Center-Bridging", "Failover-Clustering", "FS-FileServer", "FS-Data-Deduplication", "Hyper-V", "Hyper-V-PowerShell", "RSAT-AD-Powershell", "RSAT-Clustering-PowerShell", "Storage-Replica", "NetworkATC" FS-SMBBW -IncludeAllSubFeature -IncludeManagementTools

2026年1月22日 追伸

下記も参考にいたしました。

Network ATC ってなに?

2025年12月31日水曜日

Azure Local 2512によるRack ware Cluster

Azure Local 2511によるRack aware cluster

とは異なり最小構成の2ノード(1+1)でデプロイしてみます。
※Nested Azure Localですが、Hyper-Vホストのメモリも限りがありますため。

パラメーター

Basic

Configuration
Networking
Rack wareクラスター最小ノードのためか、ネットワーク構成パターンが一つだけでした。
Management
Security
Advanced
ここでRack wareクラスターのゾーンを指定しています。
Tags
Validataion
リソース作成した後にバリデーションを行います。
画面上の表示では、15分ですがなぜか当方の環境では1時間程度かかります。。。
クラスターオブジェクトはここで作成されていました。設定投入から、バリデーションまで1時間20分ほどです(当方の環境では)。

いよいよクラスターをデプロイします。

クラスターデプロイ後の各実行ステップは下記のとおりです。3時間45分ほどです(当方の環境では)。



Windows Admin Center 2511がGAしました

「管理者」資格情報を提供しなくても、クラスターのインベントリ情報を表示できます。SDNデプロイメントを更新し、インフラストラクチャVMのOUパスを指定するオプションを追加しました。ご紹介が遅くなりましたが、Windows Admin Center 2511(以降、WACと称します)が2025/12/11(US時間)にGAしました。

Windows Admin Center version 2511 is now generally available!

こちらは、Microsoftが発表した「Windows Admin Center バージョン 2511」の一般提供開始に関する公式ブログの要約です:

まず、WACの仮想化基盤管理用であるVirtualization Modeが別でプレビュー提供されています。詳細は、Install Windows Admin Center Virtualization Modeをご参照ください。別項でも紹介できればと考えております。

続いて、WAC 2511の主な更新内容を要約していきます。

プラットフォームとインストーラーの改善

  • コマンドラインインストールオプションとして、外部ポート番号、証明書の指定、サイレントインストールが可能になりました。
  • 証明書更新やトラブルシューティングとして、一時期ドキュメントがありましたが一時期無くなっていたようです。今回、新たに新ドキュメント「Windows Admin Center で使用される証明書の更新」が公開されました。
  • ローカライズに関しての更新内容は、翻訳を記載いたします。
    このリリースでは、Windows Admin Center バージョン 2410 以降にアップグレードしたユーザーが新しいバックエンドに正常に移行できない問題に対処しました。この問題は、Windows Admin Center スクリプトの 1 つにローカライズ エラーがあり、証明書が適切に処理されなかったことが原因でした。更新後、ユーザーは最新バージョンの Windows Admin Center を正常に起動できませんでした。
  • インストールログが Windows イベントログに記録され、監査・トラブル対応が容易になります。
  • Windows Server 2022以下でのインストール失敗に対応しました。

高可用性(HA)構成の復活

過去には、高可用性構成のスクリプトが提供されていましたが、一旦フェードアウトしていました。今回、改めて提供されました。詳細は、下記をご覧ください。

拡張機能の更新

  • VM管理ツール
    • インポート/エクスポートのワークフローが改善され、宛先ダイアログとファイルの場所の処理が洗練されました。
    • ホスト設定では、構成オプションとバックエンド検証が強化されました。
    • 仮想スイッチの作成および構成ワークフローが改善され、ネットワークコントローラーの統合も強化されました。
    • ルール管理とアフィニティルールの検証が改善され、潜在的な競合を回避しています。
    • VM管理ツールが更新され、インポートが改善されました。
  • Virtual machine conversion tool
    現在プレビューされているVMwareからWindows Server with Hyper-Vへの仮想マシン変換ツールです。詳細は、下記とご覧ください。
  • RDP tool
    • 国際キーボードのサポートを大幅に拡張し、日本語、ドイツ語、フランス語を含む 30 を超える国際キーボード レイアウトをサポートしました。
    • バージョン 4.30.2 で発生していた、読み込み中にツールが停止することがあるという重大な信頼性の問題を修正しました。
  • セキュリティツール(Windows Server 2025向け)
    • Silicon Assisted Security
      セキュリティ保護されたコアの要件とハードウェア推奨事項を、VBS、セキュア ブート、TPM 2.0 などの保護を構成するための合理化されたビューに統合します。
    • Security Baseline tool
      セキュリティ ベースライン ツールとして、CIS、DISA STIG、FIPSなどの推奨設定を適用可能にします。
    • Windows LAPS統合
      ローカル管理者パスワードの一括管理と有効期限追跡が可能にします。
  • SDN管理の強化
    • FC NC環境でのX509クライアント認証のサポートを追加しました。これは、一部のAzure Local構成の要件です
    • SDNデプロイメントを更新し、インフラストラクチャVMのOUパスを指定するオプションを追加しました。

Partner ecosystem

  • NetApp Shift Toolkit
    異なるハイパーバイザー間でのVMの移行を簡素化し、仮想ディスクフォーマットを変換する、無料のGUIベースのソリューションです
  • Dell OpenManage 3.4.0
    主に下記の改良があります。
    • 17G PowerEdge、Azure Local 24H2のサポート追加
    • BitLocker in Dell AX System for Microsoft Windows Serverのサポート
    • TLS 1.3が使用できない場合、TLS 1.2を使用
    • 管理者資格情報を提供しなくても、クラスターのインベントリ情報を表示できます。
  • Lenovo XClarity 5.1.1
    • 新ハードウェア対応、新ソフトウェアエコシステムおよび新ファンクションへの対応追加。
  • Dell APEX Cloud Platform 2.6.5
    Azure Local対応、Dell認証方式に変更。

既知の制限

  • Azure Governmentクラウドには未対応。