微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用环境变量的 Kubernetes Pod 中的时区

如何解决使用环境变量的 Kubernetes Pod 中的时区

我正在尝试按照 kubernetes timezone in POD with command and argument 将我的 Pod 时间更新为亚洲/加尔各答地区。但是,时间仍然保持相同的 UTC 时间。只有时区从 UTC 更新为亚洲。

我能够使用如下卷安装来修复它。创建配置映射并应用部署 yaml。

 dDb.clear();

  or 

 dDb = null

为什么环境变量方法不起作用?如果我们使用卷挂载时间,是否会发生从一台主机到另一台主机的 pod 驱逐,是否会影响 pod 驱逐后的卷挂载时间?

EV 部署 YAML 如下,不更新时间

kubectl create configmap tz --from-file=/usr/share/zoneinfo/Asia/Kolkata -n <required namespace>

Volume Mount yaml 如下。

apiVersion: apps/v1
kind: Deployment
Metadata:
  name: connector
  labels:
    app: connector
  namespace: clients
spec:
  replicas: 1
  selector:
    matchLabels:
      app: connector
  template:
    Metadata:
      labels:
        app: connector
    spec:
      containers:
      - image: connector
        name: connector
        resources:
          requests:
            memory: "32Mi"  # "64M"
            cpu: "250m"
          limits:
            memory: "64Mi"  # "128M"
            cpu: "500m"
        ports:
          - containerPort: 3307
            protocol: TCP
        env:
          - name: TZ
            value: Asia/Kolkata
        volumeMounts:
          - name: connector-rd
            mountPath: /home/mongobi/mongosqld.conf
            subPath: mongosqld.conf
      volumes:
      - name: connector-rd
        configMap:
          name: connector-rd
          items:
          - key: mongod.conf

解决方法

在这种情况下,您需要在部署配置中将 type 属性作为 File for hostPath 提及。以下配置应该适合您。

 - name: tz-config
        hostPath:
           path: /usr/share/zoneinfo/Asia/Kolkata
           type: File

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。