K8s のコアコンポーネントと動作メカニズム

K8s のコアコンポーネントと動作メカニズム

Kubernetes のコアコンポーネントと動作メカニズム

Kubernetes クラスターは、ノードと呼ばれるマシンのグループで構成されます。これらのノードは、Kubernetes によって管理されるコンテナ化されたアプリケーションを実行します。クラスターには少なくとも 1 つのワーカー ノードがあります。

ワーカーノードは、アプリケーション ワークロードのコンポーネントであるポッドをホストします。コントロール プレーンは、クラスター内のワーカー ノードとポッドを管理します。クラスターのフェイルオーバーと高可用性を実現するために、これらのコントロール プレーンは通常、複数のホストにまたがって実行され、クラスターは複数のノードにまたがって実行されます。

k8sの動作メカニズム

API サーバー

API サーバーのコア機能は、さまざまな k8s リソース オブジェクト (Pod、RC、Service など) の追加、削除、変更、クエリ、監視などの HTTP REST インターフェイスを提供し、クラスター内のさまざまな機能モジュール間のデータのやり取りと通信の中心ハブとなり、クラスター全体のデータ バスとデータ センターとして機能することです。通常、以下の機能も備えています。

  • クラスタ管理用のAPIエントリ
  • リソースクォータ制御エントリ
  • 完全なクラスター セキュリティ メカニズムを提供します。

通常、RESTful API を提供するために kubectl コマンドを介して API サーバーと対話するため、コードを介して k8s API サーバーを直接呼び出すこともできます。

API サーバー アーキテクチャ図

コントローラーマネージャー

コントローラー マネージャーは、クラスター内の管理および制御センターです。クラスター内のノード、ポッド、エンドポイント、名前空間、サービスアカウント、リソースクォータなどの管理を担当し、コントローラーを意味します。

新しいバージョンのレプリケーション コントローラーは ReplicaSet に置き換えられました。

コントローラーマネージャー

論理的には、各コントローラーは個別のプロセスですが、複雑さを軽減するために、すべて同じ実行可能ファイルにコンパイルされ、単一のプロセスで実行されます。

各コントローラーは、API サーバーが提供するインターフェースを通じて、クラスター内の各リソース オブジェクトの状態をリアルタイムで監視します。さまざまな障害が発生してシステムの状態が変化すると、システムを「現在の状態」から「期待される状態」に修正しようとします。

以下はコントローラーの機能の一部です

  • ノード コントローラー: ノードに障害が発生した場合の通知と応答を担当します。
  • エンドポイント コントローラー: エンドポイント オブジェクトを設定します (つまり、サービスとポッドを追加します)。
  • サービス アカウントとトークン コントローラー: 新しい名前空間のデフォルトのアカウントと API アクセス トークンを作成します。

スケジューラ

Kube-scheduler は、クラスター内で重要な役割を果たすスケジューラを意味します。 「前と次を接続する」とは、Controller-Manager によって作成された新しい Pod を受信する責任があることを意味します。配置するノードを配置します。 「次に開始」とは、配置が完了した後、現在のノード上の kubelet サービス プロセスが引き継いで動作を継続し、Pod のライフサイクルの後半を担当することを意味します。

具体的には、Kubernetes Scheduler の役割は、スケジュール対象となる Pod (API によって新規に作成された Pod、レプリカを補うために Controller Manager によって作成された Pod など) を、特定のスケジューリング アルゴリズムとスケジューリング戦略に従ってクラスター内の適切な Node にバインドし、そのバインド情報を etcd に書き込むことです。スケジューリング プロセス全体には、スケジュールされるポッドのリスト、使用可能なノードのリスト、およびスケジューリング アルゴリズムと戦略という 3 つのオブジェクトが関係します。簡単に言えば、スケジューリング アルゴリズムは、スケジュールされるポッド リスト内の各ポッドに対して、ノード リストから最も適切なノードを選択します。

スケジューラの動作メカニズム

クベレット

クラスター内の各ノードで実行されるエージェント。コンテナが Pod 内で実行されることを保証します。

kubelet は、さまざまなメカニズムを通じて提供される一連の PodSpec を受け取り、それらの PodSpec に記述されているコンテナーが実行中で正常であることを確認します。

kubeプロキシ

