学习 Kubernetes Operator(二):Prometheus Operator
2012 年 1 月 25 日
更新至 kube-prometheus v0.3.0 版本
更新至 prometheus-operator v0.34.0 版本
Prometheus Operator 由两部分组成:
- coreos/prometheus-operator 在 Kubernetes 之上创建、配置和管理 Prometheus 集群;
- coreos/kube-prometheus 通过 Prometheus Operator 监控 Kubernetes 集群和运行在 Kubernetes 上的应用。
Prometheus Operator 包括:
- 【CRD】Prometheus 定义 Prometheus 部署;
- 【CRD】ServiceMonitor 声明一组 Service 如何监控;
- 【CRD】PodMonitor 声明一组 Pod 如何监控;
- 【CRD】PrometheusRule 定义 Prometheus Rule 文件;
- 【CRD】Alertmanager 定义 Alertmanager 部署;
- 【Controller】prometheus-operator 监控 CRD 部署和管理 Prometheus 集群。
:point_down:为 Prometheus Operator 架构图:
准备
Kubernetes
Kubernetes >= v1.8.0
添加 kubelet 启动参数:
--authentication-token-webhook=true --authorization-mode=Webhook
镜像
由于功夫网的原因导致 qury.io 的镜像下载失败。可以使用 Azure 中国提供的镜像服务器,感谢!!!
:point_down:是原始镜像列表:
quay.io/coreos/prometheus-operator:v0.34.0 quay.io/prometheus/prometheus:v2.11.0 quay.io/coreos/prometheus-config-reloader:v0.34.0 quay.io/coreos/configmap-reload:v0.0.1 quay.io/prometheus/alertmanager:v0.18.0 quay.io/coreos/k8s-prometheus-adapter-amd64:v0.5.0 quay.io/coreos/kube-rbac-proxy:v0.4.1 quay.io/coreos/kube-state-metrics:v1.9.0 quay.io/prometheus/node-exporter:v0.18.1
将 quay.io
替换为 quay.azk8s.cn
拉取 Azure 中国镜像,以 prometheus-operator 举:chestnut::
docker pull quay.azk8s.cn/coreos/prometheus-operator:v0.34.0
以 prometheus-operator 举:chestnut:,重新打 tag:
docker tag quay.azk8s.cn/coreos/prometheus-operator:v0.34.0 quay.io/coreos/prometheus-operator:v0.34.0
以此类推,完成所有列表中的镜像。
部署
将 coreos/kube-prometheus 项目克隆岛本地:
git clone -b v0.3.0 https://github.com/coreos/kube-prometheus.git
部署 Prometheus Operator:
kubectl create -f manifests/setup
部署 Kubernetes 集群监控:
kubectl create -f manifests/