検証環境をWindows Server 2025にしてansibleでhyper-v環境でIaCしてます!ソースはGitHubにあります!

検証環境をWindows Server 2025 + Ansible + Hyper-VでIaC化する この記事の内容 ホストOSをWindows Server 2025 Datacenterにアップグレードし、Hyper-V検証環境を刷新した AnsibleとPlaybookを使ってHyper-V上のVM作成・Active Directory構築をコード化(IaC)している ソースコードはGitHub(ebibibi/ansible-hyperv)で公開されており、自由に利用できる Windows Server 2025ではWSL2がネイティブ動作するなど仕様変更があり、ルーティング設定に注意が必要 RRAS(ルーティングとリモートアクセス)の有効化でルーティング問題を解決できることを確認した 検証環境をWindows Server 2025にアップグレード 今回、筆者の検証環境のホストOSをWindows Server 2025 Datacenterエディションにアップグレードしました。ハードウェアはLenovo SE350(メモリ192GB)をお借りして使用しており、このマシン上でHyper-Vによる仮想環境を構築・管理しています。 検証用のVMは使い終わったら都度削除する運用を取っており、「作って・消して・また作る」というサイクルを繰り返しています。クラウドに慣れた視点でオンプレ環境も同様に扱うことで、常にクリーンな環境を保っています。 AnsibleでHyper-VをIaC化する仕組み Ansibleプレイブックでの環境構築 検証環境の構築には、Ansibleプレイブックを使用しています。たとえばActive Directory環境を作成する場合は、以下のようなコマンドを実行するだけです。 ansible-playbook create_ad.yml これを実行すると、ゴールデンイメージのVHDXをVM用にコピーし、必要な台数分のVMが自動的に作成されます。 リポジトリの公開 この仕組みはGitHubの以下のリポジトリで公開されています。 e b i b i b i / a n s i b l e - h y p e r v リポジトリには実行手順の解説動画へのリンクや、ドキュメントも整備されています。Hyper-Vホストの準備方法からゲストVMのルーティング設定まで、コマンドをコピー&ペーストして進められるように記載されています。 インベントリファイルによる環境定義 作成する環境はインベントリファイル(YAMLファイル)に記述します。以下はその例です。 vms: - name: DC01 type: windows ip: 10.1.1.1 cpu: 2 memory: 4096 network: InternalSwitch source_vhd: /path/to/golden.vhdx dest_vhd: /path/to/DC01.vhdx extra_drives: - path: /path/to/DC01_D.vhdx size: 50GB - name: DC02 type: windows ip: 10.1.1.2 ... - name: CLIENT01 type: windows11 ip: 10.1.1.3 ... type: windows の定義を増やすだけで何台でもVMを自動作成できます。またドメインコントローラーの指定、ドメインへの参加、フォレストの作成、DNSフォワーダーの設定なども、このファイルに記述するだけで自動的に処理されます。 ...

February 14, 2025 · 2 min · 胡田昌彦