假设我有一些(.NET Core)代码在k8s pod中运行,我要求:
DateTime.Now
我假设我将从运行Pod的主机获取日期时间。有什么方法可以在k8s集群中获得一致的日期时间值?
最佳答案
容器中的时钟与主机相同,因为它由内核控制。
时区由OS层tho控制,因此容器中的时区可能不同。您可以在时区文件中挂载以解决此问题。
跨机器的时钟同步是一个复杂的话题。您可以像在所有节点上安装NTP客户端一样简单,也可以像在每个节点上安装GPS硬件时钟一样复杂。
如果您的Kubernetes节点是VM,则这会增加另一层复杂性。大多数IaaS和虚拟机管理程序提供了某种使VM时钟与主机同步的方法,但是您仍然需要使所有主机保持同步。