我在kubernetes集群中的日期和时间有问题。使用kubeadm在数据中心中设置集群。我的主机服务器时间是使用NTP同步的,尽管我已在配置群集后对其进行了同步。现在,在群集中创建的所有Pod的时间都会错误。因此,原因似乎是码头工人采用了UTC时区。对于临时解决方案,我在我们创建的Pod中将hostmeachine与volume mount / etc / localtime一起使用,但是对于我使用来自helm repo的helm安装的应用程序似乎不可行。有什么办法可以解决此问题?我不希望每个吊舱都在正确的时间挂载音量。码头工人是否可以通过任何方式从主机获取时区。
仅供参考,在CentOS 7上设置了k8s集群。它们是在EXSi上创建的VM。谢谢
它没有坏。它正在按设计工作。
容器中的时钟与主机上的时钟相同,因为它是由该主机的内核控制的。
时区由OS层控制,因此容器内的时区可能不同。解决方法是使用特定的时区配置和hostPath卷来设置特定的时区。
apiVersion: v1
kind: Pod
metadata:
name: busybox-sleep
spec:
containers:
- name: busybox
image: busybox
args:
- sleep
- "1000000"
volumeMounts:
- name: tz-config
mountPath: /etc/localtime
volumes:
- name: tz-config
hostPath:
path: /usr/share/zoneinfo/Europe/Prague
type: File
由于使用头盔,因此应查看所用映像的文档,并查找可以更改的时区变量,以便可以在部署时将其放入value.yaml
或使用--set
选项。