このチュートリアルでは、rsync コマンドラインツールを使用して、同じリージョン内のゾーンをまたいで汎用 Apsara File Storage NAS (NAS) ファイルシステムのアクティブスタンバイディザスタリカバリソリューションを構築する方法について説明します。
概要
Apsara File Storage NAS は、単一の可用性ゾーン (AZ) のためのデータストレージサービスです。 同じ AZ 内の異なるバックエンドデバイスにデータの複数のレプリカを保存します。 予期しないイベントによって発生するサービス中断を防ぐために、rsync ツールを使用して、同じリージョン内のゾーンをまたいで汎用型 NAS ファイルシステムのアクティブスタンバイディザスタリカバリソリューションを構築できます。
このソリューションの技術アーキテクチャには、次のインフラストラクチャと Alibaba Cloud サービスが含まれます。
1 つの仮想プライベートクラウド (VPC): Elastic Computing Service (ECS) インスタンスや Apsara File Storage NAS ファイルシステムなどのリソースのためのクラウド上のプライベートネットワークとして機能します。
2 つの vSwitch: 2 つの NAS ファイルシステムを同じネットワークに接続し、それらの間の通信を有効にし、基本的なネットワークセグメンテーションと隔離を提供します。
2 つの Apsara File Storage NAS ファイルシステム: 2 つの NAS ファイルシステムは同じリージョンの異なるゾーンに存在し、高性能で高可用性のストレージサービスを提供します。 プライマリ NAS ファイルシステムに障害が発生した場合、スタンバイ NAS ファイルシステムに切り替えて、サービスの継続性と安定性を確保できます。
1 つの ECS インスタンス: rsync ツールを実行するために使用されます。これは、増分データを移行するためのスケジュールされたタスクを構成します。 これにより、データ整合性のために 2 つの NAS ファイルシステム間でデータが同期されます。
ソリューションのデプロイ
このセクションでは、中国 (香港) リージョンの香港ゾーン B にデプロイされた汎用型 NAS ファイルシステムを例として使用して、ディザスタリカバリ機能を構築する方法について説明します。 次の表に、必要な構成を示します。
パラメーター | 業務ファイルシステム | ディザスタリカバリ ファイルシステム |
リージョン | 中国 (香港) | 中国 (香港) |
ゾーン | 香港ゾーン B | 香港ゾーン D |
VPC | test01 | test01 |
vSwitch | test1 | test2 |
ステップ 1: ファイルシステムを作成する
まず、同じリージョン内の異なるゾーンに汎用型 NAS ファイルシステムを作成します。 これはディザスタリカバリ ファイルシステムとして機能します。 プライマリファイルシステムと同じインスタンスタイプとプロトコルタイプを使用してください。
NAS コンソール にログオンします。
概要 ページの [ファイルシステム選択ガイド] セクションで、[汎用 NAS] の下にある [作成] をクリックします。
[作成] パネルで、必要なパラメーターを構成し、他のパラメーターはプライマリ業務ファイルシステムと同じにします。 詳細については、「ファイルシステムを作成する」をご参照ください。
パラメーター
説明
リージョン
業務ファイルシステムと同じリージョンを選択します。 この例では、中国 (香港) が選択されています。
ゾーン
業務ファイルシステムとは異なるゾーンを選択します。 この例では、香港ゾーン D が選択されています。
VPC
プライマリファイルシステムと同じ VPC を選択します。 この例では、test01 が選択されています。
仮想スイッチ
VPC 内の vSwitch を選択します。 この例では、test2 が選択されています。
[今すぐ購入] をクリックし、プロンプトに従って購入を完了します。
ステップ 2: データ移行システムをデプロイし、データを移行する
ディザスタリカバリ NAS ファイルシステムを作成した後、プライマリ NAS ファイルシステムとディザスタリカバリ NAS ファイルシステムの両方を同じ ECS インスタンスにマウントする必要があります。 次に、rsync ツールを使用してデータを移行し、増分データ移行のためのスケジュールされたタスクを構成します。
NFS プロトコル ファイルシステム
プライマリ NAS ファイルシステムとディザスタリカバリ NAS ファイルシステムをマウントします。
ECS コンソール にログオンします。 [インスタンスの作成] をクリックします。 [カスタム起動] ページで、以下の情報を構成します。
リージョン: NAS ファイルシステムが存在するリージョンを選択します。 この例では、中国 (香港) が選択されています。
ネットワークとゾーン: NAS ファイルシステムと同じ VPC を選択する必要があります。 NAS ファイルシステムと同じ vSwitch を選択することをお勧めします。
インスタンスタイプ: ほとんどの場合、最小のインスタンスタイプを選択できます。
イメージ: CentOS を選択します。 この例では、CentOS 7.6 を使用しています。
ストレージ: [エラスティック一時ディスク | Apsara File Storage NAS | 専用ブロックストレージクラスタ (オプション)] をクリックし、次に [ファイルシステムの追加] をクリックして、プライマリ NAS ファイルシステムとディザスタリカバリ NAS ファイルシステムの 2 つのファイルシステム構成を追加します。次の図を参照してください。

