【VMware@SoftLayer】vSphere Replication編

#内容
vSphere Replication Applianceを用いて、オンプレミスとSoftLayerの間で、レプリケーションを実施した際の手順です。

#はじめに
SoftLayer上でVMwareのSDDCソリューションが包括的に利用できるようになりましたが、vSphere Replication Applianceは災害対策にフォーカスしたレプリケーションを行うための仮想アプライアンスになります。
SoftLayerを災害対策先に選ぶ理由としては、以下のような理由が挙げられると思います。

- **完全互換性**
    - VMイメージの変換が不要なため、もしものときも、災害対策先で安定稼働します
- **無料高速安定回線**
    - 海外を災害対策先とした際に、DC間の高速で安定した回線が無料で利用できます
- **SDDC製品を用いた運用継続**
    - vRealizeやSRMといったSDDC製品を引き続き、SoftLayer上でも利用できます。
    - 自動化されたライセンス発行により、災害時も手続きを待つ必要はありません。

SoftLayerは、このように安定かつ安心のVMware基盤を提供しています。

今回はその基盤を利用した、ハイパーバイザーベースの仮想マシン単位に設定できるVMware vSphere Replicationを使用します。

#手順
大まかな手順は以下の通りです。

- OVFテンプレートのデプロイ
- PSC、vCenter連携設定
- ネットワークトラフィックの分離
- ターゲットサイトへの接続
- レプリケーション設定
- リカバリ（復旧）手順

#OVFテンプレートのデプロイ
ISOはこちらからダウンロードできます。
http://downloads.service.softlayer.com/vmware/VMware-vSphere_Replication-6.1.0.12929-3656323.iso

