kube-promuthes安装

2020-05-25  本文已影响0人  wowshiwoniu

一、安装文件准备

1、clone安装代码

目前tag最新版是v0.3.0,这里使用v0.3.0版本

# clone代码
git clone https://github.com/coreos/kube-prometheus.git

# 切换tag
git checkout tags/v0.3.0

2、更改镜像地址

由于默认的官方镜像太慢,更换位国内微软镜像源。

# 进入安装文件目录
cd kube-prometheus
# 查看包含镜像地址的文件列表
grep "quay.io" -rl manifests/* 
# 批量替换
sed -i "s/quay.io/quay.azk8s.cn/g" `grep "quay.io" -rl manifests/*`

修改manifests/grafana-deployment.yaml文件grafana镜像源

grafana镜像源也是很慢,建议通过代理在本地下载一份,上传到公司内部仓库,这里我是暂时上传了一份到个人的阿里云镜像库。

image.png

3、修改prometheus-serviceMonitorKubelet.yaml

由https-metrics改为http-metrics,并将scheme改为http

image.png

4、修改grafana-service.yaml

端口号类型改为NodeType,暴露出一个端口供web端访问

账号:admin,密码:admin

image.png

5、修改alertmanager-service.yaml

端口号类型改为NodeType,暴露出一个端口供web端访问

image.png

6、修改prometheus-service.yaml

端口号类型改为NodeType,暴露出一个端口供web端访问

image.png

7、添加**prometheus-kubeControllerManagerService.yaml **文件

apiVersion: v1
kind: Service
metadata:
  namespace: kube-system
  name: kube-controller-manager
  labels:
    k8s-app: kube-controller-manager
spec:
  selector:
    component: kube-controller-manager
  ports:
  - name: http-metrics
    port: 10252
    targetPort: 10252
    protocol: TCP

8、添加prometheus-kubeSchedulerService.yaml文件

apiVersion: v1
kind: Service
metadata:
  namespace: kube-system
  name: kube-scheduler
  labels:
    k8s-app: kube-scheduler
spec:
  selector:
    component: kube-scheduler
  ports:
  - name: http-metrics
    port: 10251
    targetPort: 10251
    protocol: TCP

9、修改k8s的配置文件 /var/lib/kubelet/config.yaml

针对每台宿主机,添加如下端口 readOnlyPort: 10255,用于普罗米修斯获取metrics数据

image.png

10、修改/etc/kubernetes/manifests/kube-scheduler.yaml文件

将--bind-address=127.0.0.1改为--bind-address=0.0.0.0

[图片上传中...(image.png-22ed92-1590387339038-0)]

11、修改/etc/kubernetes/manifests/kube-controller-manager.yaml文件

将--bind-address=127.0.0.1改为--bind-address=0.0.0.0

image.png

针对k8s配置文件的修改,需要重启服务

systemctl daemon-reload && systemctl restart kubelet

二、部署

# 创建namespace和CRDs
kubectl create -f manifests/setup
# 部署资源
kubectl create -f manifests/
# 查看资源运行
kubectl -n monitoring get all -o wide

三、参考资料

http://www.kancloud.cn:8080/huyipow/prometheus/525003

上一篇下一篇

猜你喜欢

热点阅读