修改容器内部与外部相差8小时问题

在这里插入图片描述
通常我们服务器上会有很多时区及时间s,器内部如果不设置默认是走UTC的,就是世界时间,和我们中国时间好相差8小时的,一般涉及到数据鉴权传输,那么时间的问题还是很重要的,不然后引起很多不同场景下的问题

:

一般情况下,内部环境都是会有自建的内网或公网时间源用来同步,这样可以解决大部分裸机服务的环境,容器如果不做配置的话,那么很多问题,
不多说,直接解决方式:

解决方式

1.裸机服务配置事件源,解决时间同步问题
参考地址
裸机解决方式其实很容易,实现方式很多
2.常见k8s容器解决方式:
参考地址
这个其实写的足够全了,能解决大部分问题,
这是另一种解决方式 不适用一些托管版k8s环境,
在这里插入图片描述
在这里插入图片描述就是yaml配置上这两部就可以了
3.整点不一样的:(我遇到的阿里ack集群部分容器改了配置不生效)
ps:这个原因我没找到,不过其实是能解决,就是问题怪–
比如,通过第二个场景链接,在制作容器时,dockerfile加时区的配置,让docker镜像本身就有时区配置,这个是一定可以解决的,不过我没有做,是因为镜像并不是我能制作的,有权限问题,
再插几个我认为也能解决部分基于阿里ack-k8s集群时区问题的解决方式

参考地址1
参考地址2
这个和2.2链接相似
最后这在提供个yaml参考,配置加的格式

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-dep-timesys
  namespace: default
  labels:
    app: nginx-deployment
spec:
  replicas: 2
  selector:
    matchLabels:
      app: nginx-deployment-ord-time
  template:
    metadata:
      labels:
        app: nginx-deployment-ord-time
    spec:
      containers:
      - name: nginx
        image: nginx:latest
        ports:
        - containerPort: 80
        volumeMounts:
          - name: timezone
            mountPath: /etc/localtime                           # 挂载到容器的目录
      volumes:
         - name: timezone
           hostPath: 
             path: /usr/share/zoneinfo/Asia/Shanghai   

就这样~~~~~~~~~

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