K8s 入門: K8s とは何か

K8s 入門: K8s とは何か

1. 概要

K8s 入門コースへようこそ。 Kubernetes (K8s または Kube とも呼ばれる) は、Google がリリースした業界で最も人気のあるコンテナ オーケストレーターです。この K8s チュートリアルは、K8s に関する一連の記事で構成されています。最初の部分では、K8s とは何か、そして K8s の基本的な概念について説明します。

このコースは初心者向けに設計されており、この技術をゼロから学ぶことができます。 K8s のすべての基本を説明し、これらの概念を理解できるようにします。

K8s の学習を始める前に、コンテナ エンジンとコンテナの基本を理解しておきましょう。

2. コンテナ エンジンとは何ですか?

コンテナ エンジンを使用すると、緩く分離された環境であるコンテナ内でアプリケーションをバンドルして実行できます。分離とセキュリティにより、単一のホスト上で複数のコンテナを操作できます。

コンテナ エンジンは、オペレーティング システムのカーネル リソース分離機能を活用し、同じオペレーティング システム上で複数のコンテナを実行できます。コンテナ エンジンは仮想マシン (VM) とよく比較されます。

一方、仮想マシンは、物理ハードウェア リソース抽象化レイヤーの上に実行可能コードを使用して、オペレーティング システム全体をカプセル化します。

3. コンテナとは何ですか?

コンテナ イメージは、アプリケーションのコードとデフォルト値、システム ライブラリ、実行に必要なすべての重要な設定を含む完全な実行可能プログラムを含む実行可能なソフトウェア パッケージです。

コンテナを使用することで、アプリケーションは基盤となるホスト アーキテクチャから分離されます。下の図に示すように、基盤となるマシンを活用して、コンテナ エンジン上で複数のコンテナを実行できます。これにより、さまざまなオペレーティング システムやクラウド シナリオでのコンテナーの展開が容易になります。

コンテナは、アプリケーションの拡張と展開を容易にすることで、企業の近代化を支援します。ただし、コンテナを使用して完全に新しいインフラストラクチャを構築すると、追加の問題と複雑さも生じます。

大規模から小規模まで、ソフトウェア組織によって毎日何千ものコンテナ インスタンスがデプロイされており、管理の課題がますます大きくなっています。それで、彼らはどうやってそれを実行するのでしょうか?

4. コンテナ オーケストレーションとは何ですか?

コンテナ オーケストレーションは、特に大規模な動的環境におけるコンテナのライフサイクル管理に関連しています。ソフトウェア チームは、コンテナー オーケストレーターを使用して、コンテナー管理のさまざまなタスクを制御および自動化します。

コンテナ オーケストレーターは、コンテナを使用するあらゆる環境で動作できます。同じプログラムを書き換えることなく、複数の環境に展開するのに役立ちます。

5. コンテナオーケストレーションツール

コンテナ オーケストレーション テクノロジーは、コンテナとマイクロサービス アーキテクチャを制御するためのフレームワークを提供します。コンテナのライフサイクル管理は、さまざまなコンテナ オーケストレーター ソリューションを通じて実現できます。 Kubernetes、Docker Swarm、Apache Mesos は、3 つの一般的なソリューション/オーケストレーション ツールです。

Docker Swarm は、インストールと構成が非常に簡単な Docker ネイティブ ツールです。 K8s では、etcd、flannel、docker エンジンなどのコンポーネントを構成するために多くの手動介入が必要です。

K8s は、他のツールと比較してさまざまな利点と機能的特徴を備えているため、業界を支配しています。

6. K8s とは何ですか?

K8s は、コンテナ化されたアプリケーションの展開、スケーリング、管理を自動化するために Google によって開発されたオープンソースのコンテナ オーケストレーター テクノロジーです。

K8s を使用すると、マイクロサービス アーキテクチャ アプリケーションのデプロイと管理が簡単になります。これは、クラスターの上に抽象化レイヤーを形成することで実現され、開発チームがアプリケーションをスムーズにデプロイできるようにします。K8s は主に次のタスクを処理します。

  • アプリケーションによるリソースの使用を制御および管理する
  • アプリケーションの複数のインスタンス間でリクエストを自動的に負荷分散します
  • リソースの使用状況とリソース制限を監視して、アプリケーションがリソースを過剰に消費するのを自動的に防ぎ、リソースを回復します。
  • ホスト リソースが使い果たされた場合やホストがクラッシュした場合に、アプリケーション インスタンスをあるホストから別のホストに移行することは実行可能なオプションです。
  • 新しいホストがクラスターに追加されると、追加のリソースが自動的に使用されます。

