k8s pods 同步宿主机时间

  • 以mysql的statefulset为例,将宿主机时间同步到pod中,确保pod时间和宿主机保持一致,主要在env、volumemounts、volumes进行设置,✅ 为设置的位置和内容
apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: mysql
  namespace: mysql
spec:
  serviceName: mysql
  replicas: 3
  selector:
    matchLabels:
      app: mysql
  template:
    metadata:
      labels:
        app: mysql
    spec:
      initContainers:
      - name: init-mysql
        # ... [原有配置保持不变] ...
      - name: clone-mysql
        # ... [原有配置保持不变] ...

      containers:
      - name: mysql
        image: mysql:5.7.44
        env:
          - name: MYSQL_ROOT_PASSWORD
            valueFrom:
              secretKeyRef:
                name: mysql-secret
                key: password
          - name: TZ  # ✅ 新增时区环境变量
            value: "Asia/Shanghai"
        volumeMounts:
          - name: data
            mountPath: /var/lib/mysql
            subPath: mysql
          - name: conf
            mountPath: /etc/mysql/conf.d
          - name: host-timezone  # ✅ 新增时区挂载
            mountPath: /etc/localtime
            readOnly: true
        # ... [原有 ports、resources、探针配置保持不变] ...

      - name: xtrabackup
        # ... [原有配置保持不变] ...

      volumes:
        - name: conf
          emptyDir: {}
        - name: config-map
          configMap:
            name: mysql
        - name: host-timezone  # ✅ 新增的宿主机时区文件
          hostPath:
            path: /etc/localtime

  volumeClaimTemplates:
    # ... [原有 PVC 配置保持不变] ...

 

posted @ 2025-04-09 11:31  Leonardo-li  阅读(62)  评论(0)    收藏  举报