メインコンテンツにスキップ ナビゲーションにスキップ フッターにスキップ
MULTI-CLOUD

稼働中のKubernetesクラスタをフォーク、または移動

クラスタはノード、設定、データを一式まとめて移動します。別のマシンへ、別のデータセンターへ。カットオーバーは週末仕事ではなく、秒単位で完了します。

Veleroはバックアップを復元。Cluster APIは形だけを複製。Rediaccは稼働中のクラスタをデータごと移動します。

rdc cluster fork prod --tag staging
ノードイメージを複製中(コピーオンライト)........... 完了 ..
Ceph RBDボリュームを複製中...................... 完了 ..
新しいIP向けにノードIDを書き換え中........... 完了 ..
✓ ✓ フォーク完了(46秒):prod-stagingが起動。親クラスタは無傷。
rdc cluster migrate prod --to fsn1-dc2
クラスタ稼働中に事前コピー...... 完了 ........
カットオーバー:停止、最終差分、再起動........... 16秒 ..

出力は例示です。実行時には追加ログが出る場合があります。 CLI reference: rdc cluster migrate

46s
Whole 2-node cluster fork
16s
Migrate cutover, measured
1-5s
Namespace fork
問題点

クラスタは構築した場所に固定される

Kubernetesはアプリを可搬にしました。しかしクラスタ自体はそうではありません。データは1つのデータセンターに存在します。移動するには再構築プロジェクトが必要です:新しいノード、新しいストレージ、バックアップからの復元、すべての再テスト。だからほとんどのチームは移動しません。そしてプロバイダーはそれを分かっています。

27% のクラウド支出が毎年無駄になる Flexera 2024 State of the Cloud Report [1]
17% 分、企業は平均でクラウド予算を超過する Flexera 2025 State of the Cloud Report [2]
$0.09/GB のデータ持ち出し手数料。乗り換えを高くつける料金設計。 AWS/Azure/GCP Pricing 2024 [3]
従来のやり方
Month 1 新しいクラスタを構築
Month 2 マニフェストとシークレットを再構築
Month 3 バックアップからボリュームを復元
Month 4 すべてのアプリを再テスト
Month 5+ 切り替えて祈るだけ
Rediaccを使えば
Pre-copy
16s cutover
Live
仕組み

クラスタ全体は1つのファイル群

1

クラスタイメージとボリューム

各ノードはイメージファイルから起動します。各ボリュームはCeph RBDイメージです。これらを合わせたものがクラスタ全体、つまりアプリ、設定、データです。

2

その場でフォーク

1つのコマンドですべてのイメージをコピーオンライトで複製します。私たちの検証環境では2ノードクラスタが46秒でフォークできました。親クラスタは稼働を継続します。

3

短いカットオーバーで移行

Rediaccはクラスタが稼働したまま事前コピーを行います。その後停止し、最終差分を送信して新しいマシンで再起動します。実測カットオーバー:16秒。

prod (Datacenter A) Running
Nodes 2 (k3s + Ceph)
Namespaces 8 apps
Volumes Ceph RBD
State Keeps running
Fork
46s
prod-staging (Datacenter B) Running
Nodes 2 (k3s + Ceph)
Namespaces 8 apps
Volumes Ceph RBD clones
State Own identity, new IPs
技術詳細

クラスタがファイルのように移動できる理由

すべてのノードはbtrfs上のイメージファイルから起動します。すべてのボリュームはCeph RBDイメージです。クラスタのコピーとは、これらのイメージをコピーオンライトで複製することです。エクスポートも変換も復元ステップも不要。だからフォークは数か月ではなく数秒で完了します。

バックアップツールは空のクラスタへ1つずつ復元
ノードイメージとボリュームが一式で移動
データには別のレプリケーション製品が必要
Ceph RBDクローンがコピーオンライトでそのまま追従
クラスタの複製には再プロビジョニングと再デプロイが必要
検証環境では2ノードクラスタのフォークが46秒。親クラスタは稼働を継続
カットオーバー計画は週末仕事
実測カットオーバー:16秒。ワークロードは移行先で再起動
重要な理由