ECS インスタンスが作成されると、プライマリ NAS ファイルシステムとディザスタリカバリ NAS ファイルシステムがマウントされます。 次のコマンドを実行して、マウントステータスを確認します。
mount | grep nas.aliyuncs.comファイルシステムが正常にマウントされると、次のような出力が表示されます。 プライマリファイルシステムは
/mnt/srcディレクトリにマウントされ、ディザスタリカバリ ファイルシステムは/mnt/dstディレクトリにマウントされます。
移行ツールをインストールします。
sudo yum install -y rsync既存データを移行します。
ディザスタリカバリ ファイルシステムにディレクトリを作成します。 たとえば、
dst/backupsystemディレクトリを作成します。mkdir /mnt/dst/backupsystemプライマリファイルシステムからディザスタリカバリ ファイルシステムの
backupsystemディレクトリにデータを移行します。rsync -avP /mnt/src/ /mnt/dst/backupsystem/
増分データを移行します。
既存データの移行中にアプリケーションがプライマリファイルシステムにデータを書き込む場合、初期移行が完了した後にこの増分データを同期する必要があります。
rsync -avP --delete /mnt/src/ /mnt/dst/backupsystem/rsync コマンドは最初にソースパス全体をスキャンします。 したがって、増分データの量が少なくても、コマンドの完了に時間がかかる場合があります。
警告--delete オプションは、プライマリファイルシステムから削除されたディザスタリカバリ ファイルシステムからデータを削除します。 ディザスタリカバリ ファイルシステムからの偶発的なデータ削除を防ぐために、このオプションは慎重に使用してください。 2 つのファイルシステムのゴミ箱機能を有効にすることもできます。 プライマリファイルシステムまたはディザスタリカバリ ファイルシステムから誤ってファイルを削除した場合、NAS ゴミ箱を使用して、これらのファイルと、UID、GID、ACL などのメタデータを復元できます。 詳細については、「ゴミ箱」をご参照ください。
増分データを移行するためのスケジュールされたタスクを構成します。
crontab を使用して増分移行をスケジュールできます。
次のコマンドを実行して、crontab ファイルを編集します。
crontab -eスケジュールされた増分移行を構成します。
crontab で次の情報を構成します。 30 は分を示し、00 は時を示します。 増分移行は毎日 00:30 に実行されます。 必要に応じて値を置き換えることもできます。
30 00 * * * rsync -avP --delete /mnt/src/ /mnt/dst/backupsystem/ > /tmp/last_rsync_result.log 2>&1 &次のコマンドを実行して、構成が成功したことを確認します。
crontab -l
移行結果を確認します。
次のコマンドを実行して、最新の増分レプリケーションの出力を確認します。
cat /tmp/last_rsync_result.log
SMB プロトコル ファイルシステム
プライマリ NAS ファイルシステムとディザスタリカバリ NAS ファイルシステムをマウントします。
ECS コンソール にログオンします。 [インスタンスの作成] をクリックします。 [カスタム起動] ページで、以下の情報を構成します。
リージョン: NAS ファイルシステムが存在するリージョンを選択します。 この例では、中国 (香港) が選択されています。
ネットワークとゾーン: NAS ファイルシステムと同じ VPC を選択する必要があります。 NAS ファイルシステムと同じ vSwitch を選択することをお勧めします。
インスタンスタイプ: ほとんどの場合、最小のインスタンスタイプを選択できます。
イメージ: Windows Server を選択します。 この例では、Windows Server 2019 を使用しています。
ストレージ: [エラスティック一時ディスク | Apsara File Storage NAS | 専用ブロックストレージクラスタ (オプション)] をクリックし、次に [ファイルシステムの追加] をクリックして、プライマリ NAS ファイルシステムとディザスタリカバリ NAS ファイルシステムの 2 つのファイルシステム構成を追加します。次の図を参照してください。

