一次理解Kubernetes:将容器编排工具应用于乐团

简介

前几天,我受到前辈的邀请,第一次参加了一个叫做LT会议的活动。
LT是Lightning Talk的缩写,意思是像闪电一样瞬间结束的简便演讲。
我原以为是Light Talk(轻松聊天)的意思,但是正确的是Lightning Talk,而且感觉很酷,所以记住这个吧。

笔者在LT会上谈到了Kubernetes。
既然已经说了,不写文章可惜了,所以今天我想写一篇关于Kubernetes的文章。

对于那些听说过Kubernetes但不了解其与容器的区别的人来说,他们是本文的目标读者。
Kubernetes是一个深奥且正在不断发展的服务。要完全理解它是相当困难的,但是本文的目的是让读者至少能够在被问到“Kubernetes是什么?”时回答一些基本内容。

本文的内容

突如結論を述べますが、标题所述的Kubernetes是一个”容器编排工具”。
一言以概括容器编排,是指用于集中管理多个容器的技术。

简而言之,Kubernetes 是一个位于容器之上、用于管理容器的工具。

如果你明白了这一点,那我认为你已经达到了了解Kubernetes的水平。
今天,让我们达到稍微了解Kubernetes的水平吧。

由于这是一个编曲工具,我想直接拿管弦乐团来做类比。
请将以下图像牢记在心。

image.png

聚集体 → 交响乐团

クラスタをオーケストラで例えると、オーケストラそのものを指すことになります。
例えを用いずにちょっと堅苦しく言うと、「コンテナ化されたアプリケーションを実行するノードの集合体」です。
Kubernetesを利用する際の全体を指している、と思っていもらえればOKです。

ここでノードという言葉が出てきました。
ノードはその上にコンテナが立つ土台です。
実体としては、物理マシン(ハードウェアデバイス、サーバー、コンピュータ、エッジにある組み込みデバイスなど)の場合もあれば、コンピュータまたはクラウド上の仮想マシンの場合もあります。
AWSでいうと、EC2とかですね。

ノードを少し堅い言葉でいうと、「Kubernetes のワークロードが実行される実際の環境を抽象化したもの」です。
Kubernetesにはマスターノードと、ワーカノードという、2種類のノードがあります。
それぞれ見ていきましょう。

マスターノード → 指揮者 : ワーカーノード → 楽団

マスターノードとワーカーノードをオーケストラで例えると、それぞれ指揮者と楽団を指すことになります。
指揮者であるマスターノード上には、kube-apiserverという司令塔がいたり、etcdという記憶装置がいたりします。
楽団であるワーカーノードには様々な楽器演奏者がいます。これが次に説明するpodです。
ワーカーノードは可用性の為に、複数のノードを立てることが一般的です。

ちなみに、マスターノードというのは古い言い方らしく、現在はコントロールプレーンノードというらしいです。
master, slave問題に近いものがあるのかもしれないですね。

音乐播客 → 楽器演奏者的录音

podをオーケストラで例えると、楽器演奏者を指すことになります。
基本的には1podにつき1コンテナですが、1podに複数のコンテナを立てることもできます。
一人の演奏者が、複数の楽器を演奏しているイメージですかね。

指揮者であるマスターノードは経営者的な一面もあるので、楽器演奏者であるpodが急に脱退したり、風邪で休んだりしたときは、すぐに新たな楽器演奏者を招集して、楽団の構成を保ってくれます。プロですね。

总结

今日は
Kubernetesとは「コンテナオーケストレーションツール」である。

クラスタ → オーケストラ
マスターノード → 指揮者 : ワーカーノード → 楽団
pod → 楽器演奏者

请牢记并带回去!
由于本次内容真的是非常基础的,所以对于对Kubernetes有兴趣的朋友们,请参考以下资料。

おすすめ資料

Kubernetes道場
情報が古いですが、とても分かりやすくて、これを見ながらハンズオンもできるのが最高です。
コマンドが古くてエラーが出るときは、エラーをChatGPTに投げたら一瞬で解決してくれました。

 

《Kubernetes完全指南》这本书虽然有点老,但图表丰富,对Kubernetes的解释非常详细。
对我来说有点困难,没能完全理解,所以打算再次阅读一遍。

 

EKSワークショップ
AWSでKubernetesが使えるEKSというサービスのハンズオンです。
説明がめちゃくちゃ丁寧ですが、丁寧すぎてコピペするだけで最後まで進めてしまいます。
ただ手を動かすだけではなく、今何をしているのか?を考えながら作業することをお勧めします。

 

Kubernetesの知識地図 —— 現場での基礎から本番運用まで
最近出版された出来立てほやほやの本です。
まだ最後まで読めていないのですが、実際に運用する際に手元に置いておくととても便利だと思います。
ただ、Kubernetesの基本事項はある程度わかっている人向けで、基礎的な概念の説明はほとんどありません。
Kubernetesそのものというよりは、Kubernetesのアドオンのような周辺知識の入門書だと思います。

 

2023/08/28追記

以下是在LT上使用的Kubernetes介绍幻灯片。