1、参考10.2.1 安装Helm

2、参考8.3 NFS存储搭建NFS服务

3、参考8.4 API资源对象StorageClass安装SC

$ k get sc

NAME         PROVISIONER                                   RECLAIMPOLICY   VOLUMEBINDINGMODE   ALLOWVOLUMEEXPANSION   AGE
nfs-client   k8s-sigs.io/nfs-subdir-external-provisioner   Delete          Immediate           false                  5h40m

4、在k8s里起一个consul服务

下载包

$ helm pull bitnami/consul  --untar

修改values.yaml,搜索storageClass,storageClass后面更改为"nfs-client"

$ cd  consul
$ vi values.yaml
...
...
storageClass: "nfs-client"
...
...

Prometheus自动发现机制-1

helm安装

$ cd consul
$ helm install  prometheus-consul  .

查看pvc

$ kubectl  get pvc | grep prometheus-consul

data-prometheus-consul-0             Bound    pvc-b1cb0c94-dcd2-443e-912a-eab7bf9b962c   8Gi        RWO            nfs-client     112s
data-prometheus-consul-1             Bound    pvc-34d32a70-ac20-4535-a46b-323ef1ac984b   8Gi        RWO            nfs-client     112s
data-prometheus-consul-2             Bound    pvc-8905baff-9c68-425c-ab41-51a45bb55d93   8Gi        RWO            nfs-client     112s

查看pod

$ kubectl  get po | grep prometheus-consul

prometheus-consul-0                      1/1     Running   4 (2m53s ago)    15m
prometheus-consul-1                      1/1     Running   0                15m
prometheus-consul-2                      1/1     Running   6 (4m32s ago)    15m

查看consul的service

$ kubectl get svc |grep consul

prometheus-consul-headless   ClusterIP      None           <none>        8500/TCP,8400/TCP,8301/TCP,8301/UDP,8300/TCP,8600/TCP,8600/UDP   2m9s
prometheus-consul-ui         ClusterIP      10.0.195.154   <none>        80/TCP                                                           2m9s