障害でVDSから切断されたVCSAの復旧方法

この投稿は vExpert Advent Calendarの10日目です。

https://adventar.org/calendars/6689


本記事では以下の状況と、簡易な復旧方法について説明します。

環境

vCSAは自身が管理するvSphere Cluster上に存在する。

vCSAは自身が管理する vDSに接続される

vCSAが接続されるdvportgroupはEphemeralではない

該当のvCSA以外にvSphere Clusterを管理できる vCSA は存在しない 


障害状況

vCSAは何らかの理由により、もともと存在していたESXiから、別のESXiに再登録されている。

vCSAはvDSから切断されてしまっている。


解説

上記の状況は、ESXiの障害などによって副次的に発生しうる状況です。もともと、vCSA は vDS に接続されていましたが、ESXi の障害などにより、いったん Guest OS から Shutdown され、Host Client を利用して別の ESXi に再登録したうえで起動しています。

この場合、もともとvCSAが接続されていたdvportは別の ESXi 上のポートであるため、起動時にvCSAはvNICを接続することができず、切断状態となります。

vCSAが切断状態になり、かつESXiのHost Clientからは仮想マシンをvDSに接続することができないため(Ephemeral Port を除く)、vCSAの復旧が困難となります。 

この状況において有効な解決策としては事前に用意しておいたEphemeral Port を利用するか、もしくは一時的にVSSを作成して復旧する方法が一般的な方法です。

事前にEphemeral Port の準備がない場合には、VSSを作成することになりますが、Uplinkに空きがない場合は、Uplinkを付け替える必要があり、手順は複雑になります。

今回はVSSを利用しない簡易な復旧方法についてご紹介します。


簡易な復旧方法

完結に手順を示すと以下です。

  • vNICが切断されているVCSAをShutdown 

  • vCSAが存在する ESXi を Maintenance Mode~Reboot

  •  vCSA を再度起動~vNICが接続状態であることを確認 

上記に示した通り、ESXiをリブートするだけでvDSへの接続が可能になります。上記の復旧手順はvSphere 6.5/6.7/7.0 でその有効性を確認しています。



復旧手順についての説明

なぜこの方法でvNICの接続が復活するのかについて、理由を示した資料は確認できませんでした。詳細な理屈は不明ですが、切断されたvNICがESXi再起動によって接続可能になるようです。

ただし、この方法は万能ではありません。以下の弱点があります。

  1. 切断状況によっては効果を発揮しない
  2. ESXiを再起動しなくてはならないため、vCSA以外のVMがいた場合は、そのVMも停止しなくてはならない
  3. すでにESXiの一つが障害である場合、追加でもう一つのESXiをMM~Rebootすることは難しい場合がある 


以上の通り、実際の利用はあまり現実的ではないかもしれませんが、もし該当 ESXi の再起動が可能な状況である場合は、より簡単に復旧することができます。(Ephemeral Portがある方が最も簡単だが、それは事前に準備されていない想定) 

 

 

 

 

 

 

 

 

 

 

 

 

 
 
 
 
 

 


 

 

 

コメント

このブログの人気の投稿

vSwitchにSTPが不要な理由

ESXi に DNS サーバを何個まで登録できるか

NTPと同期してくれないときのトラブルシューティング