Write and Run

it's a simple way, but the only way.

kubernetesと戯れる中で出会った概念たち

とにかく kubernetes は独特の概念が多い。この辺の土地勘を掴まないとやっていけない。

正直言って個人の日記レベル。詳しいことは公式を見てくれ。それではいきます。

Pod

機能を構成する最小単位っぽい。1個以上のコンテナで構成される。sidecar コンテナまでまとめたやつが Pod っぽい。わからん。

Replica Set

上記 Pod を複製するやつっぽい。わからん。

Deployment

Replica Set を世代管理したりできるやつ。カナリアリリースとかが主な機能っぽい。わからん。

Service

機能を露出させる単位っぽい。わからん。

Ingres

ロードバランサっぽい。わからん。

Persistent Volume

ストレージの親玉。サーバーの管理者がガッとプロビジョニングしておくようなやつで、カジュアルに増減するようなものではない。後述の PVC を元に容量を払い出してくれるやつっぽい。わからん。 具体的にはクラウドで言うところの AWS EBS とか GCE PersistentDisk とかが相当するっぽい。

Persistent Volume Claim

PVC と書かれることが多い気がする。上記 Persistent Volume に割り当てを申請するやつ。1GB くれみたいなこと書くとスッと降ってくるっぽい。わからん。

StatefulSet

Deployment よりもステートフルな物体を管理することに長けてるっぽい。まったくわからん。

Custom Resource

上記に書いてきた物体はそれぞれ Resource と呼ばれるものの一種らしい。で、その Resource は追加で定義することができて、それが Custom Resource っぽい。 独自の機能を kubernetes に追加したりできるんですかねぇ。わからん。

Operator

これは kubernetes 公式の概念っつーか、サードパーティー(CoreOS が提唱した?)の概念っぽい。

coreos.com

マネージドサービスっぽいものを Custom Resource を用いて実現する物体のことをこう呼ぶらしい。 Custom Resource として何らかのミドルウェアの Operator を追加しておくと、そのミドルウェアを使うときには kind: そのなんらかのミドルウェア みたいな感じで YAML に書くだけで用意できるっぽい。 わからん。