3.2. Fuse Online 環境のバックアップ
Fuse Online を定期的にバックアップするよう設定できます。
- Fuse Online がコネクションとインテグレーションを保存する内部 PostgreSQL データベース。
-
syndesis-operator
によって作成され、Fuse Online の実行に必要な OpenShift リソース。これには、設定マップ、デプロイメント設定、およびサービスアカウントが含まれますが、これらに限定されません。
Fuse Online をインストールする前に Fuse Online 環境のバックアップを設定するか、Fuse Online 環境の設定を変更してバックアップを有効することができます。
Fuse Online がバックアップを実行するように設定されている場合、Fuse Online はデータを単一のファイルに圧縮し、そのファイルを指定した Amazon S3 バケットにアップロードします。新しい Fuse Online 環境 (コネクションやインテグレーションが定義されていない) にバックアップを適用して、バックアップした Fuse Online 環境を復元できます。
前提条件
- OCP がオンサイトで稼働している必要があります。
-
oc
クライアントツールがインストール済みで、Fuse Online が稼働中または稼働予定の OCP クラスターに接続されている必要があります。 - クラスター管理者権限を持つユーザーは、該当ユーザーがクラスターでアクセス権限を持つプロジェクトに Fuse Online をインストールするための権限を付与済みである必要があります。
- AWS アクセスキーと AWS シークレットキーが必要です。これらのクレデンシャルの取得に関する詳細は、IAM ユーザーのアクセスキーの管理 を参照してください。
- アップロードする S3 バケットが存在する AWS リージョンを知っておく必要があります。
- バックアップのアップロード先の S3 バケットの名前を知っておく必要があります。
手順
Fuse Online をインストールする権限を持つアカウントで OpenShift にログインします。以下に例を示します。
oc login -u developer -p developer
バックアップを設定する Fuse Online 環境を稼働中または稼働予定の OpenShift プロジェクトに切り替えます。以下に例を示します。
oc project my-fuse-online-project
OpenShift シークレットを作成します。コマンドラインで以下を行います。
-
以下のコマンド形式で
syndesis-backup-s3
を指定します。 AWS 変数を、AWS アクセスキー、AWS シークレットキー、バケットがある AWS リージョン、およびバケットの名前に置き換えます。
以下のコマンド形式を使用してシークレットを作成します。
oc create secret generic syndesis-backup-s3 \ --from-literal=secret-key-id="my-aws-access-key" \ --from-literal=secret-access-key="my-aws-secret-key" \ --from-literal=region="aws-region" \ --from-literal=bucket-name="aws-bucket-name"
このシークレットは、バックアップジョブの実行中に存在する必要があります。
-
以下のコマンド形式で
Fuse Online がインストールされていない場合は、
default-cr.yml
ファイルを編集してバックアップを有効にする必要があります。Fuse Online をインストールする前にデフォルトのカスタムリソースファイルを編集 を参照してください。Fuse Online のインストール後、カスタムリソースに指定したスケジュールに応じてバックアップジョブが発生します。Fuse Online が稼働している場合、
syndesis
カスタムリソースを編集する必要があります。以下のコマンドを実行して、エディターで
syndesis
カスタムリソースを開きます。oc edit syndesis
以下を
spec:
の下に追加します。backup: schedule: my-backup-interval
my-backup-interval
をバックアップの間隔に置き換えます。以下を参照して、バックアップの間隔を指定する方法を判断してください。- cron を使用して事前設定されたスケジュール (英語)
cron で設定する間隔 (英語)
間隔の前に
@
記号を指定しないでください。たとえば、毎日バックアップを行うよう設定するには、カスタムリソースに以下のような記述が含まれるようにします。apiVersion: syndesis.io/v1beta1 kind: Syndesis metadata: name: app spec: backup: schedule: daily
ファイルを保存します。
これにより、バックアップジョブが
syndesis-operator
に追加されます。
結果
Fuse Online がすでに稼働している場合、定義したスケジュールに応じて Fuse Online のバックアップジョブが実行されます。
次のステップ
Fuse Online をインストールする必要がある場合は、default-cr.yml
ファイルを編集して、その他の必要な機能を有効にしたり、他のパラメーターを設定したりします。Default-cr.yml
ファイルにすべての設定がある場合は、OpenShift シークレットの作成時に指定したプロジェクトで Fuse Online をインストールします。