kubernetes Container Timezone Set (쿠버네티스 컨테이너 타임존 설정) 방법
쿠버네티스로 컨테이너를 생성하는 경우 해당 컨테이너 내부의 타임존이 UTC로 설정되어 있다.
먼저 생성된 pod의 timezone이 어떻게 설정되어있는지 확인해본다.
kubectl exec -it [컨테이너 NAME] -- date
위 명령을 통해 컨테이너 내부의 timezone을 확인해도 되고 kubectl -it 명령을 통해 직접 내부로 들어가서 타임존을 확인해도 된다.
kubectl exec -it [컨테이너 NAME] /bin/bash
date
pod 내부의 timezone이 UTC로 설정되어있어 한국기준 9시간이 맞지 않게 된다.
따라서 해당 yaml 파일을 수정하여 타임존을 맞추도록 한다.
필자의 경우 helm chart의 deployment 리소스로 앱을 배포하고 있었기 때문에 deployment.yaml을 수정하였다.
spec:
...[생략]...
template:
metadata:
...[생략]...
spec:
...[생략]...
containers:
- name:
...[생략]...
volumeMounts:
- name: tz-seoul
mountPath: /etc/localtime
volumes:
- name: tz-seoul
hostPath:
path: /usr/share/zoneinfo/Asia/Seoul
해당 deployment 템플릿의 spec.containers에 volume으로 호스트서버의 /usr/share/zoneinfo/Asia/Seoul 을 pod내부의 /etc/localtime 으로 맞춰주면된다.
다시 배포하는 경우 timezone이 한국의 서울 기준으로 맞춰진게 확인된다.
'컨테이너 > Kubernetes' 카테고리의 다른 글
Dynatrace 사용하여 Kubernetes Monitoring 해보기(엄청 쉬움) (0) | 2023.08.10 |
---|---|
쿠버네티스(k3s) OpenEBS 스토리지 클래스 설치 및 openEBS를 기본 스토리지 클래스로 설정 (0) | 2023.04.12 |
kubernetes default namespace setting 하기 (0) | 2023.04.04 |
Error: INSTALLATION FAILED: Kubernetes cluster unreachable: Get "http://localhost:8080/version": dial tcp [::1]:8080: connect: connection refused 해결 방법 (0) | 2023.04.03 |
helm 설치 하는 방법 (리눅스) (0) | 2023.03.26 |