Kubernetes スケジューラはどのように機能しますか?

Kubernetes スケジューラはどのように機能しますか?

Kubernetes スケジューラは、クラスター内で新しく作成されたスケジュールされていないポッドを監視し、事前定義されたスケジューリング ポリシーとクラスター リソースの可用性に基づいて、スケジュールに最適なノードを選択する独立したコンポーネントです。

スケジューラはポッドをノードにすぐにスケジュールしません。代わりに、Pod をバインドされていない状態にスケジュールします (Pod がバインドされていない場合、その状態は「保留中」として表示されます)。このようにして、kubelet は将来的にノードを Pod にバインドできるようになります。

Kubernetes Scheduler のワークフローは次のとおりです。

  1. API サーバーのリッスン: Kubernetes スケジューラは、新しく作成されたスケジュールされていないポッドや、スケジュールされているが実行されていないポッドなど、API サーバーのスケジュール イベントをリッスンします。
  2. スケジュール情報の取得: スケジューラは、API サーバーを介して、スケジュールされていないポッドのスケジュール情報 (ポッドのリソース要件やノードのアフィニティ/アンチアフィニティ制約など) を取得します。
  3. ノードの選択: スケジューラは、スケジューリング アルゴリズムを使用して、ノード リソースの可用性と制約に基づいて、スケジューリングに最適なノードを選択します。スケジューリング アルゴリズムでは通常、ノード リソースの負荷、ノードとポッド間のアフィニティ/反アフィニティ制約などの要素が考慮されます。詳細は以下の通りです。

スケジューラの作業は、プリエンプション、優先順位付け、選択の 3 つの段階に分けられます。

  • 予備選考段階

事前選択フェーズでは、スケジューラは現在のクラスター内のすべてのノードにスコアを付け、各ノードがスケジュールされるポッドに割り当てることができるリソースが十分かどうかを計算します。ノードのリソースがポッドのニーズを満たすのに不十分な場合、スケジューラは、優先度の高いポッドに十分なリソースを確保するために、優先度の低いポッドの一部をノードから移行しようとします。

  • 最適化段階

事前選択フェーズが完了すると、スケジューラは利用可能なすべてのノードを選択し、スケジュールするポッドに最も適したノードを選択します。この段階で、スケジューラは各ノードの優先度値を計算します。優先度値が高いノードが選択される可能性が高くなります。優先アルゴリズムはユーザーがカスタマイズでき、Kubernetes はいくつかのデフォルト アルゴリズムを提供します。

  • 選択段階

最適化フェーズが完了すると、スケジューラは選択したノードにポッドをバインドして、ポッドのスケジューリングを完了します。スケジュールが失敗した場合、スケジューラは成功するまでスケジュールを試行し続けます。

一般に、スケジューラのワークフローは次の手順にまとめられます。

  • すべてのポッドをスケジュールする
  • 各ポッドに対して事前選択操作を実行し、リソースを解放するために他のポッドを移行する必要があるかどうかを判断します。
  • 各ポッドに対して最適化操作を実行し、最適なノードを決定します。
  • 選択したノードにポッドをバインドする

4. Pod ステータスの更新: スケジューラはスケジュールされた Pod 情報を API サーバーに更新し、Pod のスケジュール情報を Kubelet に送信して、Kubelet が Pod が配置されているコンテナを起動できるようにします。

Kubernetes のスケジューラは、ユーザーがニーズに合わせてスケジューリング アルゴリズムとプラグインをカスタマイズできる、拡張性の高いシステムです。

<<:  純粋なアップストリームKubernetesは最高のKubernetesです

>>:  【クラウドネイティブ】Minio on k8s 解説と実践操作

推薦する

zgovps: ドイツの高速 VPS (as4809+9929)/高性能 VPS (Ryzen 9 7950X3D)、四半期あたり 17 ドルから

zgovps (zgocloud) のドイツ VPS は現在在庫があり、販売中です。デフォルトは、C...

hmbcloud の年間 30 ドルの NAT ベースの韓国 cn2 gia vps の簡単なレビュー

hmbcloudはアメリカの企業(中国系アメリカ人が経営)で、cn2 giaとIPLCのハイエンドラ...

SEOランキング会社を選ぶ際のGoogleのアドバイス

SEO は検索エンジン最適化の略です。多くの SEO は、記事の作成、ウェブサイトの構造に関する提案...

ハイブリッド マルチクラウドの旅を最適化するために克服すべき 7 つの課題

Facebook が Meta にブランド名を変更したことは、Metaverse に対する最も公的な...

あなたの B2C 電子商取引ウェブサイトが競合他社の群衆から目立つことができないのはなぜでしょうか?

2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っていますB2C 電...

ウェブサイトのトラフィックを増やすためにキーワードを予測する

以前、Rongchao は人気のキーワードを使用して、3 日間で 5,000 IP に到達した新しい...

インタビュアー: OpenStack、Docker、Mesos、K8S の関係について教えてください。できますか?

OpenStack、Docker、Mesos、K8s はすべて、現代のクラウド コンピューティングで...

品質を重視したIoTデバイスがエッジコンピューティングを推進

高品質なコンテンツに対する期待が高まっており、モノのインターネットの成長により、エンドユーザーはエッ...

マイクロソフトがWindows 10正式版をリリース

マイクロソフトは北京時間7月29日午前0時から、中国を含む世界中のユーザーに向けてWindows 1...

マーケティングプロモーションレビュー:NetEase、Snowballなどのスクリーンを席巻するテストゲームの裏側!

この記事では、NetEase と Snowball の 2 つのテスト ゲームをレビューして比較し、...

ウェブサイトデータ分析は将来のSEO担当者にとって必須科目になる

友人から、SEO を始めるにはどうしたらいいかとよく聞かれます。私は通常、外部リンクを投稿したり、友...

詳細: 360 ウェブサイトナビゲーション検索ボックスが Baidu 検索製品を削除

360 ナビゲーションのニュース検索は、Baidu ではなく 360 独自の総合検索エンジンに置き換...

Xiaohongshu は電子商取引のライブストリーミングで良い成果を上げることができるでしょうか?

Xiaohongshu は、電子商取引ライブストリーミングの大きな市場に進出したいと考えています。 ...

競合他社と比べて何が欠けていて、ウェブサイトのランキングが変動するのでしょうか?

最近、多くの友人が Xinchen に、なぜ自分のウェブサイトのランキングが下がったのか、なぜ他のウ...

エンタープライズ ネットワーク戦略におけるエッジ コンピューティングの 5 つの利点

エッジ コンピューティングは、従来のクラウドベースのコンピューティング アーキテクチャの制限を超えた...