Kubernetesはそのまま。可搬性を手に入れる。

Kubernetesはそのまま

Rediaccがk3sを運用するか、既存のクラスタに接続します。ボリュームはceph-csi RBD上で稼働。マニフェストはそのまま使えます。

本物のデータセンター可搬性

自社のKVMホスト上、またはLinodeのようなクラウドでプライベートVLANを使ってプロビジョニング。ノードプールにより、ディスク負荷の高いCephノードとCPU負荷の高いKubernetesノードを分離できます。

すべてに同じ考え方

Kubernetesアプリは名前空間です。他のリポジトリと同様に1~5秒でフォーク、データも込みです。Dockerリポジトリで使い慣れたコマンドがそのまま使えます。

差別化

稼働中のクラスタをデータごと移動できるのはRediaccだけ

バックアップツールは停止と復元のみ。Cluster APIはデータ抜きで形だけを複製。RBDミラーリングはボリュームだけでクラスタ全体はコピーしません。Rediaccはそのすべてを移動します。

機能 VeleroKasten K10Cluster APIRBD Mirroring Rediacc
アプリとボリュームをバックアップ [4] [5] Volumes only[9]
クラスタ全体をデータごと移動 Stop and restore[6] Stop and restore[7] Shape only[8]
稼働中のクラスタをデータごとフォーク
1つのアプリ(名前空間)を数秒で複製
全体書き換えなしでデータをコピー Async copy[10]
計画的な移行に向けた短い実測カットオーバー

クラスタに退路を

フォークして移行をテストし、それから本番移行。14日間の無料トライアルを開始しましょう。

$ rdc cluster fork prod --tag staging

お時間がありませんか?

詳細な解説は不要という方へ。スタンドアップミーティングでチームが読める5分版をご用意しています。

ショート版概要書をダウンロード(PDF)
Runs the apps you already ship
データベース、CI/CD、CMS、監視、ログイン、ストレージ。Kubernetes上で動くものなら、Rediaccはデータごとフォークして移動できます。
Sources & References
  1. Flexera, "2024 State of the Cloud Report," 2024. "27% of cloud spend continues to be wasted." www.flexera.com
  2. Flexera, "2025 State of the Cloud Report," 2025. "With cloud budgets already exceeding limits by 17%, organizations are increasingly turning to managed service providers." www.flexera.com
  3. AWS, "Amazon S3 Pricing — Data Transfer," 2024. "Data Transfer OUT from Amazon S3 to Internet: $0.09 per GB for the first 10 TB/month." aws.amazon.com
  4. Velero backs up Kubernetes cluster resources and persistent volumes and restores them into a cluster. velero.io
  5. Kasten K10 provides backup and restore of Kubernetes applications, including application data. docs.kasten.io
  6. Velero cluster migration restores a backup into a new cluster; workloads are recreated from the backup point, not moved live. velero.io
  7. Kasten K10 migrates applications between clusters by exporting a restore point and importing it into the target cluster. docs.kasten.io
  8. Cluster API's clusterctl move relocates Cluster API objects (the cluster's definition) to another management cluster; it does not move workload data. cluster-api.sigs.k8s.io
  9. Ceph RBD mirroring replicates block device images between Ceph clusters; it covers volumes, not Kubernetes cluster state. docs.ceph.com
  10. Ceph RBD mirroring is asynchronous, based on journaling or periodic snapshots, and is designed for disaster recovery. docs.ceph.com
フォークと移行の所要時間は、RediaccのKVM検証環境で2ノードクラスタを対象にエンドツーエンドで実測されたものです。デフォルトの整合性はクラッシュコンシステント、つまり電源断と同じ意味論です。移行のカットオーバー中、ワークロードは移行先で再起動します。