[vCenter Server] Reduced Downtime Upgrade (RDU) 実施後に切り戻せるか試してみた

今回は Reduced Downtime Upgrade (RDU) 実施後に元の vCenter Server へ切り戻せるか
やってみます。

Reduced Downtime Upgrade (RDU) はメジャーバージョンアップグレードと動作は似ていて、
ターゲット vCenter Server をデプロイした後、ソース vCenter Server から構成のコピー
を行い、最後にターゲット vCenter Server に切り替えるといった動作となります。

メジャーバージョンアップグレードの場合、ターゲット vCenter Server の電源を落とした後、
ソース vCenter Server の電源を入れることでアップグレード前のバージョンへ切り戻しが
行えます。

今回は興味で Reduced Downtime Upgrade (RDU) においてもメジャーバージョン
アップグレードと同様に ターゲット vCenter Server の電源を落としてから
ソース vCenter Server の電源を入れることで切り戻しが行えるのか確認を行ってみます。

なお、上述の通り、あくまでも興味での検証となるので本番環境等で切り戻しが必要となる
場合には事前に取得していたバックアップ等を使用することをお勧めします。

ソース vCenter Server(RDU 実施前の vCenter Server) : 8.0 U2e
ターゲット vCenter Server(RDU 実施後の vCenter Server) : 8.0 U3d

vCenter Server の IP アドレス : 192.168.1.40
RDU 実行時に使用した一時 IP アドレス : 192.168.1.45

RDU 実施後にはソース vCenter Server の電源は落ち、ターゲット vCenter Server
が起動している状態となります。
(vCSA80U2e がソース vCenter Server、vCSA80U3d_rdu_test が
ターゲット vCenter Server)

そのため、vCSA80U3d_rdu_test をシャットダウンし、vCSA80U2e を起動してみます。

起動してみましたが、ホスト名が RDU 実行時に設定した一時アドレスに紐作くものとなって
おり、IP アドレスも表示されませんでした。

また、ほとんどのサービスが起動しておらず使用できる状態ではありません。

以上の状況から RDU 実行後はメジャーバージョンアップグレードと同様にターゲット
vCenter Server の電源を落として、ソース vCenter Server の電源を入れるだけでは切り戻し
は行えないようでした。

であれば、バックアップからリストアすることがベストな対応にはなりますが、上記状態から
何とか元に戻せないかを行ってみます。
(RDU 実施前にスナップショットを取得していれば、当該スナップショットへのリバートも
行えます。)

RDU 関連の VMware KB について調べてみると以下のような KB を見つけました。

Manually cancel the RDU (Reduced Downtime Upgrade) workflow on vCenter Server

KB の内容を見ると RDU 実行後はターゲット vCenter Server の動作へ影響を与えない
ためにソース vCenter Server のネットワーク及びサービスを無効にするとのことで、
KB のResolution に記載の手順を実行することで復元できるようです。

ということで、KB の Resolution に記載の [/usr/lib/vmware-vlcm/public/
upgrade_cancellation.sh] をソース vCenter Server のコンソール画面から実行してみます。
※ターゲット vCenter Server の電源は落とした状態

上記コマンド実行直後に復旧するといったわけでは無かったので、一度 vCenter Server
を再起動するとネットワークも元通りになり、サービスも正常に起動できるようになりました。

root@ss040 [ ~ ]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:50:56:a6:7a:a5  
          inet addr:192.168.1.40  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:13228 errors:0 dropped:652 overruns:0 frame:0
          TX packets:13485 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:19222165 (19.2 MB)  TX bytes:11671342 (11.6 MB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:263536 errors:0 dropped:0 overruns:0 frame:0
          TX packets:263536 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:230742763 (230.7 MB)  TX bytes:230742763 (230.7 MB)

root@ss040 [ ~ ]# uname -n
ss040.home.com
root@ss040 [ ~ ]# service-control --status --all
Running:
 applmgmt lookupsvc lwsmd observability observability-vapi pschealth vc-ws1a-broker vlcm vmafdd vmcad vmdird vmonapi vmware-analytics vmware-certificateauthority vmware-certificatemanagement vmware-cis-license vmware-content-library vmware-eam vmware-envoy vmware-envoy-hgw vmware-envoy-sidecar vmware-hvc vmware-infraprofile vmware-perfcharts vmware-pod vmware-postgres-archiver vmware-rhttpproxy vmware-sca vmware-sps vmware-stsd vmware-topologysvc vmware-trustmanagement vmware-updatemgr vmware-vapi-endpoint vmware-vdtc vmware-vmon vmware-vpostgres vmware-vpxd vmware-vpxd-svcs vmware-vsan-health vmware-vsm vsphere-ui vstats vtsdb wcp
Stopped:
 vmcam vmware-imagebuilder vmware-netdumper vmware-rbd-watchdog vmware-vcha

今回はメジャーバージョンアップグレードと同じ方法で切り戻せるのか?と興味が出てきた
ため実験してみました。

RDU 実施後に切り戻しを行いたい場合には、事前に取得していたバックアップからするのが
良いかと思いますが、バックアップが無い等の状況になった際には参考になれば幸いです。
(一応設定が元に戻ってるかは確認したほうが良いと思います。(AD 参加の設定や ID ソースなど))

タイトルとURLをコピーしました