kube-proxy は、クラスター内のすべてのノードで実行され、Kubernetes サービス コンセプトの一部を実装するネットワーク プロキシです。

kube-proxy はノード上のネットワーク ルールを管理します。これらのネットワーク ルールにより、クラスター内外のネットワーク セッションから Pod とのネットワーク通信が可能になります。

オペレーティング システムがパケット フィルタリング レイヤーを提供し、それが利用可能な場合、kube-proxy はそれを介してネットワーク ルールを実装します。それ以外の場合、kube-proxyはトラフィック自体のみを転送します

RCとRSDeploymentの違いは次のとおりです

  • ReplicationController POD管理コントローラの旧バージョン使用
  • replicaset は、RC に代わる POD コントローラーの新しいバージョンであり、セット セレクターをサポートします: (version in (v1.0, v2.0) または env notin (dev, qa))
  • デプロイメント宣言型ポッド デプロイメントはローリング アップデートをサポートします。デプロイメントは、Pod と ReplicaSet の宣言的な更新を提供します。

デプロイメントで必要なターゲット状態を記述するだけで、デプロイメント コントローラーがポッドとレプリカの割り当てを支援します。

セットの実際の状態がターゲット状態に変わります。新しいデプロイメントを定義するか、新しいデプロイメントを作成して古いデプロイメントを置き換えることができます。


<<:  エンタープライズコンピューティングとパブリッククラウドのジレンマ

>>:  企業がクラウド セキュリティ戦略を策定するのに役立つ 8 つのステップ

推薦する

著作権フリー VPS: hostsolutions-2 ユーロ/2g メモリ/30g ハードディスク/30T トラフィック/ルーマニア

hostsolutions.ro は、おそらく最もよく知られているルーマニアのホスティング会社です ...

「クラウド+フォグ」コンピューティングは、データエネルギーの「覚醒」の原動力となるのでしょうか?

スマート シティやスマート ホームなどの IoT アプリケーションの普及により、あらゆるもののインテ...

分散型ソフトバスにより、アリババの商人はマルチデバイスライブ放送を再生できる

[[428752]]詳細については、以下をご覧ください。 51CTOとHuaweiが共同で構築したH...

soladrive: 米国サーバー 35% オフ、月額 61 ドル、e3-1230v6/16g/2T ハード ドライブ/10T トラフィック

2009 年に設立された Soladrive は、マネージド VPS、マネージド独立サーバー、マネー...

テキストベースの外部リンクによるウェブページの重みの時間配信に関する研究

実際、外部リンクの適時性は、SEO 実践の最適化において最近発見されたもので、ランキングの向上に重要...

2019年グローバルデジタル広告トレンドレポート!

イノベーションは、デジタル メディア エコシステムの継続的な発展の原動力です。世界の広告予算の増加の...

V5Net:香港の50G高防御独立サーバーの簡易評価、速度は666

v5netは香港で最大防御50Gbpsの高防御サーバーサービスを提供しており、CDNなどを必要とせず...

SARFT、インターネットテレビを抑圧する大規模な動きを開始

本日のメディアは、国家ラジオ映画テレビ総局が昨日、インターネットテレビの違反行為を是正するよう要求す...

企業のコスト削減によりクラウドコンピューティングの成長が鈍化

クラウドコンピューティングプロバイダーはいずれも、企業顧客がクラウドコンピューティングへの支出を削減...

コンテナオペレーターが知っておくべき Kubernetes (K8s) クラスターの 10 個の一般的な API リソースオブジェクト

Kubernetes (略して K8s) は、コンテナ化されたアプリケーションの展開、スケーリング、...

ハイブリッドクラウド環境でディープラーニングを取り入れたID認証はより柔軟

[51CTO.com からのオリジナル記事] 入れ墨は秦と漢の時代に広く使用されていた刑法の一種でし...

extravm: ロシアの VPS、月額 5 ドル、KVM 仮想化/1G メモリ/1 コア (Ryzen 3700X)/15g NVMe/500g トラフィック

extravm についてご存知の方もいるでしょう。同社は主に、OVH コンピュータ ルームのさまざま...

#CheapServer# alphavps - 超格安ブルガリア専用サーバー

DA International Group Ltd. の子会社である alphavps.bg は ...