現在、flynnCLIを使用してpostgresdbの論理バックアップをプルする基本的なバックアップコマンドがありますが、より堅牢なシステムが必要です。
考えるべきいくつかのこと:
:+1:スケジュールされたバックアップ機能を見たいです:)
バックアップストレージとしてAmazonS3を投入できますか? これはまさに私がここで使いたいものです。 :)
$ flynn cluster backup
の結果を暗号化して、それらをs3にスローするソリューションを開発しています。 後でスペックに問題がなければ、後でフリンにPRを作成します。 これはすべてを実装するわけではありませんが、それは始まりになります。
バックアッププロセスはbacky
と呼ばれ、 blobstore
と同じスタイルの環境を実装します。
$ flynn -a backy env
BACKEND_S3MAIN=backend=s3 region=eu-west-1 bucket=flynn-backup access_key_id=XXXXXX secret_access_key=YYYYYYYYY
DEFAULT_BACKEND=s3main
BACKUP_SCHEDULE='* */8 * * *'
BACKUP_ENCRYPTION=type=symmetric symmetric=ZZZZZZZZZZZ
BACKUP_SCHEDULE
はcron時間形式を使用します。
BACKUP_ENCRYPTION
はnone, symmetric, public-key
の1つです。 また、 symmetric
またはprivate_key
パラメータのいずれかを含める必要があります
BACKUP_ADMINS
は、 public-key
オプションが使用されている場合にバックアップを開くことができる追加のgpg公開鍵のリストです。
https://flynn.io/docs/production#amazon -s3と同じアクセス許可を使用することをお勧めしますが、 "s3:DeleteObject"
のアクセス許可はありません。 このように、プロセスはバックアップの読み取りと書き込みのみを実行でき、バックアップの削除はできません。 これは、クラスターがハッキングされた場合に役立ち、バックアップが危険にさらされる必要がなくなります。
要件にバージョン管理と有効期限を追加して、バックアップが最終的に自動的に削除されるようにすることができます。 ユーザーはこれらの詳細をバケットに設定する必要があります。
s3
のみがこの追加専用のアクセス許可を実装しているため、現時点ではGoogleまたはAzureはお勧めしませんが、それらも実装されます。
暗号化にはhttps://github.com/maxwellhealth/go-gpgのgpg
を使用します。 対称鍵(パスワード)がデフォルトのオプションになりますが、sysadmin公開gpg鍵のリストも使用できます。
blobstoreのストレージ関数を使用したいと思っています。
import (
...
"github.com/flynn/flynn/blobstore/backend"
)
Flynnはメンテナンスされておらず、インフラストラクチャは2021年6月1日にシャットダウンされます。詳細については、READMEを参照してください。
最も参考になるコメント
$ flynn cluster backup
の結果を暗号化して、それらをs3にスローするソリューションを開発しています。 後でスペックに問題がなければ、後でフリンにPRを作成します。 これはすべてを実装するわけではありませんが、それは始まりになります。実装
バックアッププロセスは
backy
と呼ばれ、blobstore
と同じスタイルの環境を実装します。BACKUP_SCHEDULE
はcron時間形式を使用します。BACKUP_ENCRYPTION
はnone, symmetric, public-key
の1つです。 また、symmetric
またはprivate_key
パラメータのいずれかを含める必要がありますBACKUP_ADMINS
は、public-key
オプションが使用されている場合にバックアップを開くことができる追加のgpg公開鍵のリストです。https://flynn.io/docs/production#amazon -s3と同じアクセス許可を使用することをお勧めしますが、
"s3:DeleteObject"
のアクセス許可はありません。 このように、プロセスはバックアップの読み取りと書き込みのみを実行でき、バックアップの削除はできません。 これは、クラスターがハッキングされた場合に役立ち、バックアップが危険にさらされる必要がなくなります。要件にバージョン管理と有効期限を追加して、バックアップが最終的に自動的に削除されるようにすることができます。 ユーザーはこれらの詳細をバケットに設定する必要があります。
s3
のみがこの追加専用のアクセス許可を実装しているため、現時点ではGoogleまたはAzureはお勧めしませんが、それらも実装されます。暗号化にはhttps://github.com/maxwellhealth/go-gpgの
gpg
を使用します。 対称鍵(パスワード)がデフォルトのオプションになりますが、sysadmin公開gpg鍵のリストも使用できます。blobstoreのストレージ関数を使用したいと思っています。