ストレージ管理
ディスク不足に悩まされることはもうありません。コンテナが動き続けたまま満杯のリポジトリを拡張し、削除したブロックをプールに返却し、その両方を自動的にマシンに任せます。
チュートリアル動画
1つのプール、成長するリポジトリ
各リポジトリは共有データストアプール内の1つのファイルです。リポジトリはオンラインで成長できます。リポジトリ内のデータを削除してもそれだけではブロックは解放されません。トリムがブロックをプールに返す役割を担います。
オンラインで拡張、ダウンタイムゼロ
rdc term connect --machine <machine-name> --repository data-app --command 'dd if=/dev/zero of=big.bin bs=1M count=1200 status=none && df -h .' ファイルシステムがいっぱいになるまで、repository にデータを書き込みます。
rdc repo expand --name data-app --machine <machine-name> --size 4G repository をオンラインで拡張します。container を稼働させたまま、LUKS container とファイルシステムが拡張されます。
rdc term connect --machine <machine-name> --repository data-app --command 'df -h .' repo の内部からファイルシステムを確認します。新しいサイズが反映されています。
トリムで回収する
rdc term connect --machine <machine-name> --repository data-app --command 'rm big.bin && df -h .' repository 内のデータを削除します。この時点では pool はまだ縮小しないことに注意してください。
rdc repo trim --name data-app --machine <machine-name> repo trim を実行して、解放されたブロックを共有 pool に返却します。オンラインで、ダウンタイムなしに実行できます。
自動化に任せる
rdc repo policy set --machine <machine-name> --name data-app --auto-grow true --max-quota 8G --grow-step 25% --auto-trim true サイズポリシーを設定します。上限を明示した自動拡張と、スケジュールされた trim を設定します。
rdc repo policy get --machine <machine-name> --name data-app 有効なポリシーを読み取ります。拡張と trim が自動化されました。
マシンはしきい値を超えたときにリポジトリを拡張し(明示した上限まで)、スケジュールに従ってトリムします。ストレージメンテナンスタイマーが適用するため、独自の cron は不要です。
ヘルスビュー
rdc machine query --name <machine-name> --storage-health マシンのストレージの健全性を確認します。repo ごとの使用量、pool の状態、CoW reflink の節約量を確認できます。
リポジトリごとの使用量、プールの状態、コピーオンライト共有による節約量が1つのコマンドで確認できます。
完了です
18本のチュートリアル: インストール、接続、デプロイ、どこからでも編集、自信を持ってフォーク、シークレットを安全に保管、本格的なバックアップ、本番公開、監視、バージョン管理、移行、同期、そしてディスク不足知らず。サーバーは再びあなたのものです。