duplicityとは
duplicityはローカルのファイルをリモートにバックアップする便利なOSSです。特に、Amazon S3へのバックアップにも対応しています。ということは、S3互換のIBM Cloud Object Storageにもバックアップが取れます。
手順
IBM Cloud Object Storageのオーダーとバケットの作成
(手順省略)
クレデンシャルファイルの作成
以下のファイルを作成します。awsという文字が見えるのは気のせいです。
$ vi ~/.aws/credentials
[ibmcloud-s3]
aws_access_key_id = ポータルで確認できるアクセス・キーID
aws_secret_access_key = ポータルで確認できる秘密アクセス・キー
duplicityのインストール
CentOSやRed Hat Enterprise Linuxの場合はepelリポジトリが必要です。
# CentOSの場合
$ yum install epel-release
# RHELの場合
$ yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
duplicityをインストールします。
$ yum install duplicity
バックアップの取得
ポータルで確認できる認証エンドポイントを指定して、バックアップを取得します。東京リージョンだとs3.jp-tok.cloud-object-storage.appdomain.cloud
(パブリック)、s3.private.jp-tok.cloud-object-storage.appdomain.cloud
(プライベート)またはs3.direct.jp-tok.cloud-object-storage.appdomain.cloud
(VPC)です。今回はパブリックを使用します。
# 初回
$ AWS_PROFILE=ibmcloud-s3 duplicity full --no-encryption --s3-endpoint-url https://s3.jp-tok.cloud-object-storage.appdomain.cloud ソース boto3+s3/バケット名/プレフィックス
# 2回目以降
$ AWS_PROFILE=ibmcloud-s3 duplicity incremental --no-encryption --s3-endpoint-url https://s3.jp-tok.cloud-object-storage.appdomain.cloud ソース boto3+s3/バケット名/プレフィックス
もし実行時にduplicity: error: no such option: --s3-endpoint-url
が表示されエラーとなった場合は、こちらの記事を参照ください。
うまく動けばとても簡単にバックアップがとれます。リストアも同様にできますし、今回は暗号化なしにしましたが、暗号化も容易です。詳しくはduplicityのドキュメントを参照ください。