どうも、Tです。
先日、vCenterのファイルレベルバックアップ・リストアを試しましたが、今回はVDS(分散仮想スイッチ)環境でvCenterリストアすることをまとめました。
バックアップリストアの手順は大きく変わらないので、下記をご参照ください。今回は、VDSに焦点を当てて書いていきます。
目次
ここでの結論
推奨構成は、全文を読んでいただくとしてVDS環境にvCenterをリストアする方法として、下記の2通りがあるかと考えており、それぞれのメリットデメリットをまとめてみました。VSSを使うというのは、そもそもvCenterなどの管理系のネットワークをVDSではなくVSSを使う構成するパターンです。
- VDSで短期-バインドなし(Ephemeral Binding)を事前に作成しておく
- VSSを使う
VDSで短期-バインドなし(Ephemeral Binding)を事前に作成しておく
メリット
- vCenterのリストアや他の仮想マシンの一時的な退避用として利用できる
デメリット
- VDSの不具合、トラブルがあると管理系も巻き込まれる
VSSを使う
メリット
- VDSに依存せず管理系だけでまとめられる
- VDSの不具合やトラブルに巻き込まれない
デメリット
- VSSのネットワーク敷設が別途必要(スイッチの空き、サーバーのNICが必要)
- NIOCのコントロールができない
正直管理系は、1Gbpsの管理ネットワークをVSSで別途作成するのが一番安心感が強いなぁと考えています。管理系にNIOCが必要かと言われるとまぁまずいらないでしょうし・・・・。
Cisco UCSのVICのように、複数NICの準備が簡単なものや物理構成が許容されるのであれば管理系はVSS、それ以外はVDSでまとめたいというのが個人的な結論です。
やりたいこと
- VDS(分散仮想スイッチ)のみ存在し、VSS(標準仮想スイッチ)にvCenterをファイルレベルリストアしたい。
今回の検証目的は、「VDSの構成をリストアする」ではなく「VDS環境のvCenterをリストアする」ことです。
環境
vCenter
- vCenterServer:7.0.2 17958471
VDS構成
下記のように3つのVDSを作成しました。今回使うのは管理用ネットワーク用VDSとネットワークサービス用VDSになります。またポートグループとして静的バインドと短期バインドなしを作成しました。これの詳細は後述します。
管理用ネットワーク用VDSの静的バインドのポートグループにvCenterがある状態です。
各ホストの仮想スイッチはVDSのみだけで構成されVSSは存在しません。
前提
vSANは使っていません。
VDS環境の注意点
VDSのポートバインドの違い
vSphere7では(正確にはWeb版のvSphere Clientの登場で)、分散ポートグループのバインドに「静的バインド」「短期バインドなし」の2種類になります。以前あった動的バインドはなくなっています。
静的バインド(推奨)
KB1022312から引用します。
静的バインドで構成されているポート グループに仮想マシンを接続すると、仮想マシンにポートが直ちに割り当てられて、予約され、常時接続が保証されます。ポートは、仮想マシンがポート グループから削除された場合に限り、切断されます。仮想マシンは、vCenter Server を介してのみ静的バインド ポート グループに接続できます。
注:静的バインドは、デフォルト設定であり、一般的な使用での推奨設定です。
vCenter からホストへの通信が失われた場合、現在静的バインドされたポートグループで動作している VM は、vCenter から既にポートの割り当てを受けているため、通常通り通信を継続できます。 vCenter からホストへの通信が失われた場合、vCenter が VM にポートの割り当てを行うことができないため、VM を vDS 上の静的(非短期)ポートグループに再構成することはできません。この場合、ユーザーには次のようなエラーが表示されます。
静的バインドは、VMwareが推奨するバインドになります。ここで重要なのは、仮想マシンを新規作成する、仮想マシンのネットワークポートグループを変更する際には、vCenterの稼働が必須であるということです。
ポートの割り当ては、vCenterが管理しているということです。
短期バインドなし(非推奨)
KB1022312から引用します。
ESX/ESXi および vCenter で短期ポート バインドを使用して仮想マシンを分散ポート グループに割り当てると、vCenter がダウンしているときにホストを使用して仮想マシンの接続を柔軟に管理することができます。vCenter がダウンしているときに仮想マシンのネットワーク接続を変更できるのは短期バインドのみですが、ポート バインド タイプにかかわらず、ネットワーク トラフィックが vCenter の障害に影響されることはありません
短期ポートグループには、以下のようなさまざまな注意点があります。分散スイッチのポートグループのデフォルトが静的バインドである理由は以下の通りです(vCenter や管理などの短期バインドにのみ変更されます)。
パフォーマンス
ポートがオペレーション コード パスで作成/破棄されるため、ホストの追加、仮想マシンのパワーオンを含むすべての操作が、比較的低速になります。仮想マシンの操作は、ホストの追加操作または切り替え操作よりはるかに頻繁に行われるため、短期ポートでは、通常、負荷が高くなります。
非永続的な(つまり「短期」)ポート
ポート レベルの権限およびコントロールはパワーオフすると失われます。そのため履歴コンテキストが保存されません。
短期バインドなしは、VMware非推奨です。vCenterが存在しない場合でもポートの割り当てが可能ですが、パフォーマンス低下や履歴がなくなるため使われません。
ポートの割りては、ESXiホストが管理しているということです。
静的バインドには、vCenterの稼働が必要
Host Clientを見るとVDSの構成は見えます。しかし、vCenterが停止している状態では、静的バインドのポートの割り当ては行えません。
既存マシンのポートグループ変更
vCenterが停止状態で、既存マシンのポートグループを変更しようと静的バインドのポートグループを選択し保存をクリックすると・・・・・
下記のエラーが表示されます。非短期とは静的のことを意味します。
非短期の分散仮想ポート グループ (DPortGroup-Service) に接続されているネットワーク アダプタの追加または再構成はサポートされていません。
新規仮想マシン作成のポートグループ指定
vCenterが停止状態で、新規仮想マシンに静的バインドのポートグループを選択すると下記のエラーが表示されます。
非短期の分散仮想ポート グループ (DPortGroup-Service) に接続されているネットワーク アダプタの追加または再構成はサポートされていません。
静的ポートバインドにvCenterを直接リストアできない
VDS初期構築時の問題は、静的ポートバインドのポートグループしか作成していないと、vCenterのリストアができないという点です。(vCenterのリストアが必要なのに、vCenterがないから・・・・)
vCenterのリストア途中でネットワークの選択がありますが、ここには短期バインドなしのポートグループしか表示されません。
インフォメーションをみると明記されています。
ESXiがデプロイターゲットとして仕様されている場合、非短期分散仮想ポートグループはサポートされていないため、ドロップダウンリストに表示されません。
VDSへのvCenterのリストア推奨構成
VDS環境でvCenterをリストアする際の推奨構成は、今回の環境で用意したようなリストア用の「短期-バインドなし(Ephemeral Binding)」を作成しておくことです。
普段は使わないけど、vCenterのリストアやvCenterがないときに一時的に利用できる退避用のポートグループを用意しておきます。
KB1022312にも記載されています。
注:短期ポートグループは、通常、vCenter Server をバイパスしてホスト上で直接ポートをプロビジョニングする必要がある場合に、リカバリ目的でのみ使用されます。例えば、管理 vmkernel ポートグループと vCenter VM のポートグループなどです。
KB81611にも記載されています。
Design Justification: Using ephemeral port binding provides the option for recovery of the vCenter Server instance that is managing the distributed switch.
Design Implication: Port-level permissions and controls are lost across power cycles, and no historical context is saved.
This design decision is supported in the following Domains.
• Management Domain
• VI Workload DomainThis design decision is supported on VVD version 4.1 and higher.
VVD(VMware Validated Designs)とは、VMware製品でVMwareSDDC環境設計に関する指針のようなものです。
また、VDSだけで構成されるHCIなども「短期-バインドなし(Ephemeral Binding)」の作成を推奨しているようですね。
事前準備
今回のリストアは、下記の順番で行います。手順は、冒頭で説明した記事と同じなので記載しません。
- vCenterのファイルレベルバックアップ取得
- 新規仮想マシン作成・起動
- vCenterのファイルレベルリストア
vCenterのバックアップ後に、newvmという仮想マシンを作りその後、vCenterに障害が発生したため、リストアしたというシナリオです。VDSの構成情報はESXiホストで保持されているためvCenterをリストアしても問題ないはずです。
VDSへのvCenterバックアップ・リストア
バックアップ
vCenterのバックアップを取得します。手順は下記を参考にしてください。
この時点のVDSのポートグループは以下の状態です。
静的バインドのポートグループにvCenterがつながっています。
短期-バインドなしポートグループには何もありません。
サービス用の静的バインドのポートグループには、w2k19仮想マシンがリンクダウン(停止状態)で接続しています。
仮想マシンの追加とポートの確認
vCenterのバックアップ取得後にVDSの変更点として下記の2点を行ってみます。
- 既存仮想マシンw2k19を起動(リンクアップ状態)する
- 新規仮想マシンw2k19-newを作成して起動(リンクアップ状態)する
この状態でサービス用の静的バインドのポートグループは2台の仮想マシンがリンクアップしている状態になります。
リストア
vCenterをリストアします。手順は下記を参考にしてください。
なお、リストア中もすでにポートが割り当たっている仮想マシンの通信は行えます。データプレーンの役割はESXiホストが担っているからです。
では、vCenterリストア後の状態を見ていきます。
今回は分かりやすいようにrestorevcsaという仮想マシン名でリストアしました。短期バインドなしのポートグループでちゃんと動いています。
静的バインドのポートグループに変更してあげます。
vCenter仮想マシンを右クリック→設定の編集をクリックします。
ネットワークアダプタを静的バインドのポートグループを選択して「OK」をクリックします。
vCenterが静的バインドのポートグループに変更されました。
vCenterバックアップ後に起動、追加した仮想マシンもちゃんと表示されました。通信に影響はありませんでしたが、追加した仮想マシンのMACアドレス、リンクアップ状態が表示されない状態でした。
ただ統計状態を見ると数値は変わっており、pingも問題なくし続けていたので問題はなさそうです。
該当の仮想マシンをvMotionなどさせるとMACアドレスやリンクアップ状態も表示されるようになりました。表示上だけの問題のようです。
参考
まとめ
VDSはESXiホストがいっぱいあるような環境で構築するときは楽だなぁと思いつつ、障害時のことを考えると少々面倒だなぁと思っています。
ノウハウがあればいいのですが、VDS周りって公式でも個人ブログでも、障害時の挙動とかあんまり細かく解説してるところないんですよねぇ・・・まぁ最上位ライセンスが必要なので大規模と言われる環境じゃないとなかなか使わないからかな。