更新时间:2025-07-18 GMT+08:00
设置容器与节点时区同步
创建工作负载时,支持设置容器使用节点相同的时区。您可以在创建工作负载时打开时区同步配置。
设置容器与节点时区同步
- 登录CCE控制台。
- 单击集群名称进入集群,在左侧选择“工作负载”,在右上角单击“创建工作负载”。
- 在创建工作负载基本信息页面,开启“时区同步”,即容器与节点使用相同时区。
图1 开启时区同步
- 完成其余配置后,创建该工作负载。
- 登录CCE控制台。
- 单击集群名称进入集群,在左侧选择“工作负载”,在右上角单击“创建工作负载”。
- 在创建工作负载时,在“容器配置 > 容器信息”中找到“数据存储”,选择“主机路径(HostPath)”。
设置以下参数:
- 主机路径 (HostPath):/etc/localtime
- 挂载路径:/etc/localtime
- 权限:只读
图2 挂载时区配置文件 - 完成其余配置后,创建该工作负载。
时区同步功能需要在容器通过挂载本地磁盘(HostPath)的方式,将节点的“/etc/localtime”挂载到容器的“/etc/localtime”,从而使得节点和容器使用相同的时区配置文件。
- 请参见通过kubectl连接集群,使用kubectl连接集群。
- 创建一个名为nginx-deployment.yaml的文件。其中,nginx-deployment.yaml为自定义名称,您可以随意命名。
vi nginx-deployment.yaml
YAML示例如下:
kind: Deployment apiVersion: apps/v1 metadata: name: test namespace: default spec: replicas: 2 selector: matchLabels: app: test template: metadata: labels: app: test spec: volumes: - name: date-config # 自定义的卷名称 hostPath: # 通过hostPath挂载节点的时区配置文件 path: /etc/localtime # 节点的时区配置文件路径 containers: - name: container-0 image: 'nginx:alpine' volumeMounts: - name: date-config # 在容器中挂载卷,需要和上文中的卷名称保持一致 readOnly: true # 挂载为只读文件 mountPath: /etc/localtime # 挂载至容器的路径 imagePullPolicy: IfNotPresent imagePullSecrets: - name: default-secret
按Esc,输入:wq,保存文件并返回。
- 执行以下命令,创建该工作负载。
kubectl create -f nginx-deployment.yaml
验证节点与容器时区是否同步
- 登录节点查询时区。
date -R
命令行终端显示如下信息:
Sat, 12 Apr 2025 16:58:47 +0800
- 查询容器时区是否与节点保持一致。
使用kubectl命令查询Pod名称:
kubectl get pod
使用kubectl命令进入容器,其中<pod_name>为上一步中查询的Pod名称:
kubectl exec -it <pod_name> -- /bin/bash
查询容器时区:
date -R
命令行终端显示如下信息,与节点时区保持一致:
Sat, 12 Apr 2025 16:59:23 +0800