Skip to content
Latchkey

cluster とは?多数のマシンが1つとして振る舞う

cluster とは、1つの compute プールとして振る舞うよう調整されたマシンの集合です - だからあなたは個々のサーバーではなく、cluster に対して deploy します。

clustering は、ラック内のマシン群を、単一の回復力あるシステムに変える発想です。どのサーバーがアプリを実行するかを気にする代わりに、作業を cluster に委ね、その作業の配置、スケーリング、回復を任せます。特に Kubernetes では、cluster は明確な2部構成を持ちます。

Kubernetes クラスタの2つの部分

control plane はグローバルな決定を下し、状態を(etcd に)保存します。そして一群の worker node が実際の workload を実行します。control plane が頭脳で、node が筋肉です。

そもそもなぜ clustering するのか

  • 回復力 - 1台のマシンの故障がシステムを止めない。
  • スケール - node を追加してキャパシティを透過的に増やす。
  • 抽象化 - 名前付きのサーバーではなく、プールに対して deploy する。

cluster 全体にわたる望ましい状態

あなたは何を実行すべきかを宣言し、control plane がそれを node にスケジュールして継続的にリコンサイルします。node が現れては消える中で、cluster はあなたの宣言した workload を実行し続けます。

Kubernetes だけではない

clustering の概念は Kubernetes に先行し、それを超えて広がります - データベースクラスタ、compute クラスタ、CI runner フリートは、いずれも同じ「多数のマシン、1つの論理システム」という発想を適用します。

cluster と CI/CD

CD は cluster に対して deploy します。CI はしばしば、worker のクラスタのように振る舞う独自の runner マシンのフリート上で動きます。マネージド runner プラットフォームがそのフリートを運用し - プロビジョニング、スケーリング、修復し - あなたが CI キャパシティを1つの弾力的なプールとして扱えるようにします。

重要なポイント

  • cluster は、多数のマシンを1つの compute プールとして振る舞わせます。
  • Kubernetes クラスタは、control plane(頭脳)と worker node(筋肉)を組み合わせます。
  • clustering は回復力、スケール、そしてプールに対して deploy する抽象化をもたらします。

関連ガイド