パブリック IP: [パブリック IPv4 アドレスの割り当て] を選択して、移行ツールをダウンロードします。
ECS インスタンスが作成されると、プライマリ NAS ファイルシステムとディザスタリカバリ NAS ファイルシステムがマウントされます。 次のコマンドを実行して、マウントステータスを確認します。
net useファイルシステムが正常にマウントされると、次のような出力が表示されます。 プライマリファイルシステムはドライブ X にマウントされ、ディザスタリカバリ ファイルシステムはドライブ Y にマウントされます。
Status Local Remote Network ------------------------------------------------------------------------------- OK Y: \\12e4874****-v****.cn-hongkong.nas.aliyuncs.com\myshare Microsoft Windows Network OK X: \\12f7094****-c****.cn-hongkong.nas.aliyuncs.com\myshare Microsoft Windows Network移行ツールをインストールします。
rsync for windows 移行ツールをダウンロードします。
ダウンロードしたインストールパッケージを [C ドライブ] に解凍し、パッケージの名前を cwRsync に変更します。
既存データを移行します。
CMD コマンドラインウィンドウを開き、次のコマンドを実行して、プライマリファイルシステムからディザスタリカバリ ファイルシステムにデータを移行します。
cd c:\cwRsync rsync.exe -avP /cygdrive/X/ /cygdrive/Y/ --no-perms --no-owner --no-group[X] と [Y] を実際のドライブ文字に置き換えます。
説明デフォルトでは、Alibaba Cloud SMB はアカウント権限の構成をサポートしていません。 SMB AD/ACL が有効になっている場合は、
--no-perms、--no-owner、または--no-groupオプションを構成する必要はありません。増分データを移行します。
rsync.exe -avP --delete /cygdrive/X/ /cygdrive/Y/ --no-perms --no-owner --no-group > c:/rsync.logrsync コマンドは最初にソースパス全体をスキャンします。 したがって、増分データの量が少なくても、コマンドの完了に時間がかかる場合があります。
警告--delete オプションは、プライマリファイルシステムから削除されたディザスタリカバリ ファイルシステムからデータを削除します。 ディザスタリカバリ ファイルシステムからの偶発的なデータ削除を防ぐために、このオプションは慎重に使用してください。 2 つのファイルシステムのゴミ箱機能を有効にすることもできます。 プライマリファイルシステムまたはディザスタリカバリ ファイルシステムから誤ってファイルを削除した場合、NAS ゴミ箱を使用して、これらのファイルと、UID、GID、ACL などのメタデータを復元できます。 詳細については、「ゴミ箱」をご参照ください。
増分データを移行するためのスケジュールされたタスクを構成します。
スクリプトファイルを作成します。
C ドライブに
dailyrsync.batファイルを作成し、次の内容をファイルに追加します。 [X] と [Y] を実際のドライブ文字に置き換えます。c:\cwRsync\rsync.exe -avP --delete /cygdrive/X/ /cygdrive/Y/ --no-perms --no-owner --no-group > c:\run.logスケジュールされた増分移行を構成します。
[コントロールパネル] を開き、[システムとセキュリティ] をクリックし、[管理ツール] 領域で [タスクのスケジュール] をクリックします。
[タスクスケジューラ] ページで、 を選択します。
[全般] タブをクリックし、スケジュールされたタスクの [名前] を入力し、[ユーザーがログオンしているときのみ実行する] を選択します。
[トリガー] タブをクリックし、[新規] をクリックします。 [タスクの開始] リストで、[スケジュールに従う] を選択します。 タスクの時刻を [毎日] に設定し、時刻を指定します。 [詳細設定] セクションで、[有効] を選択します。 [OK] をクリックします。
[操作] タブをクリックし、[新規] をクリックします。 [操作] リストで、[プログラムの開始] を選択します。 [プログラム/スクリプト] セクションで、増分データを移行するためのスケジュールされたタスクを構成する で C ドライブに作成した
dailyrsync.batスクリプトファイルを選択します。 [OK] をクリックします。[OK] をクリックします。
ECS サーバーを再起動して、結果を確認します。
次の情報が表示された場合、スケジュールされたタスクは正常に実行されています。