7. 市場が K8s を推奨するのはなぜですか?

K8s は、Cloud Native Computing Foundation (CNCF) と Google Foundation によって開始された最初のプロジェクトであり、Linux に次いで最も急速に成長しているオープンソース ソフトウェア プロジェクトです。

なぜこれほど多くの企業がコンテナ オーケストレーションのニーズを満たすために K8s に依存しているのでしょうか?理由はたくさんあります:

  • 移植性と柔軟性: K8s はさまざまなインフラストラクチャと環境設定で実行できるため、高い互換性を備えています。他のほとんどのオーケストレーターにはこのような柔軟性がありません。特定のランタイムまたはインフラストラクチャにロックされます。
  • オープンソース: CNCF は、完全にオープンソースでコミュニティ主導のプロジェクトである K8s を管理しています。多くの重要な企業スポンサーがいるが、プラットフォームを「管理」したり、その方向性を指示したりする企業はひとつもない。
  • マルチクラウド互換性: K8s は単一のクラウド上でワークロードをホストできるだけでなく、複数のクラウドにワークロードを分散することもできます。 K8s を使用すると、環境をあるクラウドから別のクラウドに簡単に拡張することもできます。他のオーケストレーターもマルチクラウド アーキテクチャをサポートできますが、K8s はマルチクラウド互換性の点でそれらを完全に上回っています。
  • マーケットリーダー:ほとんどの企業が K8s を使用しています。 Red Hat の調査によると、K8s は顧客(88%)に広く使用されており、特に実稼働環境(74%)で使用されています。

8. K8s アーキテクチャ

K8s は、適切に設計された分散システムの例です。クラスター内のすべてのマシンを単一のリソース プールの一部として扱います。

K8s には、他の成熟した分散システムと同様に、ヘッドノードとワーカーノードの 2 つのレイヤーがあります。

ヘッドノードまたはマスターノードは、コントロールプレーンとワーカーノードアプリケーションで構成されます。 K8s クラスターは、多数のヘッドノードとワーカーノードで構成されます。

K8s では、アプリケーションの構造を説明するために多くの用語が導入されています。各用語についてご説明します。

9. K8s コンポーネント

ヘッドノード/マスターノードとワーカーノードは、オーケストレーターの安定した動作を確保するために独自のコンポーネントで構成されています。

コントロールプレーン

コントロール プレーンは、管理者とユーザーがさまざまなノードを管理する場所です。 HTTP 呼び出しを介してコマンドを受信するか、システムに接続してコマンド ライン スクリプトを実行します。名前が示すように、K8s がアプリケーションと対話する方法を制御します。

API サーバー

API サーバーは、K8s クラスターへの REST インターフェースを提供します。ポッド上でアクティブ化されたすべてのサービスとその他のオブジェクトは、プログラム可能な方法でエンドポイントと対話できます。

スケジューラ

スケジューラは各ノードにタスクを割り当てる役割を担います。リソース容量を監視し、ワーカーノードのパフォーマンスが許容範囲内に維持されるようにします。

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

K8s コントローラー マネージャーは、K8s コア制御ループを管理するサービスです。クラスターの共有状態が適切に機能していることを確認する役割を担います。

その他

K8s は、分散キー値ストレージを提供するデータベースである Etcd を使用して、クラスターの全体的なステータスに関する情報を共有します。

ノード

ノードは、ポッドを実行する物理マシンまたは仮想マシンです。コントロール プレーンは、ポッドの実行に必要なサービスを含むクラスター内の各ノードを管理します。

ポッド

K8s ポッドは、K8s 管理コンテナ セットの最小単位です。各ポッドには、ポッド内のすべてのコンテナに割り当てられる単一の IP アドレスがあります。ポッド内のコンテナ メモリとストレージ リソースは共有されます。アプリケーションにプロセスが 1 つしかない場合、ポッドにもコンテナーが 1 つあります。

クベレット

Kubelet はワーカーノードのコンポーネントです。そのタスクは、ポッドとそのコンテナの実行ステータスを追跡することです。これは、ポッドの YAML または JSON 記述ファイルに関連付けられています。 Kubelet はポッドの仕様をチェックし、ポッドが正常かどうかを判断します。

Kube プロキシ

Kube-Proxy は、各ノードと API サーバー間の接続として機能するネットワーク プロキシおよびロード バランサーです。これはクラスター内のすべてのノードで実行され、内部と外部の両方からポッドに接続できます。

