メインコンテンツへ移動

バックアップ

  • バックアップ前にディスク使用量を確認してください。容量不足を防ぐため、使用済み容量と同じか、それ以上の空き容量が必要です。
  • 以下のディレクトリ例では、日時を表す 20221111184140 を使用しています。形式は「年月日時分秒」です。
  • ホストではデフォルトのデータディレクトリ /data/hap/ を使用します(cat /etc/pdcaptain.json、または管理ツールのルートディレクトリで cat service.sh | grep installDir= を実行すると確認できます)。

dump によるバックアップ​

サービスを停止せずに実行できます。

docker exec -it $(docker ps | grep -E 'hdp' | awk '{print $1}') bash -c 'source /entrypoint.sh && backup mysql mongodb file'

デフォルトでは、バックアップファイルは /data/hap/script/volume/data/backup/20221111184140/ に生成されます。保存先を変更する場合は、docker-compose.yaml の app サービスに次のようにマウントを追加してください。

volumes:
- /backup/:/data/backup/

この場合、バックアップファイルはホストの /backup/ に生成されます。

backup/
└── 20221201193829
├── backupFile.log
├── backupMongodb.log
├── backupMysql.log
├── file
│   ├──...
├── mongodb
│   ├──...
└── mysql
├── ...

backup ディレクトリで tar -zcvf 20221111184140.tar.gz ./20221201193829 を実行し、dump で出力したファイルを圧縮します。

ファイルコピーによるバックアップ​

/data/hap/script/volume/data/ 内の mysql、mongodb、storage、kafka、zookeeper、redis フォルダーは、すべてバックアップ対象です。

HDP サービスを停止し、次のコマンドでデータをアーカイブします。

mkdir -p /backup && cd /data/hap/script/volume/data/ && tar -zcvf /backup/20221111184140.tar.gz ./mysql ./mongodb ./storage ./kafka ./zookeeper ./redis