バックアップ
- バックアップ前にディスク使用量を確認してください。容量不足を防ぐため、使用済み容量と同じか、それ以上の空き容量が必要です。
- 以下のディレクトリ例では、日時を表す 20221111184140 を使用しています。形式は「年月日時分秒」です。
- ホストではデフォルトのデータディレクトリ
/data/mingdao/を使用します(cat /etc/pdcaptain.json、または管理ツールのルートディレクトリでcat service.sh | grep installDir=を実行すると確認できます)。
dump によるバックアップ
サービスを停止せずに実行できます。
docker exec -it $(docker ps | grep -E 'mingdaoyun-hdp' | awk '{print $1}') bash -c 'source /entrypoint.sh && backup mysql mongodb file'
デフォルトでは、バックアップファイルは /data/mingdao/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/mingdao/script/volume/data/ 内の mysql、mongodb、storage、kafka、zookeeper、redis フォルダーは、すべてバックアップ対象です。
HDP サービスを停止し、次のコマンドでデータをアーカイブします。
mkdir -p /backup && cd /data/mingdao/script/volume/data/ && tar -zcvf /backup/20221111184140.tar.gz ./mysql ./mongodb ./storage ./kafka ./zookeeper ./redis