最近 VMware DevOps Meetup #10 の中で紹介した、自宅ラボの様子を残しておこうと思います。
ラボの構成方針
- とりあえずの動作検証・機能検証のしやすさを重視。ラボの耐障害性や性能はあまり追及しない。
- ラボを再構築しやすいように、インフラと、機能検証ラボの環境を分離する。検証環境はネスト&PowerCLI で構築。
- 質問対応 / ブログ / デモなどでそのまま利用しやすいように、機密情報は置かない。
環境構成
インフラ環境と、その上のネスト環境の構成の様子です。
1) インフラ環境
物理マシンの構成についてです。
基本的にはこの上のネスト環境で検証などを実施します。vCenter / ESXi に影響が少ない製品 / 機能は、普通にこの物理 ESXi ホスト上でも検証します。
- HW: Intel NUC Gen 6 ~10 混在。 LCPU 4、RAM 64GB で揃えてあります。
- vSphere: 7.0 U1。最新化にはこだわらず。
- vSAN: 6-Node All-Flash / 3 Fault Domain。機能より運用性を考えて、電源タップごとに、2ホストずつ Fault Domain を分割しています。
- NSX-T: あり。ただしリソースの都合で NSX Manager は停止中。(ということで普段は利用していない)
- 高スペック用 VM 専用クラスタを用意。特に、vCPU 数とおなじ物理 CPU コア(ハイパースレッディング有効なのでスレッド)が必要なため。
- EVC は、用意しているクラスタの ESXi と、所有していてまた利用するかもしれない NUC の世代も考慮して「Intel® "Haswell" Generation」。
2) vSphere ラボ環境
検証環境の、検証むけネスト環境部分についてです。
- HW: VM(つまり Nested ESXi)
- vSphere: 7.0 U2d など、新しめバージョンを利用
- vSAN(ESXi の台数・ディスク数が必要)、NSX-T (ESXi の NIC 数、VIB 追加インストールなどが必要)などの動作・機能検証もこちら。
- PowerCLI スクリプト(構築時のコマンドラインをファイルに書いたような)で vSphere / vSAN 構築自動化。
ついでに
このラボの物理 ESXi ホストでは、ブートデバイスで USB メモリ(たとえば SanDisk UltraFit)を利用しています。ただし、最近の ESXi では USB メモリへのインストールが非推奨です。
私の自宅ラボでもわりと頻繁に、稼働中の ESXi で USB ブートデバイスが認識できなくなったり、再起動したタイミングで読み込めなくなっていたり、といったことが発生します。(最近、アップタイム 180日くらいのホストを再起動したら、3台連続で USB デバイスからブートできなかったり・・・)
しかしながら、自宅で主に利用している Intel NUC で vSAN を構成するには、搭載可能な SSD 搭載可能数が不十分です。そこでやむなく、USB メモリで障害発生するたびに、交換 → ESXi 再インストールしています。
ESXi の設定項目はあまり多くないので手作業でも、あまり手間にはなっていません。ただ最近頻度が増えてきたので、下記のように設定コマンドを並べたスクリプトを用意しておいて再セットアップしています。(もう少し具体的な様子はこちら)
以上、最近の自宅ラボ構成の様子でした。