Kubernetes 用語の整理
Kubernetesは、それ自体が独特のエコシステムと哲学を持っています。それを効果的に利用し、理解するためには、基本的な用語や概念に慣れる必要があります。Kubernetesに関連する主要な用語とその意味を整理し、全体的なアーキテクチャや動作原理の基本的な理解を深める手助けをします。
初めてのステップとして、これらの用語にはまだ慣れていないかもしれませんが、時間が経てば自然と慣れてくるでしょう。
用語の整理を通して得られる基本的な理解は、Kubernetesの他の学習リソースやドキュメントを読む際、また実際の環境での作業を行う際に大きな助けとなります。だから、ゆっくりと各用語を覚え、その意味と使用方法を理解することが重要です。
Kubernetes コンポネントを車に例えると以下の通り
- Pod: 車の中の個々の座席です。それぞれの座席(コンテナ)は特定の機能を持っています。
- Node: ガレージです。複数の車(Pod)を保管しています。
- Kubelet: ガレージの管理人です。各車(Pod)の状態を確認し、必要なメンテナンスを行います。
- Service: 交差点または信号機です。どの車(Pod)にどのような通信(トラフィック)を送るかを制御します。
- Cluster: 複数のガレージ(Node)で形成される駐車場または車庫です。
- ConfigMap/Secret: 車のキーまたはGPSです。設定や機密情報を保管し、適切な場所に導きます。
- Deployment: 車の運行計画です。どの車(Pod)がいつどこで動くかを管理します。
Kubernetes 学習プランをたてる
基礎編:初心者向け
- 基礎理論の学習
- Kubernetesのアーキテクチャ、主要な概念と用語について理解する
- 基本的な概念の実践を通してマスター
minikube
やクラウドベースのKubernetesクラスタを使い、基本的なコマンドと概念の実践
- Pod、Service、Deploymentの実践
- 基本的なKubernetesオブジェクトの作成、変更、削除を実践する
応用編:中級者むけ
- ConfigMapとSecretを扱う
- 設定情報と機密情報をKubernetesでどのように管理するか学習
- 状態を維持するアプリケーションを扱う
- StatefulSet、Persistent Volumesなどを使用した状態を維持するアプリケーションのデプロイ方法を学習
- ネットワークとセキュリティ
- Ingress、NetworkPoliciesなどを使用してサービスルーティングとセキュリティ設定
専門編:上級者むけ
- CI/CDパイプラインの構築
- Jenkins、GitLab CIなどを使用したKubernetesに対するCI/CDパイプラインの構築
- モニタリングとロギング
- Prometheus、Grafana、ELKスタックなどを使用したモニタリングとロギング
- 高度なトピック
- オペレーター、Custom Resource Definitions(CRDs)、サービスメッシュなどの高度なトピックについて理解
2023.10.29 追記
Azure Kubernetes Service
- Azure Kubernetes Service features
- CSI Driver:
Integrate Azure Key Vault as a secrets store with a Kubernetes cluster via a CSI volume. - Container Networking:
Choose between a network configuration using kubenet or Azure CNI, they can both work with a default VNet or you have the option to customize your own VNet.
- CSI Driver: