バックアップとリストア

バックアップ

リモートバックアップの使用

Shieldは、バックアップファイルのリモートストレージとして SFTP をサポートします。次の手順に従って、システムのバックアップ設定を定義します。

この目的のために専用アカウントを作成します。このアカウントは、バックアップファイルの保存や、Shieldのリストア時にこれらのファイルを取得するためにも使用されます。

SFTP サーバーで、SSHキーを作成します。詳細については、こちら を参照してください。

Rancher Server マシンで、カスタム管理ファイルを ericomshield フォルダにダウンロードします。

curl -s -o custom-management.yaml https://raw.githubusercontent.com/EricomSoftwareLtd/Shield/Rel-19.07.1/Kube/scripts/custom-management.yaml

ファイルを編集して SFTP アカウント (バックアップパス、SFTP サーバーIP およびユーザー名) を構成し、SSH秘密キーをコピーします。(不足している設定は <> でマークされています):

remotePath: "<BACKUP_PATH>"
config: |
  rclone.conf: |
    [SFTPStorage]
    type = sftp
    host = <SFTP_SERVER_IP>
    user = <SFTP_USERNAME>
key:
    key_file.pem: |
    ----BEGIN RSA PRIVATE KEY-----
    <PRIVATE_KEY>
    ----END RSA PRIVATE KEY-----

変更を保存してShieldを展開し、次を実行します。

./deploy-shield.sh

参考

yaml ファイルを編集する場合は、余分な文字 (空白やタブなど) を避けるようにすることが重要です。また、このファイルをバックアップすることをお勧めします。

ローカルバックアップの使用

バックアップファイルは、Shieldマシンのローカルに保存できます。マルチマシンシステムでは、複数のバックアップが異なるマシン上に存在する可能性があり、復元が必要な場合にどのバックアップを使用すべきかを見分けるのは困難です。ベストプラクティスは、バックアップパスを特定のフォルダに更新することです。このフォルダは、NFSフォルダまたは定期的にバックアップされる別のローカルフォルダにすることができます。

ローカルバックアップパスを更新するには、次の手順に従います。

Rancher Server マシンで、カスタム管理ファイルを ericomshield フォルダにダウンロードします。

curl -s -o custom-management.yaml https://raw.githubusercontent.com/EricomSoftwareLtd/Shield/Rel-19.07.1/Kube/scripts/custom-management.yaml

ファイルを編集して、ローカルバックアップパスを更新します。 localPath 変数のコメントを解除し、指定されたパスに設定します。

localPath: <SPECIFIC_FOLDER_PATH>

変更を保存してShieldを展開し、次を実行します。

./deploy-shield.sh

参考

yaml ファイルを編集する場合は、余分な文字 (空白やタブなど) を避けるようにすることが重要です。また、このファイルをバックアップすることをお勧めします。

Rancher バックアップ

(Rancher Serverマシンの) ~/rancher-store/ フォルダを定期的にバックアップすることを強くお勧めします(Rancher Serverに障害が発生した場合に使用します)。

リストア

リストアは、必要に応じて自動的に実行されます (システム障害など)。

特定のバックアップ ファイルを使用して手動でリストアを実行するには、次の手順に従います。

  1. リモートバックアップ設定が正しく構成されていることを確認します (上記の詳細)

  2. 選択したバックアップファイルを SFTPサーバーのバックアップパスに配置する

  3. Rancherで、管理ラベル( shield-role/management=accept )で実行されているすべてのノードを検索し、それらを一覧表示します。

    ../../../_images/rancher11.png
  4. (リストから)Linuxマシンに接続し、custom-management.yamlで定義されているlocalPathの下にあるすべてのファイルを削除します(デフォルト: /home/ericom/shield/backup/ )。この手順は、すべてのローカルバックアップを削除し、選択したバックアップファイルで復元プロセスが実行されるようにするために必要です。

  5. Rancher でクラスターをクリックし、クラスター名の下に デフォルト を選択します。

    ../../../_images/rancher10.png

    Workloads を選択し、バックアップ を検索します

    ../../../_images/rancher12.png

    mng-consul-backup の展開を選択します。関連するポッドが表示されます。それを選択し、「削除」をクリックします

    ../../../_images/rancher13.png

    このポッドを削除すると、選択したバックアップファイルを使用して、復元プロセスが自動的に開始されます。