データベース
 Computer >> コンピューター >  >> プログラミング >> データベース

ObjectRocketは、MongoDBを正常で利用可能な状態に保ちます

元々は2020年11月にObjectRocket.com/blogで公開されました

Rackspaceでは、ObjectRocketチームがMongoDB®データベースの管理を支援します。災害復旧、レプリケーション、フォールトトレランス、およびMongoDBデータベースの高可用性を提供します。

ObjectRocketは、MongoDBを正常で利用可能な状態に保ちます はじめに

ObjectRocketは現在、シャードとレプリカのMongoDBインスタンスオプションを提供していますが、舞台裏では、データの冗長性とフォールトトレランスのために常に3つのメンバーのレプリカセットを使用しています。メンバーレプリカセット。

ただし、ディザスタリカバリは別の問題です。 ObjectRocketは、ShardedおよびReplica MongoDBインスタンスが、災害イベントの場合に使用できる追加コストで、別のデータセンターのミラーリングされたメンバーレプリカセットを受信する災害復旧スキームを提供します。

パッケージ

ObjectRocketが管理するすべてのMongoDBインスタンスには、高可用性、レプリケーション(データ冗長性)、およびフォールトトレランスがパッケージとして付属しています。

高可用性

高可用性(HA)を使用すると、さまざまなテクノロジーを通じていつでもデータにアクセスできます。ただし、ほとんどすべてのHAソリューションの重要なコンポーネントは、データのレプリカです。ここで、データの冗長性が機能します。表示されるデータベースは1つだけですが、舞台裏では、そのデータの2つ以上の正確なコピー(レプリカ)があり、障害が発生した場合に1つのレプリカセットノードから別のレプリカセットノードにシフトするのに役立ちます。

フォールトトレランス

フォールトトレランスは、同じフォールトゾーン内のコンポーネントに障害が発生した場合にシステムが適切に動作し続けることを可能にするプロパティです。ビジネスの継続性を確保するために、シャードのレプリカセットメンバーごとに異なるホストまたはサーバーを使用します。これにより、一方が他方をダウンさせても、他のメンバーは機能します。

レプリケーション(データの冗長性)

MongoDBレプリケーションは、アプリケーションレベルで複数のサーバー間でデータを同期するプロセスです。レプリケーションは冗長性を提供し、異なるデータベースサーバー上のデータの複数のコピーでデータの可用性を向上させます。レプリケーションは、単一サーバーの損失からデータベースを保護し、ハードウェア障害やサービスの中断から回復できるようにします。データの追加コピーを使用して、1つ以上をディザスタリカバリ、レポート、またはバックアップ専用にすることができます。

ディザスタリカバリ(オプション)

ディザスタリカバリ(DR)は、自然災害、データセンターレベルの停止を引き起こす可能性のある停電などの重大な負のイベントの影響から組織を保護する計画の領域です。 DRの目標は、ビジネスが可能な限り通常に近い状態で継続することです。

DRなしのユースケース

年間を通じて、特にサイバーマンデーとホリデーシーズンに売上が高いシナリオを想定してみましょう。

アーキテクチャはどのようになりますか?

米国を拠点とする企業として、データを米国内に保存したい場合は、DFWデータセンターを使用してデータを保存し、IADデータセンターを使用してバックアップを保持します。

データをセカンダリとして機能する2つのノードにミラーリングすることでHAを実現します ノード。 プライマリの場合 なんらかの理由で失敗する、セカンダリ 新しいプライマリになります ノードですが、まだ別のバックアップがあります。その間に、サポートチームは障害が発生したノードを回復し、新しいプライマリと同期します。 。

MongoDBは、1つのプライマリを使用して、単一の大きなレプリカセットを水平方向にスケールアウトできます。 および2つのセカンダリ アップ(またはダウン)状態のハートビート通信と、oplogを介して発生するセカンダリへのレプリケーションを備えたノード。

