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
相关推荐
heimeiyingwang1 分钟前
【架构实战】Kubernetes故障排查全景图:从Pod异常到集群雪崩的诊断手册
容器·架构·kubernetes
AAA@峥33 分钟前
K8s 资源管控:ResourceQuota 与 LimitRange 机制详解与实战
云原生·容器·kubernetes
caimouse1 小时前
ReactOS 图形系统分析(3):显示驱动 DDI framebuf.dll
linux·运维·网络
秦渝兴2 小时前
Ansible 自动化部署 K8s 三节点集群(完整教程)
kubernetes·自动化·ansible
TonyLee0172 小时前
Claude Code + DeepSeek:服务器安装与使用笔记
linux·服务器·deepseek·claude code
buhuizhiyuci2 小时前
【Linux 篇】数字世界的水流蓄水池 —— IO 缓冲区机制深度实战解析
linux·运维·服务器·c++
骇客野人2 小时前
Linux 服务器 Python 版 MCP 服务部署整体方案(适配 Claude/Cursor/自研Agent)
linux·服务器·python
云川之下2 小时前
【k8s】Docker inspect 命令
docker·容器·kubernetes
DLYSB_3 小时前
Kafka 消费倾斜死锁与 Partition 掉队:我用 Rust 写了个“数据管道物理哨兵”,比 Grafana 报警快了 18 秒
rust·kafka·grafana·报警灯
天疆说3 小时前
04 稳定性与性能调优实录:OOM 崩溃、并发槽位、前缀缓存与 DSpark 调参
linux·运维·缓存