Member-only story

Kubernetesクラスターとは?

gavin.zhou
Nov 10, 2022

--

この記事では、Kubernetesとは何か(略してK8S)、K8sクラスターとは何かを簡単に説明します。その上で、K8sクラスターを構成するマスターノードとワーカーノードのコンポーネントについて見ていくことにします。

Kubernetesは、オープンソースのコンテナオーケストレーションシステムで、コンテナ化されたアプリケーションの管理とデプロイのために使用されます。

K8sクラスターは、ノードのグループから構成されています。ノードとは、互いにリンクして「クラスター」を形成するマシンのことです。ノードは個々のコンピュート・リソースと考えることができるので、どんなコンピュート・リソースのグループでも使用することができます。通常、プラットフォームがPaaS(Platform-as-a-Service)のベールに包まれてクラウド上で動作している場合、ノードは仮想マシンのグループから構成されます。

また、Amazon Fargateのようなサーバーレスオファリングで実行することも可能です。K8sクラスターがオンプレミスで稼働している場合、ノードは物理的なマシンででもかまいません。Raspberry PisのグループでK8sクラスターを実行することもできます。

K8sにはコントロールプレーンがあり、ノード間でコンテナの管理とオーケストレーションを行い、望ましい状態を維持する役割を担っています。K8sの目標は、ノード間で最も効率的な方法でアプリケーションをスケジューリングし、最高の性能利用と冗長性を可能にすることで、アプリケーションの稼働時間を最大化することです。

Kubernetes Clusterのコンポーネントとは?

K8sクラスターは、マスターノードとワーカーノードの2種類のノードで構成されています。

マスターノードは、K8sのコントロールプレーンコンポーネントをホストします。マスターノードはコンフィギュレーションとステートデータを維持し、望ましい状態を維持するために使用されます。コントロールプレーンは、コンテナを効率的にスケジュールするために、ワーカーノードとの通信を維持します。実運用では、コントロールプレーンは複数のノードで実行され、1つのノードが故障した場合の冗長性を確実にキープし続けます。

ワーカーノードは、ポッドを実行するための、いわゆる「ポッド」です。Podは通常、アプリケーションの単一インスタンスです。コンテナはPodの内部で実行され、Podはノード上で実行されます。各クラスタには必ず少なくとも1つのワーカーノードが含まれ、冗長性の観点から1クラスタは少なくとも3つのワーカーノードで構成することが推奨されています。

--

--

No responses yet