k8s部署prometheus

部署pvc

修改nfs-deployment.yaml文件中的信息,然后应用YAML文件

cat > /opt/k8s/prometheus/prometheus-pvc.yaml <<EOF
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: prometheus-data-pvc
spec:
  accessModes:
    - ReadWriteMany
  storageClassName: "nfs-storage"
  resources:
    requests:
      storage: 5Gi
EOF
kubectl apply -f prometheus-pvc.yaml 
kubectl get pvc

部署ConfigMap

上传文件prometheus.yml 、alert.mysql.rules.yml 、alert.node.rules.yml到/opt/k8s/prometheus/file/下

kubectl create configmap prometheus-config \
  --from-file=prometheus.yml=/opt/k8s/prometheus/file/prometheus.yml \
  --from-file=alert.mysql.rules.yml=/opt/k8s/prometheus/file/alert.mysql.rules.yml \
  --from-file=alert.node.rules.yml=/opt/k8s/prometheus/file/alert.node.rules.yml

如需修改可使用kubectl edit 或者以下方式

删除现有的ConfigMap

kubectl delete configmap prometheus-config

使用新的文件重新创建ConfigMap

kubectl create configmap prometheus-config
–from-file=prometheus.yml=/path/to/new/prometheus.yml
–from-file=alert.mysql.rules.yml=/path/to/new/alert.mysql.rules.yml
–from-file=alert.node.rules.yml=/path/to/new/alert.node.rules.yml

部署Deployment

修改prometheus-Deployment.yaml文件中的信息,然后应用YAML文件

cat > /opt/k8s/prometheus/prometheus-Deployment.yaml <<EOF
apiVersion: apps/v1
kind: Deployment
metadata:
  name: prometheus-deployment
spec:
  replicas: 1
  selector:
    matchLabels:
      app: prometheus
  template:
    metadata:
      labels:
        app: prometheus
    spec:
      containers:
      - name: prometheus
        image: prom/prometheus
        ports:
        - containerPort: 9090
        volumeMounts:
        - name: prometheus-config-volume
          mountPath: /etc/prometheus
          readOnly: true
        - name: prometheus-data
          mountPath: /prometheus
      volumes:
      - name: prometheus-config-volume
        configMap:
          name: prometheus-config
      - name: prometheus-data
        persistentVolumeClaim:
          claimName: prometheus-data-pvc
EOF
kubectl apply -f prometheus-Deployment.yaml 
kubectl get Deployment

部署Service

修改prometheus-Service.yaml文件中的信息,然后应用YAML文件

cat > /opt/k8s/prometheus/prometheus-Service.yaml <<EOF
apiVersion: v1
kind: Service
metadata:
  name: prometheus-service
spec:
  type: NodePort
  ports:
  - port: 9090
    targetPort: 9090
    nodePort: 30090
  selector:
    app: prometheus
EOF
kubectl apply -f prometheus-Service.yaml 
kubectl get Service
  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

(~ ̄▽ ̄)~凤凰涅槃

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值