SafeKit:Docker 高可用性&リアルタイムデータレプリケーションソフトウェア
SANless SafeKit mirror クラスターと Docker の連携方法
SafeKit は、Kubernetes リソースを大量に消費しすぎたり、複雑すぎたり、あるいはローカライズされたコンピューティングやエッジコンピューティングのコンテナワークロードには過剰に設計されすぎていると感じる組織向けに、軽量で「必要十分な」HA ソリューションを提供します。
SafeKit は、Linux 上の Docker 向けに、合理化されたオールインワンの 2 ノード高可用性クラスターを提供します。これは、複雑な「Do It Yourself」(DIY) Linux HA スタックに代わる、シームレスで統合されたソリューションとして機能し、ノードメンバーシップのための Corosync、リソースオーケストレーションのための Pacemaker、ブロックレベルレプリケーションのための DRBD を手動で設定する技術的な負担を排除します。
リアルタイムの同期レプリケーションと自動的に切り替わる仮想 IP アドレスを利用することで、SafeKit 高価な共有ストレージの必要性を排除する堅牢な SAN レス・クラスターを構築します。このアーキテクチャ、コンテナ化されたアプリケーションに対して、透過的なクライアント再接続、迅速な自動フェイルオーバー、およびデータ損失ゼロの保証(RPO =0) を保証します。
- ✅Kubernetes 代替: K8s のネットワーキング(イングレス/ロードバランサー)やオーケストレーションのオーバーヘッドなしで、コンテナの高可用性を実現します。
- ✅アーキテクチャの簡素化: Corosync/Pacemaker/DRBD スタックを単一のソフトウェアパッケージに置き換えます。
- ✅共有ストレージ不要: ローカルディスクとバイトレベルのレプリケーションを使用する SAN アーキテクチャ。
- ✅自動仮想 IP(VIP)フェイルオーバー: スイッチング中のクライアントの再接続を透過的に保証します。
- ✅同期データレプリケーション: ノード間のデータ損失ゼロを保証(RPO = 0)。
- ✅自動フェイルオーバーとフェイルバック: 手動スクリプトなしで、冗長ノード上でアプリケーションを迅速に再起動します。

SafeKit の SANless アーキテクチャを使用した、Docker コンテナ向けの HA(高可用性)ソリューション。
⚡ Docker 向け HA クイックインストールガイド >
目次
- SafeKit ソフトウェアは、どのようにして Docker 高可用性クラスターを簡単に実装するのでしょうか?
- SafeKit mirror クラスター Docker とどのように連携しますか?
- SafeKit High Availability の制限事項
- 比較:SafeKit SANless Cluster と従来の Docker HA
- 比較:SafeKit とオープンソース Linux HA(Pacemaker/Corosync/DRBD)
- Docker 高可用性に関する概要
- 🔍 SafeKit を探索する
SafeKit ソフトウェアは、どのようにして Docker 高可用性クラスターを簡単に実装するのでしょうか?
2 台のサーバーで Docker の高可用性を実現するにはどうすればよいですか?
SafeKit は、共有ディスクを必要とせずに、2 台の冗長サーバー間で Docker の高可用性ソリューションを提供します。このシステムは、Docker の永続データに関連付けられたディレクトリのリアルタイムレプリケーションを構成することで機能します。障害が発生した場合、SafeKit 自動フェイルオーバーを管理し、数秒でセカンダリノード上のコンテナを再起動します。
Docker コンテナの自動ネットワークフェイルオーバーはどのように機能しますか?
SafeKit は、自動的に切り替わる仮想 IP(VIP)アドレスを実装します。この VIP は、クライアントアプリケーションの単一のエントリポイントとして機能します。プライマリサーバーに障害が発生した場合、SafeKit Gratuitous ARP を使用して仮想 IP を冗長サーバーに移動します。これにより、クライアントは Docker アプリケーションが再起動されたのと同じ IP アドレスに透過的に再接続されます。
Docker における「SANless」クラスターとは何ですか?
Docker 用の SANless クラスターは、高価なストレージエリアネットワーク(SAN)またはネットワーク接続ストレージ(NAS)を必要とせずに高可用性を提供するアーキテクチャです。SafeKit は、ホストベースの同期レプリケーションを使用して、2 台のサーバーのローカルディスク間でデータを mirror します。これにより、共有ストレージが単一障害点となることがなくなり、リカバリポイント目標(RPO)がゼロであることが保証されます。つまり、フェイル中にデータ損失が発生することはありません。
Kubernetes スキルがなくても Docker クラスターを構築することは可能ですか?
はい。この記事では、専門的なクラスタリングスキルや複雑な Kubernetes オーケストレーションなしで、Docker クラスターを迅速に実装するSafeKit を説明します。の自動再起動スクリプトを使用して Docker アプリケーションの起動と停止を処理することで、K8s よりもはるかに簡単に展開および保守できる堅牢な冗長性ソリューションが得られます。
SafeKit レプリケーションは、Docker 向けの DRBD のようなブロックレベルのソリューションとどう違うのですか?
ブロックレベルのレプリケーション(DRBD など)を使用するほとんどの SAN レスソリューションとは異なり、SafeKit ファイルレベルでホストベースのレプリケーションを実行します。このアプローチは、Docker アプリケーションにとって完全に透過的です。なぜなら、データを特定の、新しく作成された「レプリケートされたディスク」ボリュームに移行する必要がないからです。代わりに、既存のアプリケーションフォルダー(システムディスク上のフォルダーも含む)をレプリケートするように SafeKit を構成するだけです。これにより、複雑なディスクの再構成やアプリケーションの変更なしに、Docker がすでにインストールされている場所に正確に高可用性を実装できます。
SafeKit Docker 以外のアプリケーションでも高可用性を提供できますか?
はい。SafeKit、Windows と Linux 両方に対応した、非常に汎用性の高い高可用性ソフトウェアです。Docker にも、SafeKit あらゆるファイルディレクトリ、サービス、データベースのリアルタイムレプリケーションと自動フェイルオーバーを実装するために使用できます。Hyper-V や KVM 仮想マシン、Docker、K3s、さまざまなクラウドアプリケーションなど、幅広いテクノロジーをサポートしています。これにより、SafeKit、特殊なハードウェアを必要とせずに、多様な IT 環境で重要なワークロードを保護するためのユニバーサルなクラスタリングソリューションとなります。
SafeKit mirror クラスター、どのように Docker と連携しますか?
ステップ 1. リアルタイムレプリケーション
サーバー 1(PRIM)は Docker アプリケーションを実行します。クライアントは仮想 IP アドレスに接続されます。SafeKit は、ファイル内で行われた変更をネットワーク経由でリアルタイムに複製します。

