第1章 etcd のバックアップ
etcd は OpenShift Container Platform のキーと値のストアであり、すべてのリソースオブジェクトの状態を保存します。
クラスターの etcd データを定期的にバックアップし、OpenShift Container Platform 環境外の安全な場所に保存するのが理想的です。インストールの 24 時間後に行われる最初の証明書のローテーションが完了するまで etcd のバックアップを実行することはできません。ローテーションの完了前に実行すると、バックアップに期限切れの証明書が含まれることになります。さらに、ピーク時には障害が発生させる要素となる可能性があるため、ピーク時以外に etcd バックアップを取得することも推奨されています。
etcd のバックアップを取得した後に、マスターホストが失われた状態からの復旧や、クラスターの直前の状態への復元を実行できます。
etcd データのバックアッププロセスは、適切な証明書が提供されている etcd クラスターに接続できるマスターホストで実行できます。
1.1. etcd データのバックアップ
以下の手順に従い、スナップショットを作成して etcd データをバックアップします。このスナップショットは保存でき、etcd を復元する必要がある場合に後で使用することができます。
単一マスターホストからのスナップショットのみを保存する必要があります。クラスター内の各マスターホストからのスナップショットは必要ありません。
前提条件
- マスターホストへの SSH アクセス。
手順
- マスターホストにアクセスします。
クラスター全体のプロキシーが有効になっている場合は、
NO_PROXY
、HTTP_PROXY
、およびHTTPS_PROXY
環境変数をエクスポートしていることを確認します。ヒントoc get proxy cluster -o yaml
の出力を確認して、プロキシーが有効にされているかどうかを確認できます。プロキシーは、httpProxy
、httpsProxy
、およびnoProxy
フィールドに値が設定されている場合に有効にされます。etcd-snapshot-backup.sh
スクリプトを実行し、etcd スナップショットの保存先となる場所を渡します。-E
フラグをsudo
に渡し、環境変数がスクリプトに適切に渡されるようにします。$ sudo -E /usr/local/bin/etcd-snapshot-backup.sh ./assets/backup/snapshot.db
この例では、スナップショットはマスターホストの
./assets/backup/snapshot.db
に保存されます。