仮想サーバを構築するための基盤メモ 2024/03/28版

VMware/vSphereがあんなことになってしまったので問い合わせが多いのでメモ

2024/03/28 初版作成
2024/12/13 バージョン情報などをアップデート

VMware vSpere

VMware vSphere / ESXi はBrocadeに買収されたことで、アレな感じになって迷走中

Microsoft Hyper-V

Windows Serverにも含まれるHyper-V

Hyper-V Sevrer 2019という仮想基盤だけのやつは無料製品としてあるんだけど、2022版が出ていないまま、Windows Server 2025の時代になり、単品のHyper-V Serverはなくなった模様。

物理サーバ間を稼働中の仮想マシンを移動させることは、Windows Serverのフェイルオーバークラスタリング(MSFC/WSFC)、System Center Virtual Machine Managerを利用することで実現する。(ライブマイグレーションの概要)

Nutanix

VMware vSAN/HCI環境を似たような構成で移行しようとすると、Nutanixになる。(というか、NutanixをまねしたのがvSAN)

vSAN = AOS Storage
ESXi hypervisor=Nutanix Acropolis Hypervisor(AHV)
vCenter Server=Prism

単体AHVに標準でPrism Elementも含まれてて、これだけでもクラスタを組める

Prism Centralは、Prism Elementで作ったクラスタを複数まとめて管理したり、また、仮想マシンをSecure boot対応にする場合の暗号化キー管理などを行える。

RHEV/RHV → RedHat OpenShift Virtualization

RedHat Virtualization / RedHat Enterprise Virtualzation、RHEVというのがあったんだけど、これはRHEV4.4で終了したプロダクトとなる。

RHEV4.4はRHEL 8.xベースの上に構築する。

後継はRedHat OpenShift Virtualizationとなる。

旧ドキュメント: Product Documentation for Red Hat Virtualization 4.4

ドキュメント: OpenShift Container PlatformAbout OpenShift Virtualization

Proxmox VE

Proxmox Virtual Environment は最初はRHEL or Debianベースでコンテナを動かすやつだったものが、時代の流れでDebianベースのKVM/qemu仮想マシンとlxcコンテナを動かすやつに変わっていったもの

長く続くプロダクトなので、一通り使える Web GUIが備わっているし、複数物理サーバの一括管理物理サーバ間の仮想マシン移動(Online Migration)HA機能があるが、Webでは設定できずコマンド実行が必要な機能は多い。

debian 12ベースの上に構築されている。

一般向けドキュメント: Proxmox VE Documentation Index
旧来からの資料サイト: PVE wiki

Oracle OLVM

Oracle VM Server for x86 というのがあったんだけどOracle VM 3で終了になった。

後継として、Oracle LinuxのKVMベースで構築して、管理UIとして Oracle Linux Virtualization Manager を提供する、という形に変わっている。

oVirtを利用していて、そもそもRedHatVirtualization 4.xのOracle版がOLVM 4.xとなる

RedHatが4.4で提供をやめたので今後どうなるかなぁ、と思っていたら、OLVMの方は4.5を出してOracle Linux 9.x環境でも構築できるようになったので一安心

Oracle Linux 8.x, 9.x ベースで構築

oVirt

RHV/RHEV/OLVMで利用している元の技術 oVirt

RHVは4.4.xで止まっているが、oVirtの方は4.5.xが出ていて、Oracleから2024/7にOLVMも4.5が出た。

oVirt 4.5.4からはRHEL9.xベースで構築することが可能になった。

ドキュメント: oVirt documentation

Citrix Hypervisor(XenServer)

Linux KVMより歴史が古い仮想化技術 Xen を使用したもの。

2024/03/25にXenServer 8が出たばかり

vCenterに相当するものはXenCenterとなっている。

XCP-ng / Vates

XenServerのオープンソース版がXCP-ng だったんだけど、なんかいつの間にかXCP-ngの商用サポート版として Vates なるものが登場してる

Vatesの方にはHCIプロダクトとして、XOSTORなるものもあるようだ

サポートと価格について

Sangfor HCI

構成がよくわからんけど Sangfor HCI というのがあるらしい

ZStack Cloud

中国で開発されているZStack

インストール用ISO提供あり

中国産なのでopenEulerベースかと思ったら、CentOS 7ベースのh76c,h79cとRocky Linux 8ベースのh84r だった。また、ISOがリリースされているのはx86_64向けのみだけど、GUI的にはARM, 龍芯系(mips64el,loongarch)向けも想定されてる模様。

ドキュメント: ZStack Cloud Documentation
github: https://github.com/zstackio/zstack

参照先

