重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

prometheus08-k8s部署prometheus

1.基础环境有k8s集群

成都创新互联公司专注于娄星网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供娄星营销型网站建设,娄星网站制作、娄星网页设计、娄星网站官网定制、成都微信小程序服务,打造娄星网络公司原创品牌,更为您提供娄星网站排名全网营销落地服务。

[root@kubemaster01 prometheus]# kubectl  get node 
NAME             STATUS   ROLES    AGE   VERSION
192.168.249.51   Ready       63d   v1.12.3
192.168.249.52   Ready       63d   v1.12.3
192.168.249.53   Ready       63d   v1.12.3
You have new mail in /var/spool/mail/root
[root@kubemaster01 prometheus]# kubectl  get cs
NAME                 STATUS    MESSAGE             ERROR
scheduler            Healthy   ok                  
controller-manager   Healthy   ok                  
etcd-1               Healthy   {"health":"true"}   
etcd-2               Healthy   {"health":"true"}   
etcd-0               Healthy   {"health":"true"}   
[root@kubemaster01 prometheus]#

2.下载prometheus yaml

for file in  prometheus-configmap.yaml prometheus-rbac.yaml prometheus-service.yaml prometheus-statefulset.yaml ;do wget https://raw.githubusercontent.com/kubernetes/kubernetes/master/cluster/addons/prometheus/$file;done

3.设置动态storageclass

 3.1.kubectl apply  -f rbac.yml

kind: ServiceAccount
apiVersion: v1
metadata:
  name: nfs-client-provisioner
---
kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: nfs-client-provisioner-runner
rules:
  - apiGroups: [""]
    resources: ["persistentvolumes"]
    verbs: ["get", "list", "watch", "create", "delete"]
  - apiGroups: [""]
    resources: ["persistentvolumeclaims"]
    verbs: ["get", "list", "watch", "update"]
  - apiGroups: ["storage.k8s.io"]
    resources: ["storageclasses"]
    verbs: ["get", "list", "watch"]
  - apiGroups: [""]
    resources: ["events"]
    verbs: ["create", "update", "patch"]
---
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: run-nfs-client-provisioner
subjects:
  - kind: ServiceAccount
    name: nfs-client-provisioner
    namespace: default
roleRef:
  kind: ClusterRole
  name: nfs-client-provisioner-runner
  apiGroup: rbac.authorization.k8s.io
---
kind: Role
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: leader-locking-nfs-client-provisioner
rules:
  - apiGroups: [""]
    resources: ["endpoints"]
    verbs: ["get", "list", "watch", "create", "update", "patch"]
---
kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: leader-locking-nfs-client-provisioner
subjects:
  - kind: ServiceAccount
    name: nfs-client-provisioner
    namespace: default
roleRef:
  kind: Role
  name: leader-locking-nfs-client-provisioner
  apiGroup: rbac.authorization.k8s.io

3.2 设置存储deployment.yaml

apiVersion: v1
kind: ServiceAccount
metadata:
  name: nfs-client-provisioner
---
kind: Deployment
apiVersion: apps/v1
metadata:
  name: nfs-client-provisioner
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nfs-client-provisioner
  strategy:
    type: Recreate
  template:
    metadata:
      labels:
        app: nfs-client-provisioner
    spec:
      serviceAccountName: nfs-client-provisioner
      containers:
        - name: nfs-client-provisioner
          image: quay.io/external_storage/nfs-client-provisioner:latest
          volumeMounts:
            - name: nfs-client-root
              mountPath: /persistentvolumes
          env:
            - name: PROVISIONER_NAME
              value: fuseim.pri/ifs
            - name: NFS_SERVER
              value: 192.168.249.54
            - name: NFS_PATH
              value: /data/k8s/prometheus
      volumes:
        - name: nfs-client-root
          nfs:
            server: 192.168.249.54
            path: /data/k8s/prometheus

3.4  kubectl apply  -f class.yaml

apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: managed-nfs-storage
provisioner: fuseim.pri/ifs # or choose another name, must match deployment's env PROVISIONER_NAME'
parameters:
  archiveOnDelete: "false"

3.5 备注说明 nfs 是提前部署好的(ip:192.168.249.54)

[root@es prometheus]# cat /etc/exports
/data/k8s/prometheus  192.168.249.0/24(rw,sync,no_root_squash)
[root@es prometheus]#

4.修改prometheus的存储地址(prometheus-statefulset.yaml)

prometheus08-k8s部署prometheus

4.把 prometheus的svc 发布改为nodeport

prometheus08-k8s部署prometheus

5.部署

kubectl  apply -f prometheus-rbac.yaml   prometheus-configmap.yaml  prometheus-statefulset.yaml  prometheus-service.yaml

6. 访问

prometheus08-k8s部署prometheus

7.

prometheus08-k8s部署prometheus


网站标题:prometheus08-k8s部署prometheus
浏览路径:http://cqcxhl.cn/article/psojpi.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP