longhornのbackup target
longhorn をクラスタのストレージに採用しているものの、バックアップを取っていなかったので取るようにしました。
基本的にこのドキュメントの通り進めればいけたのでメモ
https://longhorn.io/docs/1.6.2/snapshots-and-backups/backup-and-restore/set-backup-target/#set-up-gcp-cloud-storage-backupstore
バケットの準備
普段は gcp をずっと使っているので gcs にバックアップを取るようにします。
一方で、longhornのbackup targetはs3しかサポートされていないので、gcsのs3互換モードで対応します。
バケットを開き、サイドメニューの設定を開き、相互運用のタブからサービスアカウントのアクセスキーが取得できます。

secretsの作成
こんな感じのsecretsを作成します
AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY には最初に作成したサービスアカウントキーを使用
apiVersion: v1
kind: Secret
metadata:
name: longhorn-gcp-backups
namespace: longhorn-system
type: Opaque
stringData:
AWS_ACCESS_KEY_ID: YOUR_ACCESS_KEY
AWS_ENDPOINTS: https://storage.googleapis.com
AWS_SECRET_ACCESS_KEY: YOUR_SECRET_KEY
longhorn側の設定
longhornのSettingタブからGeneralを選択し設定画面に飛び、backup target からtargetの設定をします
Backup Target には s3://${bucket name}@us/ 相当の文字列
Backup Target Credential Secret には longhorn-gcp-backups に作成したsecretsの名前
を指定します

System Buckup > Create でバックアップを作成するとgcsにしっかり作成されていることを確認

その後は Recuring Job から定期的にsnapshotを取るように設定して定期バックアップもとるようにしました。
