k8s部署grafana

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

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

部署ConfigMap

上传文件grafana.ini 到/opt/k8s/grafana/file/下

bash 复制代码
kubectl create configmap grafana-config \
  --from-file=grafana.yml=/opt/k8s/grafana/file/grafana.ini

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

删除现有的ConfigMap
kubectl delete configmap grafana-config
使用新的文件重新创建ConfigMap
kubectl create configmap grafana-config

--from-file=grafana.yml=/opt/k8s/grafana/file/grafana.ini

部署Deployment

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

bash 复制代码
cat > /opt/k8s/grafana/grafana-Deployment.yaml <<EOF
apiVersion: apps/v1
kind: Deployment
metadata:
  name: grafana
spec:
  replicas: 1
  selector:
    matchLabels:
      app: grafana
  template:
    metadata:
      labels:
        app: grafana
    spec:
      containers:
      - name: grafana
        image: grafana/grafana
        ports:
        - containerPort: 3000
        env:
        - name: GF_SECURITY_ADMIN_USER
          value: "admin"
        - name: GF_SECURITY_ADMIN_PASSWORD
          value: "admin"
        volumeMounts:
        - name: grafana-storage
          mountPath: /var/lib/grafana
        - name: grafana-config
          mountPath: /etc/grafana/grafana.ini
          subPath: grafana.ini
      volumes:
      - name: grafana-storage
        persistentVolumeClaim:
          claimName: grafana-data-pvc
      - name: grafana-config
        configMap:
          name: grafana-config
EOF
bash 复制代码
kubectl apply -f grafana-Deployment.yaml 
kubectl get Deployment

部署Service

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

bash 复制代码
cat > /opt/k8s/grafana/grafana-Service.yaml <<EOF
apiVersion: v1
kind: Service
metadata:
  name: grafana-service
spec:
  type: NodePort
  ports:
  - port: 3000
    targetPort: 3000
    nodePort: 30000
  selector:
    app: grafana
EOF
bash 复制代码
kubectl apply -f grafana-Service.yaml 
kubectl get Service
相关推荐
小章UPUP几秒前
Kubernetes (K8s) 与 Podman 的比较
容器·kubernetes·podman
小Tomkk14 分钟前
数据库 变更和版本控制管理工具 --Bytebase 安装部署(linux 安装篇)
linux·运维·数据库·ci/cd·bytebase
赌博羊14 分钟前
ImportError: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32‘ not found
linux·运维·gnu
木卫二号Coding16 分钟前
第七十九篇-E5-2680V4+V100-32G+llama-cpp编译运行+Qwen3-Next-80B
linux·llama
getapi25 分钟前
Ubuntu 22.04 服务器的系统架构是否为 amd64 x86_64
linux·服务器·ubuntu
消失的旧时光-194342 分钟前
Linux 入门核心命令清单(工程版)
linux·运维·服务器
艾莉丝努力练剑1 小时前
【Linux:文件】Ext系列文件系统(初阶)
大数据·linux·运维·服务器·c++·人工智能·算法
Trouvaille ~1 小时前
【Linux】TCP Socket编程实战(一):API详解与单连接Echo Server
linux·运维·服务器·网络·c++·tcp/ip·socket
旖旎夜光2 小时前
Linux(13)(中)
linux·网络
农民工老王2 小时前
K8s 1.31 私有化部署实战:从 Calico 崩溃到 NFS 挂载失败的排坑全记录
云原生·kubernetes