非同期レプリケーションとは異なり、レプリケーションは同期式であり、障害が発生してもデータ損失はありません。
SafeKit で複製するディレクトリの名前を設定するだけです。ディスクの構成に関する前提条件はありません。ディレクトリはシステムディスクに配置できます。
ステップ 2. 自動フェイルオーバー
サーバー 1 に障害が発生すると、サーバー 2 が引き継ぎます。SafeKit 仮想 IP アドレスを切り替え、サーバー 2 で Docker アプリケーションを自動的に再起動します。
アプリケーションは、SafeKit によって Server 2 に最新の状態にレプリケートされたファイルを見つけます。アプリケーションは、Server 1 にレプリケートされなくなったファイルをローカルで変更することにより、Server 2 で実行を継続します。

フェイルオーバー時間は、障害検出時間(デフォルトでは 30 秒)とアプリケーションの起動時間を合計した時間です。
ステップ 3.自動フェイルバック
フェイルバックとは、サーバー 1 に障害が発生した原因を修正した後、サーバー 1 を再起動することです。
SafeKit ファイルを自動的に再同期し、サーバー 1 が停止している間にサーバー 2 で変更されたファイルのみを更新します。

フェイルバックは Docker アプリケーションを中断することなく行われ、アプリケーションはサーバー 2 で引き続き実行されます。
ステップ 4. 通常の状態に戻す
再統合後、ファイルはステップ 1 と同様に mirror モードに戻ります。システムは高可用性モードに戻り、Docker アプリケーションはサーバー 2 で実行され、SafeKit ファイル更新をサーバー 1 にレプリケートします。

管理者がアプリケーションをサーバー 1 で実行したい場合、適切なタイミングで Web コンソールから手動で実行するか、または設定によって自動的に実行することができます。
SafeKit mirror クラスターDocker 用に構成する方法

SafeKit ウェブコンソールは、重要なアプリケーションの可用性を高めるための直感的なインターフェースを提供します。数ステップで SafeKit mirror クラスターを設定し、事業継続性を確保できます
- アプリケーションフェイルオーバー(マクロタブ): 障害発生時に自動的に再起動する特定のアプリケーションサービスを定義します。
- ハートビートネットワーク: クラスターノードが互いの正常性と可用性を継続的に監視し、フェイルオーバーの決定を同期するために使用する専用の通信パス。
- 仮想 IP 管理: フェイルオーバー後にクライアントが透過的に再接続できるように、仮想 IP(VIP)を設定します。
- リアルタイムレプリケーション: ホストベースの同期バイトレベルレプリケーションの対象となる重要なディレクトリを選択します。
- チェッカー: アプリケーションの正常性を監視し、プロセスの障害が検出された場合は自動復旧をトリガーします。
SafeKit クラスターには、専用のスプリットブレインチェッカーが搭載されており、サードパーティのウィットネスマシンや追加のハートビートネットワークを必要とせずに、ネットワーク分離の問題を解決します。クラスターにおけるハートビート、フェイルオーバー、クォーラムの詳細については、こちらをご覧ください。
Docker 用 SafeKit mirror クラスターを監視する方法