vinchin How to Migrate RHV/RHEV VMs to Other Hosts?
この記事にRHEVからの乗り換え先として「VMware, Citrix Hypervisor/XenServer, XCP-ng, Oracle OLVM, oVirt, Sangfor HCI, OpenStack, ZStack, Huawei FusionCompute, and H3C CAS/UIS」と記載されていて、知らないのがあるな、というのが記事を書くきっかけ

Storware vProtect documentation Virtual Machines
バックアップソフトのマニュアルなんだけど、対応してる各仮想環境でどういう風にバックアップを取るのかという構成図がある。

Windows 11 Insider Preview環境でWSLg経由で起動したUbuntu 20.04のfirefoxが日本語文字化けする

Windows 11 Insider Previewにした環境で、WSLgを使ったLinux GUIのテストをしてみようと、Ubuntu 20.04を設定して、firefoxを起動してみた。(別途 sudo apt install firefox でインストール済み)

まぁ、文字化けした。

どうせ、いつもの(Zentyalを日本語で使う場合の設定手順)だろう、と「sudo apt install fonts-arphic-uming fonts-takao-gothic」でフォントをインストールして

firefoxを起動したところ、問題なく表示されました。

AMD B450チップセット+Ryzen 3 2200G環境でWSL2が 0x80370102で使えない

AMD B450チップセットを使っているASUS TUF B450M-PLUS GAMING にRyzen 3 2200Gを載せている環境で、WSL2を試そうとした。

BIOSのCPU設定にて「SVM Mode」を「Enabled」に変更して、

画像

Windows 10 用 Windows Subsystem for Linux のインストール ガイドの手順に従ってWSL2をセットアップしていく・・・

画像

Ubuntu が0x80370102 のエラーで起動しない。

画像

冒頭に写真に出したように仮想化は有効にしている。

タスクマネージャのパフォーマンスのCPUでも「仮想化:有効」表示を確認

画像

msinfo32でも仮想化の有効を確認

画像

万策尽きたか・・・というところで、AMD Radeon Softwareパッケージを再インストールすることで解決するかも?という話を聞いて、AMD Ryzen™ 3 2200G Previous Drivers からRadeon Softwareをダウンロード/インストール/再起動してみたところ、今度はWSL2が正常に起動することが確認出来た。

次はWSLgだな・・・

Hyper-V第2世代仮想マシンにWindows Server 2012R2をインストールしたらKB3000850適用に失敗する

Windows Server 2016を立てて、Hyper-V上にWindows Server 2012R2仮想マシンを作ろうとしたら、うまくいかない事例が発生。

オンラインのWindows Update実施ではなく、某社が用意した一括適用バッチファイルを実行して適用したところ、必ず適用に失敗し、元に戻す処理が発生するした。

提供されたバッチファイルを分割しまくり、原因を調査していったところ、KB3000850の適用に失敗していることを発見。

問題のKB「Windows RT 8.1、Windows 8.1 および Windows Server 2012 R2 用の 2014 年 11 月付け更新プログラムのロールアップ

既知の事例に第2世代仮想マシンで適用が失敗することが記載されている。

ベースの Windows Server 2012 R2 の HYPER-V ホストを実行して使用して UEFI ファームウェアをサポートする第 2 世代の仮想マシンのゲストを実行しているし、セキュリティで保護されたブート オプションを有効にしたがあります。さらに、ゲスト バーチャル マシンは、Windows Server 2012 R2 を実行しています。

対処方法としてKB2975061「月の 2014 年まで Windows 8.1 および Windows Server 2012 R2 の更新プログラムのサービスを提供」を事前に適用する、とある。

確認してみると、某社提供のパッチ集にKB2975061が含まれていない。

このため、別途KB2975061をダウンロード・適用した後、一度再起動し、そのあとKB3000850を適用したところ、正常に適用が成功した。

このことから、某社提供のパッチ適用スクリプトが問題だったということですね。

あとでWSUS Offline Updateと比較してみよう

Windows Hyper-V仮想マシン上のWindowsライセンス

Hyper-V環境上にWindows Server仮想マシンを導入するとき、「仮想マシンの自動ライセンス認証」という手法により、物理Windows Serverに適用されているプロダクトキーを使用したライセンス認証を行わせることができる。

Windows Server 2022ベースのドキュメント「Windows Server での仮想マシンの自動ライセンス認証」の「AVMA キー」に各Windows Server用のプロダクトキーが掲載されている。

(Windows Server 2012R2ベースのドキュメントだと「Automatic Virtual Machine Activation」)

とりあえず現状認識しているライセンスの確認は「slmgr /dlv」を実行することで確認出来る。

ライセンスの適用は「slmgr /ipk ライセンスキー」で適用できる。

MCTの憂鬱「仮想マシン自動ライセンス認証に関して」を見ると、ホストWindows ServerのアプリケーションログにイベントID 12310 として「仮想マシンの自動ライセンス認証要求」のログが出るらしい。

手元に評価版環境しかなかったので実機検証はできず