はじめに
Kubernetesの基本用語についてまとめます
内容は初心者向けになります
Kubernetesの基本概念図
Kubernetesクラスターを構成するコンポーネント より
Kubernetesをデプロイすると、クラスターが展開されます
Kubernetesの基本用語
- Kubernetesクラスター
- コンテナ化されたアプリケーションを実行する、ノードと呼ばれるワーカーマシンの集合です
- すべてのクラスターには少なくとも1つのワーカーノードがあります
- クラスター内のノードはインターネットに公開されていません
- ノード
- ノードにはマスターノードとワーカーノードの2種類があります
- マスターノードは、クラスター内のワーカーノードとPodを管理します
- ワーカーノードは、アプリケーションワークロードのコンポーネントであるPodをホストします
- コントロールプレーン
- クラスター内のワーカーノードとPodを管理します
- クラスターに関する全体的な決定(スケジューリングなど)を行います
- ワークロード
- Kubernetes上で実行中のアプリケーションです
- Deployment
- PodとReplicaSetの宣言的なアップデート機能を提供します
- Pod
- Kubernetes内で作成・管理できるコンピューティングの最小のデプロイ可能なユニットです
- ノード上でホストされるアプリケーションのコンポーネントです
- Service
- クラスター内でPodとして実行されているアプリケーションを公開する方法です
- L4ロードバランサーに該当
- Ingress
- Service と組み合わせて機能し、ServiceのバックエンドにあるPodへのアクセスを提供します
- L7ロードバランサーに該当
- Ingressコントローラー
- Ingressリソースを動かすためのものです
- Service Account
- Kubernetes内で管理されているアカウントで、Podと紐づけることでPodからKubernetes APIを操作できるようになります
- Podに紐づいたAPIの認証情報であるtokenを利用して、PodからKubernetes APIを利用します
- kubectl
- Kubernetesが提供する、 Kubernetes APIを使用してKubernetesクラスターのコントロールプレーンと通信するためのコマンドラインツールです
- Kubernetesクラスターを制御できます
- CustomResourceDefinition (CRD)
- カスタムリソース定義(対義語: Kubernetesにおける標準リソース、Podなど)
- 標準でKubernetesで提供されているリソースの他に、自分でリソースを定義することができます。
- Kubernetes APIを拡張して実装します。
まとめ
知っておくべき用語はまだまだあるのですが、ドキュメントなどを読み進める上で最低限必要な用語についての説明でした。
私自身、Kubernetesを触り始めたばかりなので、今後必要に応じて追記していけたらと考えています。