SafeKit 管理コンソールは、高可用性インフラストラクチャの統合ビューを提供します。これにより、管理者はクラスターの動作状態を監視し、データ同期をリアルタイムで追跡できます。
2 ノード mirror クラスターの場合、コンソールには各サーバーの役割が明確に表示されます
- PRIM (プライマリ): アプリケーションを実行し、仮想 IP を管理しているアクティブなノード。ローカルストレージへの書き込みと、セカンダリノードへのリアルタイムレプリケーションを実行します。
- SECOND: 同期バイトレベルの更新を受信するスタンバイノード。プライマリに障害が発生した場合、即座に引き継ぐ準備ができています。
- ALONE 状態: クラスターが単一ノードで実行されている場合(メンテナンス中や障害発生後など)、冗長性が一時的に失われていることを視覚的に警告します。
- 再同期の進捗状況: 障害が発生したノードが復旧すると、バックグラウンドでのデータ再統合中にそのステータスがオレンジ色に変わり、「通常状態に戻る」フェーズ中にダウンタイムが発生しないようにします。
シンプルなステータスアイコンに加え、このインターフェースはワンクリックのフェイルオーバーオーケストレーションを提供し、計画メンテナンス中にプライマリの役割を手動で再割り当てしながら、ユーザーアクティビティの継続的な可用性を確保します。
SafeKit High Availability の制限事項
| 制限/要件 | 理由と影響 | 推奨される代替案 |
|---|---|---|
| レプリケーションサイズ:数 TB | 障害発生後の再同期時間(ステップ 3): • 1 Gb/s ネットワーク ≈ 3 時間/TB • 10 Gb/s ネットワーク ≈ 1 時間/TB(ディスクの書き込み性能による) | • 外部共有ストレージを使用する(より高価で、より複雑)。 |
| ファイル数:100 万ファイル未満 | •障害発生後の再同期時間性能(ステップ 3)。 • 両方のノード間で各ファイルを比較するのに必要な時間。 | • 複製する多数のファイルを仮想ハードディスク/仮想マシンに配置します。 • この場合、仮想ハードディスク/仮想マシンを表すファイルのみがレプリケートおよび再同期されます。 |
| フェイルオーバー容量:32 台以下の VM | • 各 VM は、独立した mirror モジュール内で実行されます。 • 同じクラスター上で最大 32 個の mirror モジュールを実行できます。 | • 外部共有ストレージと別の VM クラスタリングソリューションを使用する(より高価で、より複雑)。 |
| ネットワークアーキテクチャ:リモートサイト間の LAN/VLAN ネットワーク | • 同じサブネット内の 2 つのノードで仮想 IP アドレスを自動フェイルオーバーします。 • 再同期のための十分な帯域幅(ステップ 3)。 • 同期レプリケーションの低レイテンシ:通常<5 ミリ秒の RTT。より高い値は、アプリケーションの書き込みレートに対して検証する必要があります。 | • 2 つのノードが異なるサブネットにある場合(クラウドで一般的)、ロードバランサー、クラウドプロバイダーの CLI、BGP、または DNS リダイレクションなどの他のルーティングオプションを使用します。 • 高遅延ネットワークには、非同期レプリケーションに対応したバックアップソリューションを使用してください。 |
比較:SafeKit SANless Cluster と従来の Docker HA
| 機能 | 従来の HA(K8s / 共有ストレージ) | SafeKit (SAN レス Mirror) |
|---|---|---|
| ストレージアーキテクチャ | 高価な SAN または NAS(共有ディスク)が必要 | 共有なし:ローカルディスクのみを使用します |
| レプリケーションの種類 | 多くの場合、ブロックレベル(設定が複雑) | バイトレベルのファイルレプリケーション(透過的) |
| データの整合性 | 外部ストレージの信頼性に依存する | 同期レプリケーション (RPO = 0) |
| ネットワーク設定 | 複雑なもの(ロードバランサー、イングレスなど) | 自動仮想 IP(VIP)フェイルオーバー |
| スキル要件 | 専門家(Kubernetes /クラスタリングスペシャリスト) | シンプル:特別なスキルは不要です |
| フェイルバックプロセス | 手動または複雑な再同期 | 変更されたデータの自動再同期 |
比較:SafeKit とオープンソース Linux HA(Pacemaker/Corosync/DRBD)
| 機能 | Linux HA スタック (Pacemaker + Corosync + DRBD) | SafeKit (SAN レス Mirror) |
|---|---|---|
| アーキテクチャ | モジュール式:3 つ以上の異なるツールとカーネルモジュールを管理する必要があります。 | オールインワン:レプリケーションとフェイルオーバーを統合した単一のソフトウェア。 |
| レプリケーションレベル | ブロックレベル (DRBD): パーティション/ディスクボリューム全体を複製します。 | バイトレベル (SafeKit): 特定のファイル内で変更されたデータのみをレプリケートします。 |
| 設定の容易さ | 複雑:順序制約 (仮想 IP、マウント)、アプリケーションリカバリスクリプト、およびクォーラム/フェンシングルールを手動でプログラムするには、CLI (コマンドラインインターフェイス) の専門知識が必要です。 | シンプル:直感的なウェブコンソールと、すぐに使えるアプリケーションモジュール。 |
| フェンシング (STONITH) | 破損を防ぐために必須:STONITH(Shoot The Other Node In The Head)は、障害が発生したサーバーの電源を文字通り遮断するか、再起動するために、専用のハードウェア(IPMI/iDRAC)を必要とします。 | ソフトウェアベース:追加のハードウェアなしでインテリジェントなスプリットブレイン解決を実現。 |
| フェイルバックプロセス | 手動/技術的:再同期中にデータが分岐したり、「スプリットブレイン」が発生したりするリスク。 | 自動化と透過性:安全なフェイルバックを伴うバックグラウンド再同期。 |
| メンテナンス | 個々のコンポーネントの更新やトラブルシューティングには、高度な専門スキルが必要です。 | Web ダッシュボードを介して、一般的なシステム管理者でも簡単にメンテナンスできます。 |
Docker 高可用性に関する概要
SafeKit は、Docker 向けのシンプルな 2 ノード HA クラスターを提供し、ミッションクリティカルなワークロード向けの軽量な Kubernetes 代替手段となります。複雑な Corosync、Pacemaker、DRBD スタックを置き換えることで、SafeKit 高価な SAN/NAS 共有ストレージの必要性をなくします。
SafeKit は、リアルタイムの同期レプリケーションと自動仮想 IP(VIP)フェイルオーバーにより、データ損失ゼロ(RPO =0) と透過的なアプリケーションリカバリを保証します。最小限の設定と管理オーバーヘッドで、堅牢な SAN レス高可用性を必要とする組織にとって理想的なソリューションです。
🔍 SafeKit を探索する
SafeKit の機能、アーキテクチャ、ビデオ、ドキュメント、無料トライアルに関する情報をご覧ください。
| リソース | 説明 | リンク |
|---|---|---|
| 主な機能 | SafeKit がシンプルで費用対効果の高い高可用性ソリューションである理由をご覧ください。 | 主な機能 |
| ユースケース | SafeKit が重要なアプリケーションとインフラストラクチャの可用性を維持する方法をご覧ください。 | ユースケースを探索する |
| デプロイメントモデル | SafeKit は、SAN や共有ストレージなしで高可用性を提供します。 | デプロイモデルを探索する |
| 高可用性戦略 | 仮想マシンの高可用性とアプリケーションの高可用性を比較します。 | 2 つの戦略を比較する |
| 技術仕様 | SafeKit クラスターの技術要件と制限事項を確認してください。 | 技術仕様書を読む |
| 動画 | SafeKit の構成と自動フェイルオーバーのデモンストレーションをご覧ください。 | テクニカルビデオを見る |
| アーキテクチャ | SafeKit mirror クラスターファイルをリアルタイムでレプリケートし、フェイルオーバーを処理する方法について説明します。 | Mirror アーキテクチャを探索する |
| アーキテクチャ | SafeKit farm クラスターネットワークトラフィックを分散し、フェイルオーバーを処理する方法について説明します。 | Farm アーキテクチャを探索する |
| 製品比較 | SafeKit と従来の高可用性クラスターを比較します。 | ソリューションを比較する |
| 技術リソース | 技術ドキュメントの検索、SafeKit のダウンロード、無料トライアルへのアクセスはこちらから。 | ドキュメントと無料トライアルにアクセス |
| アプリケーションモジュール | 事前に設定された SafeKit モジュールを使用して、アプリケーションの高可用性を設定します。 | アプリケーションモジュールを探索する |