下記の要領でデプロイします。
![alt](https://blogs.vmware.com/virtualblocks/files/2017/01/ovf-select-template.png)
ISO内の/bin内にある関連ファイルをすべて選択します。
![alt](https://blogs.vmware.com/virtualblocks/files/2017/01/ovf-file-selection.png)
<img width="960" alt="vr-qiita-1.png" src="https://qiita-image-store.s3.amazonaws.com/0/101361/862de195-4ee5-0473-8478-2674d6c0dd69.png">

#PSC、vCenter連携設定
起動後、vSphere Replication Applianceの管理コンソールにアクセスします。
<Font color="red">※事前に名前解決しておくことが稼働要件として必須です。</font>
**https://\<IPアドレスまたはFQDN\>:5480/**
<img width="767" alt="vr-qiita2-1.png" src="https://qiita-image-store.s3.amazonaws.com/0/101361/bede8dbc-1706-5755-d39e-556ddfff9e1e.png">

赤枠内のデフォルト値を変更します。
今回の環境では外部PSCのため、以下のように設定します。
<img width="541" alt="vr-qiita2-3.png" src="https://qiita-image-store.s3.amazonaws.com/0/101361/3d194e5c-c4a7-0f7a-092b-637486faeff7.png">

「Save and Restart Service」を押し、SSL証明書を「Accept」します。
<img width="830" alt="vr-qiita2-4.png" src="https://qiita-image-store.s3.amazonaws.com/0/101361/102f50d0-8d17-d48c-89df-3a15495336d6.png">

成功すると、以下のような画面になります。
<img width="829" alt="vr-qiita2-5.png" src="https://qiita-image-store.s3.amazonaws.com/0/101361/e98e2703-c979-d2bd-e41d-bc2c134bcd09.png">

Web Clientから連携されていることを確認します。
<img width="1168" alt="vr-qiita2-6.png" src="https://qiita-image-store.s3.amazonaws.com/0/101361/bf262421-7c9c-79d9-ec45-8e5773b17d9b.png">

クリックして進むと、各サイトにおいて、仮想アプライアンスが導入・連携されていることもわかります。
<img width="751" alt="vr-qiita3-2.png" src="https://qiita-image-store.s3.amazonaws.com/0/101361/41a753ea-d24c-d2bc-1221-a5f8604dcbef.png">


#ネットワークトラフィックの分離
VMware vSphere Replication 6.0からの新機能で、管理トラフィックとレプリケーション トラフィックを個別のネットワークで分離できるようになっています。

>[VMware vSphere Replication 6.0 リリース ノート](http://www.vmware.com/jp/support/support-resources/pubs/vsphere-replication-pubs/vsphere-replication-60-release-notes.html)

「ホストとクラスタ」->「対象のホスト」->「管理」タブ->「ネットワーク」->「VMKernelアダプタ」->「設定の編集」から、
管理ネットワークに負荷をかけないよう、必要に応じて、ネットワークトラフィックを分離しておきます。
![vr-qiita3-1.png](https://qiita-image-store.s3.amazonaws.com/0/101361/52b3aa11-619b-cadb-5d1f-483b3b15f953.png)


#ターゲットサイトへの接続
「vSphere Replication」->「ソースサイトを選択」->「管理」->「ターゲットサイトへの接続」
から、SoftLayer上のvCenterに接続します。
<img width="414" alt="vr-qiita3-3.png" src="https://qiita-image-store.s3.amazonaws.com/0/101361/087ea9ba-4f3a-0a72-a7b0-9c9b4931056a.png">

「接続中」となれば完了です。
<img width="1018" alt="vr-qiita3-4.png" src="https://qiita-image-store.s3.amazonaws.com/0/101361/caa51bea-d5b8-faed-c22b-5605345615c5.png">

#レプリケーション設定
「仮想マシンを右クリック」->「すべてのvSphere Replication アクション」->「レプリケーションの構成」から設定を開始します。
<img width="478" alt="vr-qiita3-5.png" src="https://qiita-image-store.s3.amazonaws.com/0/101361/670f230e-e203-c526-437e-ed8bb3842a8d.png">

以下のように設定しました。
<img width="770" alt="vr-qiita3-6.png" src="https://qiita-image-store.s3.amazonaws.com/0/101361/6d3fb50f-6796-d39b-5bae-9c08c36fe243.png">

- データストアに事前にフォルダを作成しておきましょう。（何度もレプリケーション・リカバリを繰り返すうちに、同じフォルダ名があると失敗する可能性があるので。）
- vSphere Replication 6.0からの新機能の、**ネットワーク トラフィックの圧縮**を有効にしています。レプリケートされたデータをネットワーク経由で送信する前に必要に応じて圧縮することで、レプリケーション時間を短縮してネットワーク バンド幅の消費量を削減できるようになりました。<img width="666" alt="vr-qiita3-7.png" src="https://qiita-image-store.s3.amazonaws.com/0/101361/6a18d505-fb43-a29f-fe27-c144ca16823c.png">
-  **RPOは最短15分〜最長24時間**を設定できます<img width="663" alt="vr-qiita3-8.png" src="https://qiita-image-store.s3.amazonaws.com/0/101361/0efaf00e-c047-68a0-15f9-8fb9b0388233.png">
-  特定の時点のリカバリについては、最大で24のリカバリポイントを保持できます。

その後、初回のみ**initial full sync（初期完全同期）**がおこなわれます。
<img width="483" alt="vr-qiita3-9.png" src="https://qiita-image-store.s3.amazonaws.com/0/101361/d2c41644-7750-0545-839c-0d638fc6d557.png">

initial full sync（初期完全同期）を送った後は、スナップショットベースで差分を送る仕組みになっています。

設定上の考慮事項としては、**RPOを短くすればするほど、NW帯域が必要**になります。
多数のVMに対して、多数のリカバリポイントを保持したい場合は、オンプレミスークラウド間のNW帯域に注意が必要です。
NW帯域の限界を超える設定となってしまった場合は、**RPOを違反している旨の警告**が出るので、RPOを長く設定するか、NW帯域を増やしてください。

「vSphere Replication」->「ソースサイトを選択」->「監視」から、レプリケーションに関するモニターが可能です。
![vr-qiita3-10.png](https://qiita-image-store.s3.amazonaws.com/0/101361/14c4e380-de68-b519-9fd4-2a01d962b86f.png)

#復旧手順
まずレプリケーションステータスが「OK」となっていることを確認します。
<img width="485" alt="vr-qiita4-1.png" src="https://qiita-image-store.s3.amazonaws.com/0/101361/5d922bbe-e204-0bf7-1ce6-a114f42fce84.png">

「vSphere Replication」->「ターゲットサイトを選択」->「監視」->「受信レプリケーション」->「リカバリの開始」を選びます。
![vr-qiita4-2.png](https://qiita-image-store.s3.amazonaws.com/0/101361/1ce9e9bb-b89f-a5d6-167e-4756054acda1.png)

最新の変更の同期については、ソースサイトの本番VMのパワーオフが必要なため、
<img width="914" alt="vr_qiita_12.png" src="https://qiita-image-store.s3.amazonaws.com/0/101361/bb033daa-4296-a70f-058c-6d6620bb3d3f.png">
ここでは利用可能な最新データを使用します。
<img width="910" alt="vr_qiita_11.png" src="https://qiita-image-store.s3.amazonaws.com/0/101361/7af22d1d-833e-76e5-a10f-adba233f3dc5.png">


クラウド（SoftLayer）上でリカバリをします。
<img width="908" alt="vr-qiita4-4.png" src="https://qiita-image-store.s3.amazonaws.com/0/101361/b865cdcf-31bb-49d7-34cc-9ff65cc1604c.png">

サイズにも依りますが、数分以内には完了します。
<img width="1386" alt="vr-qiita4-5.png" src="https://qiita-image-store.s3.amazonaws.com/0/101361/e9877277-b775-8961-2cbe-a7fc5bc75151.png">

**リカバリ後は、ネットワークアダプタ、IPアドレスの手動での変更、パワーオンが必要**になります。
（NSXを利用している場合は、IPアドレスの変更は不要ですが、ネットワークアダプタは再接続が必要です。）
<img width="599" alt="vr-qiita4-6.png" src="https://qiita-image-store.s3.amazonaws.com/0/101361/0cda2e18-367c-a2ad-92ff-1d7c4d054eff.png">
vCenterのタスクには、このようなエラーが出ているかと思います。
<img width="973" alt="vr_qiita_13.png" src="https://qiita-image-store.s3.amazonaws.com/0/101361/2d2d45d0-bfcd-14ef-1dbd-f149dfe791ed.png">
<img width="450" alt="vr_qiita_14.png" src="https://qiita-image-store.s3.amazonaws.com/0/101361/2295c52f-1dd3-31e3-2aa0-2a1a764c0588.png">


>**vSphere Replication は、本番ネットワーク内のダメージを回避するため、仮想マシン ネットワーク アダプタの接続を解除します**。リカバリ後、仮想ネットワーク アダプタを適切なネットワークに接続する必要があります。ターゲット ホストまたはクラスタが、仮想マシンを構成しているソース サイトの DVS にアクセスできない場合、仮想マシンを手動でネットワークまたは他の DVS に接続して仮想マシンを正常にパワーオンします。
>([vSphere Replication を使用した仮想マシンの復旧](https://pubs.vmware.com/vsphere-replication-60/index.jsp#com.vmware.vsphere.replication-admin.doc/GUID-356D2357-67A5-42CD-91A7-BDEDDCEDA662.html))

この一連のリカバリ作業ですが、**一度に一つのVMしか復旧させることができません**。
さらには**ネットワークアダプタ、IPアドレスの手動での変更作業が入る**ため、あくまで中小規模向けとなります。
大規模な環境に対して、**一連の作業を自動化させたい場合は、Site Recovery Manager**を使用することになります。

また、フェイルバックを行うには逆向きのレプリケーションを再構成する必要があります。
その際には、ソース サイトのディスクを**レプリケーション シード**として使用することで、vSphere Replication は、ターゲット サイトのディスク ファイルに対して行われた変更のみを同期するようになります。
リバース レプリケーションを構成する前に、ソース サイトのインベントリから仮想マシンを登録解除する必要があります。
([vSphere Replication での仮想マシンのフェイルバック](https://pubs.vmware.com/vsphere-replication-60/index.jsp#com.vmware.vsphere.replication-admin.doc/GUID-0594C104-1381-4EE7-8C6A-A44E9F380AAB.html))


#さいごに
その他の気づき、特徴としては以下のものが挙げられると思います。

- vSphere Web Clientから数ステップでレプリケーション・リカバリ設定可能
- 最短15分のRPOを設定可能
- 一方で、設定と復旧にはvCetnerがオンラインである必要がある
- リカバリは、一度に1VMずつの復旧となる
- ハイパーバイザーが認識可能なストレージであればストレージ種類を問わない
- VSANもソース・ターゲットに使用出来る
    - 例えばNASからVSANへ、といったことが可能
    - 最短5分にまでRPOを短縮可能（VSAN<-->VSANの場合）
    - FTTの設定はストレージポリシーにより自動変更可能
- SoftLayer上であれば、Replication後も、もちろん問題なく稼働
- SRMについてもSoftLayerから購入することができるため、容易にUpgrade可能

#2016/09/27追記
<img width="973" alt="vr_qiita_13.png" src="https://qiita-image-store.s3.amazonaws.com/0/101361/2d2d45d0-bfcd-14ef-1dbd-f149dfe791ed.png">
<img width="350" alt="vr_qiita_14.png" src="https://qiita-image-store.s3.amazonaws.com/0/101361/2295c52f-1dd3-31e3-2aa0-2a1a764c0588.png">


#参考
- [VMware vSphere Replicationのデータ保護](https://thinkit.co.jp/story/2015/04/27/5933)
- [vSphere Replication](http://ops.vmware-vsan.com/vsphere_replication.html)
- [vSphere Replication を使用した仮想マシンの復旧](https://pubs.vmware.com/vsphere-replication-60/topic/com.vmware.vsphere.replication-admin.doc/GUID-356D2357-67A5-42CD-91A7-BDEDDCEDA662.html)
- [OVF Choices When Deploying vSphere Replication 6.5 - Virtual Blocks](https://blogs.vmware.com/virtualblocks/2017/01/20/vr-65-ovf-choices/)