쿠버네티스 컨테이너 타임존 설정하기(Setting the Kubernetes container timezone)
2022. 6. 17. 16:49ㆍ프로그래밍 개발(Development)/k8s
반응형
쿠버네티스로 컨테이너를 배포하다보면 기본 타임존이 UTC로 설정이 되어 있는경우가 많습니다.
그래서 배포시 타임존 설정을 하는 방법을 알아 보도록 하겠습니다.
테스트용 Nginx를 배포하고 타임존을 확인해보겠습니다.
nginx.yaml 파일 작성
apiVersion: apps/v1 # 쿠버네티스 api 버전
kind: Deployment # 생성할 오브젝트 종류
metadata:
name: nginx-deployment # deployment의 이름
labels:
app: nginx # label 지정
spec: # deployment의 스펙을 정의
replicas: 1 # 1개의 pod 설정
selector: # deployment가 관리할 pod를 찾는 방법을 정의
matchLabels:
app: nginx
template:
metadata:
labels: # pod의 label
app: nginx
spec:
containers: # 컨테이너 설정
- name: nginx
image: nginx
ports:
- containerPort: 80
nginx 배포
$ kubectl apply -f nginx.yaml
Pod가 생성된 것을 확인
$ kubectl get pods
NAME READY STATUS RESTARTS AGE
nginx-deployment-7848d4b86f-q8jhp 1/1 Running 0 3m53s
컨테이너 내부로 들어가서 타임존 확인 결과 기본 타임존인 UTC로 설정 되어 있다.
$ kubectl exec nginx-deployment-7848d4b86f-q8jhp -it -- date
Fri Jun 17 07:35:19 UTC 2022
타임존 변경을 하기 위해 nginx.yaml에 내용을 수정 해보자.
volumeMounts.mountPath의 /etc/localtime 과 volumes.hostPath.path의 /usr/share/zoneinfo/Asia/Seoul을 매핑하여 타임존을 맞춰 주자.
지역과 상황에 따라서 /usr/share/zoneinfo/Asia/Seoul 을 알맞게 수정해주면 된다.
apiVersion: apps/v1 # 쿠버네티스 api 버전
kind: Deployment # 생성할 오브젝트 종류
metadata:
name: nginx-deployment # deployment의 이름
labels:
app: nginx # label 지정
spec: # deployment의 스펙을 정의
replicas: 1 # 3개의 pod 설정
selector: # deployment가 관리할 pod를 찾는 방법을 정의
matchLabels:
app: nginx
template:
metadata:
labels: # pod의 label
app: nginx
spec:
containers: # 컨테이너 설정
- name: nginx
image: nginx
ports:
- containerPort: 80
###################################
# 이하 모두 추가 #
#↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓#
volumeMounts:
- name: tz-seoul
mountPath: /etc/localtime
volumes:
- name: tz-seoul
hostPath:
path: /usr/share/zoneinfo/Asia/Seoul
수정된 Deployment를 적용 후 타임존 확인 결과 변경 된 것을 확인 할 수 있다.
$ kubectl apply -f nginx.yaml
deployment.apps/nginx-deployment configured
$ kubectl get pods
NAME READY STATUS RESTARTS AGE
nginx-deployment-7cff4845c7-7q8v5 1/1 Running 0 4m22s
$ kubectl exec nginx-deployment-7cff4845c7-7q8v5 -it -- date
Fri Jun 17 16:42:40 KST 2022
반응형
'프로그래밍 개발(Development) > k8s' 카테고리의 다른 글
Kubernetes에 RabbitMQ 구축하기 (0) | 2022.06.27 |
---|---|
Kubernetes에 ELK(Kibana) 구축하기 #3 (2) | 2022.06.17 |
Kubernetes에 ELK(Logstash) 구축하기 #2 (0) | 2022.06.16 |
Kubernetes에 ELK(Elasticsearch) 구축하기 #1 (0) | 2022.06.16 |
Kubernetes Dashboard 설치(Install k8s dashboard) (0) | 2022.05.23 |