Pages - Menu

2022年11月22日 星期二

[K8s] linux系統時間與k8s

前言

最近弄之前的人自建的k8s,
才碰到一堆問題,
我的linux果然需要加強orz


正文

一般的linux內的時間顯示

timedatectl



Local time :本機時間
Universal time : UTC時間
RTC time: 硬體時間
NTP service : 自動效時
Time Zone: 時區

當時間不對時,可以設定時間的自動效正

timedatectl set-ntp yes 

設定完後,等一下(多久不確定,但不會立即),
UTC的時間應該就會自己效對。

NTP伺服器(有需要再設定)

time.google.com

查詢各時區

timedatectl list-timezones

設定時區

timedatectl set-timezone Asia/Taipei

ref. Ubuntu Linux 使用 timedatectl 校正時間、時區教學與範例

Pod的時區設定

pod的時間會跟他所在的node時間一致,
所以當你的node 主機時間錯時,
pod的時間也會跟著錯。

但基本上都是UTC,
如果要指定時區的話,
可以用volume掛載成特定地區。
或是直接在build image時,一併更改。

  1. pvc 掛載
    時區檔案的位置
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
  1. Dockerfile更改
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
         && echo "Asia/Shanghai" > /etc/timezone

ref.

沒有留言:

張貼留言