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
相关推荐
lzx_0026 小时前
Linux 进程(二) 深入理解进程
linux
沫璃染墨6 小时前
从零入门计算机网络系列(十二):HTTP长连接与会话管理详解——从Connection到Cookie与Session
linux·服务器·c++·tcp/ip·ubuntu·http·交互
温暖小土6 小时前
在 CentOS 上安装 Redis Stack
linux·redis·centos
GeW8 小时前
国产化替代进入深水区之后Linux 与数据库为什么必须走向重建
linux
女神下凡11 小时前
芯参谋(85):Linux_PPI_NAND_驱动开发指南
linux·运维·arm开发·驱动开发·单片机·嵌入式硬件·设计规范
12.=0.12 小时前
【持续更新】shell脚本 + Linux命令
linux·运维·服务器
Escalating_xu12 小时前
【Linux 网络编程】五种 I/O 模型与非阻塞 I/O:从“等数据”到正确处理 EAGAIN
java·linux·网络
无言听风雨丶12 小时前
Linux 容器本质探秘:Cgroup 与 Namespace 深度解析与实战
linux·运维·服务器·kubernetes
万联WANFLOW12 小时前
CVE-2026-98432 等漏洞自查:AI 查出的 Linux、Windows 漏洞,运维怎么确认受不受影响
linux·运维·windows·网络安全
OPEN-F13 小时前
Ubuntu 自动登录后 GNOME 远程桌面连不上?一次登录钥匙环锁定的排查与永久修复
linux·运维·ubuntu