クベクトル

Kubectl は K8s 用のコマンドライン ツールです。アプリケーションのデプロイ、クラスター リソースの監視と制御、ログの表示に使用されます。

ユーザーの観点から見ると、Kubectl は K8s コントロール パネルです。すべての K8s 操作を実行できるようになります。技術的な観点から見ると、Kubectl は K8s API のクライアントです。

結論は

この記事では、コンテナ オーケストレーションの基本的な概念と K8s のアーキテクチャについて学習しました。今後の記事では、K8s の重要な主要機能と単一ノードの K8s インストールについて学習します。

翻訳者について

Fan Xiaobo、51CTO コミュニティ エディター、シニア ネットワーク セキュリティ エンジニア。 SDN、SD-WAN、VPN、NFV、その他のネットワーク関連テクノロジーに精通しています。レイヤー 2 およびレイヤー 3 のネットワーク転送に精通しています。 DPDK、VPP、OVS 高性能ネットワーク オープン ソース フレームワークに精通している。バドミントンと料理をするのが好きです。

原題: Kubernetes 入門 | Kubernetes とは何か、著者: MSM Sivam

<<:  クラウドコンピューティングにおけるビジネスアジリティの詳細な説明

>>:  企業は仕事の未来を推進するためにDaaSを導入する必要がある

推薦する

工業情報化省は少なくとも6つの仮想オペレーターライセンスを発行した。

現在、「移動通信再販事業試行計画(意見募集案)」がインターネット上で意見募集されており、我が国の仮想...

cmivps 香港 VPS レビュー: 3 つのネットワークはすべてバックホールに cn2 回線を使用し、Windows をサポートし、トラフィックは無制限です

cmivpsは以前のモバイルcmi国際ラインを変更したようです。公式も大量のサーバーを追加しました。...

WeChatが料金を請求するかどうかは、運営者のCCTVとは関係ありません。

最近、ネット上で最も議論されている問題は、WeChatのユーザー数が3億人を超えているため、料金を請...

ウェブサイトを構築するには、これらの企業から学ぶ必要があります

どの業界にもリーダーやロールモデルが存在します。Web構築業界にも業績の良い企業はありますが、その業...

Excelを使用して、ウェブマスターが分析する必要があるデータの5つの側面を要約します

プロのSEO担当者として、最適化の初期段階では、現状分析や同業他社の分析など、綿密なデータ分析レポー...

VMware は通信事業者が 5G のパワーを最大限発揮できるよう支援します

VMware(NYSE:VMW)は本日、Mobile World Congress 2023 にお...

SEOでウェブサイトがダウングレードされる理由とその解決方法

月収10万元の起業の夢を実現するミニプログラム起業支援プラン現在、ネットワークトラフィックの迂回を行...

6 人の e コマース界の大物: 彼らの特別なスキルは何ですか?

中国ではいくつかの電子商取引の巨大企業が出現しました。各社の戦略はそれぞれ異なりますが、いずれも独自...

ITを近代化するための3つの主要戦略

アメリカ技術評議会 (ATC) の最近の IT 近代化レポートでは、米国の機関や組織の IT チーム...

JD.com の 3 段階分類ページの SEO、ユーザー エクスペリエンス、マーケティング手法の簡単な分析 (パート 2)

昨日の「JDの3階層カテゴリーページのSEO、ユーザーエクスペリエンス、マーケティング手法の簡単な分...

張青:ウェブマスターツールのエラーウェイトが一夜にして0から3になった話

今日、ブロガーの友人であるミプのブログの管理者から連絡があり、彼女のブログに異常な現象が起きていると...

ウェブマスターにとっての解決策はどこにあるのでしょうか?

私はウェブサイトに携わり、ウェブマスターとして1年間働いてきました。私の気持ちは、多くの新人ウェブマ...

共同購入サイトが最後の寒い冬を迎える。大企業の例に倣い、従業員を解雇して冬を乗り切ろう

共同購入ウェブサイトLashou.comは、IPOの失敗後、売上高でグループ購入ウェブサイトのトップ...

2019 年のクラウド コンピューティング?待ってください、まずはこの3つの課題に備えてください

クラウド セキュリティやコンプライアンスなどの要素は、長年にわたって IT チームに課題をもたらして...

JVMとLinuxメモリの関係の詳細な説明

物理メモリが 8G あり、主に Java サービスを実行している一部のサーバーでは、システム メモリ...