分散リーダー選出分散システムでは、アプリケーション サービスは高可用性を確保するために複数のノード (またはインスタンス) を使用することが多いです。ただし、シナリオによっては、一部のデータまたはタスクを並行して操作できない場合があります。現時点では、これらの特別なタスクを実行する(または調整して決定する)には特定のノードが必要です。この特定のノードがリーダーであり、複数のノードの中からリーダーを選択するメカニズムは分散リーダー選出と呼ばれます。 最近では、多くの有名なプロジェクトでも分散リーダー選挙が使用されています。たとえば、
一般的なアルゴリズムには次のものがあります。
Kubernetes リースKubernetes では、kube-scheduler や kube-controller-manager などのコア コンポーネントも分散リーダー選出を使用する必要があります。これは、常に 1 つのスケジューラだけがスケジュール決定を行い、同時に 1 つのコントロール マネージャーだけがリソース オブジェクトを処理するようにする必要があるためです。 ただし、コア コンポーネントに加えて、ユーザー アプリケーション サービスにも同様の分散リーダー選出要件がある場合があります。この一般的な要件を満たすために、Kubernetes は Lease と呼ばれる特別なリソース オブジェクトを提供します。 上の図に示すように、k8s におけるリーダー選出は、分散ロック (リース) を競うことで実現されます。ロックを取得したインスタンスがリーダーになります。リーダーは、その存続を確認するために、ロック(リース)を継続的に更新する必要があります。リーダーが電話を切るとロックが解除され、他の候補者が新しいリーダーになるために競争できるようになります。 リースの構造も非常にシンプルです。 リースは本質的に他のリソースと変わりません。 Lease に加えて、configmap またはエンドポイントを分散ロックとして使用することもできます。これは、最下層で、k8s がリソース オブジェクトの resourceVersion フィールドを使用して比較とスワップを実行するため、つまり、このフィールドを通じて楽観的ロックが実装されるためです。もちろん、実際の使用ではリースを使用することをお勧めします。 使用例分散リーダー選出に Lease を使用する例は次のとおりです。 参考文献:
|
>>: Istio と Flagger を組み合わせたグレースケール リリース
インターナショナル・データ・コーポレーション(IDC)が発表した最新の「中国ビデオクラウド市場追跡(...
LogicMonitor の新しい調査結果によると、全体的な状況はまだ変化しているものの、COVID...
インターネット情報環境の健全な発展を促進するため、検索エンジンは日々アルゴリズムを更新し、質の高いオ...
研修記者の季家鵬が北京からレポートSina Weiboでお金を稼ぐのはもう簡単ではありません。記者の...
企業向けでもウェブサイトマーケティング向けでも、ソフトテキストマーケティングは欠かせないマーケティン...
Dawang Data は現在、米国西海岸のサンノゼ データ センターにある独立サーバーを 50% ...
Huxiu は設立からまだ半年しか経っていないテクノロジーメディアのウェブサイトです。さまざまな角度...
(1)超大規模「クラウド」はかなりの規模を持っています。 Google クラウド コンピューティング...
A2hosting、ブラックフライデーがやって来ました! SSD ハード ドライブを搭載した仮想ホス...
エッジでのイノベーション市場調査会社IDCによると、世界のエッジコンピューティング市場規模は2024...
[[283294]] 11月20日、2019年アリババ世界神々の戦いイノベーション・起業コンテスト...
最近、多くのネットユーザーが、いつも利用しているダウンロード Web サイト VeryCD のすべて...
Urpad が最後に私のブログに登場したのは、2018 年 3 月 8 日です。Root Level...
今日では、クラウド コンピューティング プラットフォームが次々と登場しています。クラウド コンピュー...
最近、友人からオンラインプロモーションのやり方やプロジェクトの運営方法をよく聞かれますが、ネットワー...