쿠버네티스에선 파드가 수시로 올라가고 내려가며 할당되는 노드와 ip가 바뀌는 등 변동 가능성이 존재한다.
때문에 WEB의 config 설정내용이나 소스 자원들을 따로 고정적으로 유지시킬 필요가 있다.
이런 필요성을 컨셉으로 상정하여 설계한 다음 개인적인 미니프로젝트를 진행했다.
Nginx를 Statefulset으로 실행하고 Configmap을 사용하여 설정 내용을 유지시키면 원하는 기능을 할수 있을것 같다.
0. 개념 정리와 설계
1. PV 생성
2. PVC를 포함한 Nginx Statefulset yaml 작성
0. 개념 정리와 설계
공식문서에서 참조할 만한 내용을 찾아보았다.
PV 생성에 대한 내용은 이것을 참조하였고
https://kubernetes.io/ko/docs/tasks/configure-pod-container/configure-persistent-volume-storage/
Statefulset 에 대한 내용은 이것을 참조하였다.
https://kubernetes.io/ko/docs/tutorials/stateful-application/basic-stateful-set/
nginx의 설정을 configmap화 하여 volume파일로 저장하는 방식을 채택하겠다.
1. PV 생성
작업할 디렉토리 생성
mkdir /nginx_st
PV용 마운트 디렉토리 생성
mkdir /data001/{pv0001,pv0002}
각 노드에 index파일을 넣어준다.
해당 노드에 할당된 파드는 pv설정을 통해 노드의 파일시스템에 있는 index파일을 본인의 컨테이너 안에 업데이트한다.
scp /data001/pv0001/index.html node2:/data001/pv0002/index.html
scp /data001/pv0001/index.html node3:/data001/pv0002/index.html
성공
'Kubernetes' 카테고리의 다른 글
Helm 차트로 grafana + Prometheus 배포 + 쿠버네티스 리소스 모니터링 (0) | 2023.02.20 |
---|---|
[Project] 온프레미스 중간 프로젝트 (0) | 2023.02.17 |
프로젝트 구상도 (0) | 2023.01.19 |
[미니프로젝트] - metal LB 사용하여 WordPress와 MySQL을 퍼시스턴트 볼륨에 배포 (with 시크릿) (1) | 2023.01.04 |
ingress (0) | 2023.01.04 |