タスクの実行後、C ドライブにある rsync.log ファイルを表示して、最新の増分レプリケーションの出力を確認します。
ステップ 3: スイッチオーバーを実行する
業務をディザスタリカバリ ファイルシステムに切り替える必要がある場合は、プライマリファイルシステムがマウントされていたすべての業務システムにディザスタリカバリ ファイルシステムをマウントする必要があります。
NFS プロトコル ファイルシステム
このセクションでは、Linux オペレーティングシステムを例として使用して、ディザスタリカバリ NFS ファイルシステムを業務システムにマウントする方法について説明します。 NAS ファイルシステムのマウントの詳細については、「マウントシナリオ」をご参照ください。
次のコマンドを実行して、ディザスタリカバリ ファイルシステムの backupsystem ディレクトリを業務システムにマウントします。
sudo mount -t nfs -o vers=3,nolock,proto=tcp,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport <<マウントポイント>>:/backupsystem <<業務システムディレクトリ>>次の表にパラメーターを示します。 プレースホルダーの値を実際の値に置き換えます。
<マウントポイント>: ディザスタリカバリ ファイルシステムのマウントポイントアドレス。
<業務システムディレクトリ>: ディザスタリカバリ ファイルシステムがマウントされる業務システムのローカルディレクトリ (例:
/mnt)。 ファイルシステムがマウントされると、このディレクトリには、最後にスケジュールされた増分タスクによって同期されたデータが含まれます。
SMB プロトコル ファイルシステム
このセクションでは、Windows オペレーティングシステムを例として使用して、ディザスタリカバリ SMB ファイルシステムを業務システムにマウントする方法について説明します。 NAS ファイルシステムのマウントの詳細については、「マウントシナリオ」をご参照ください。
net use Y: \\<<マウントポイント>>\myshare次の表にパラメーターを示します。 プレースホルダーの値を実際の値に置き換えます。
<マウントポイント>: ディザスタリカバリ ファイルシステムのマウントポイントアドレス。
[Y]: ディザスタリカバリ ファイルシステムがマウントされるドライブ文字。 ファイルシステムがマウントされると、ドライブには、最後にスケジュールされた増分タスクによって同期されたデータが含まれます。
[myshare]: SMB ファイルシステムの共有名。 この名前は変更できません。
まとめ
このチュートリアルを完了すると、次の方法がわかります。
増分データを移行するためのスケジュールされたタスクを構成する。
ディザスタリカバリ ファイルシステムを使用するように業務システムを切り替える。