K8s Pod与宿主机时区不同步
  bAB2KcLKpirZ 2023年11月02日 72 0


目录

本机替换上海时间

一、通过定制Dockerfile添加时区

二、通过将时区文件挂在到Pod中

三、通过环境变量定义时区

四、修改k8s表空间时区


本机替换上海时间

sudo timedatectl set-timezone Asia/Shanghai  && sudo ntpdate time.windows.com

一、通过定制Dockerfile添加时区

$ cat Dockerfile.date
FROM centos
      
RUN rm -f /etc/localtime \
&& ln -sv /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
&& echo "Asia/Shanghai" > /etc/timezone
      
# 构建容器镜像
$ docker build -t centos7-date:test -f Dockerfile.date .
      
$ docker run -it centos7-date:test /bin/sh
sh-4.2# date
Wed Mar  6 17:40:01 CST 2019

二、通过将时区文件挂在到Pod中

cat time-mount.yaml
apiVersion: v1
kind: Pod
metadata:
  name: time
spec:
  containers:
  - name: time
    image: nginx
    args: [/bin/sh, -c,
            'i=0; while true; do echo "$i: $(date)"; i=$((i+1)); sleep 1; done']
    volumeMounts:
      - name: timezone
        mountPath: /etc/localtime
  volumes:
    - name: timezone
      hostPath:
        path: /usr/share/zoneinfo/Asia/Shanghai

三、通过环境变量定义时区

cat time.yaml
apiVersion: v1
kind: Pod
metadata:
  name: time-nginx
spec:
  containers:
  - name: time-nginx
    image: nginx
    args: [/bin/sh, -c,
            'i=0; while true; do echo "$i: $(date)"; i=$((i+1)); sleep 1; done']
    env:
    - name: TZ
      value: Asia/Shanghai

四、修改k8s表空间时区

#官方提供的helm部署方式
helm repo add k8tz https://k8tz.github.io/k8tz/
helm install k8tz k8tz/k8tz --set timezone=Asia/Shanghai

kubectl create ns test
kubectl annotate ns test k8tz.io/strategy=hostPath
kubectl annotate ns test k8tz.io/timezone=Asia/Shanghai
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
bAB2KcLKpirZ