同じデータセンター内の異なるハードウェア上に各ホストを配置することで、フォールトトレランスを実現します。そうすれば、ハードウェアに障害が発生しても、MongoDBは引き続き機能します。

通常、シャードは単一のMongoDBインスタンスである可能性があります。ただし、前述のように、ObjectRocketのレプリカセットには、次の画像に示すように、3つのMongoDBインスタンスが含まれています。

シャード:

  • DFWNODE1:プライマリ
  • DFWNODE2:セカンダリ
  • DFWNODE3:セカンダリ
ObjectRocketは、MongoDBを正常で利用可能な状態に保ちます

ObjectRocketでのHA、データの冗長性、フォールトトレランスの仕組み

メンテナンス、ダウンタイム、または障害が発生した場合、システムはプライマリを切り替えることができます セカンダリのいずれかを使用 ノードを作成し、問題なく続行できるため、HAが提供されます。

データは、oplogを介してPRIMARYノードからSECONDARYノードに複製されるため、データの冗長性が実現されます。

フォールトトレランスについては、レプリカセットメンバーの1つをホストするサーバーが故障するというありそうもないシナリオを想像してみましょう。 プライマリかどうか またはセカンダリ ノードに障害が発生した場合、サポートチームが問題を修正できるまで、yourMongoDBインスタンスは2ノードのレプリカセットで実行され続けます。

DRのユースケース

私たちのスキームは、インスタンスに最も近いデータセンターの1つにある現在のインスタンスを(インスタンスに追加したシャードの数に関係なく)ミラーリングします。また、IADにはDRプランが設定されています。 IADレプリカセットメンバーをプライマリに接続できます ノードinDFW3、データはリージョン間で同期的に複製されます。これにより、次の例に示すように、データが最新の状態になります。

シャード:

  • DFWNODE1:プライマリ
  • DFWNODE2:セカンダリ
  • DFWNODE3:セカンダリ
  • IADNODE1:セカンダリ
  • IADNODE2:セカンダリ
  • IADNODE3:セカンダリ
ObjectRocketは、MongoDBを正常で利用可能な状態に保ちます 結論

HA、レプリケーション、および障害耐性は、ObjectRocketプラットフォームでの災害復旧と組み合わされます。さらに、これらすべてを賢い人々でバックアップし、ピーク時に安全で安定した状態を維持します。

ManagedMongoDBの詳細をご覧ください。

コメントや質問をするには、[フィードバック]タブを使用します。私たちと会話を始めることもできます。


  1. Google、Facebook、Twitter のデータをダウンロードする方法

    データ侵害は、私たちが最近耳にするのに慣れてきた非常に一般的な用語です!多くのウェブサイトやソーシャル メディア アカウントは、私たちのデータにアクセスして、名前、姓、連絡先番号、現在地などを含む個人情報を確認します。この情報は、ウェブサイトの所有者が使用して、よりパーソナライズされたエクスペリエンスを提供します。しかし、運が悪いと、サイバー犯罪者がこのデータを入手する可能性もあり、それは悪夢の始まりにすぎません. 最近、Facebook ケンブリッジ大学のデータ詐欺について聞いたことがありますか?久々にニュースで話題になりました。この大規模なスキャンダルで、8,700 万人を超えるユーザー

  2. データに対するマルウェアやセキュリティの脅威から PC を保護

    マルウェアと ID の盗難は、PC ユーザーに不安な夜を与えてきた最も重要な問題の 1 つです。一部のユーザーは、PC の使用を完全に停止することに決めたほど恐怖に陥っています。ただし、コンピューターを使用しないことやオフラインのままでいることは解決策ではなく、むしろ問題を回避することになるため、お勧めできません。これらの問題を詳細に理解し、マルウェアからの保護と、PC 上のデータや情報に対する脅威を克服する方法について学びましょう。 マルウェアとは 悪意を持って開発されたソフトウェアはすべてマルウェアです。ウイルス、トロイの木馬、ランサムウェア、スパイウェアなど、実行するように設計され