概要
KubernetesではRBACという、各種リソースへのアクセス権限を管理する仕組みが用意されてます。
たとえばPrometheusのようにKubernetesのAPIを叩く場合、各リソースへアクセスするための権限が必要になります。
今回はそれの基本的な仕組みや設定方法を説明します。
環境
- minikube 1.2.0
- Kubernetes 1.15.0
Service Account
KubernetesにはUserAccountとServiceAccountがあります。大きな違いとしては以下です。
UserAccount | ServiceAccount | |
---|---|---|
対象 | 人 | プロセス |
権限範囲 | グローバル。 GCPのアカウントや AWSのIAMとリンクする。 |
namespace区切り。 Kubernetesの世界で完結する。 |
ref: Managing Service Accounts - Kubernetes
Pod起動時には必ずServiceAccountを1つ割り当てる必要があります。
指定しない場合はdefault
ServiceAccountが割り当てられます。