Kubernetes
[K8S] Kubespray 설정 파일 변경하기
판다조아
2024. 3. 9. 20:32
Kubespray 내의 다양한 설정 파일을 조작하여 Kubernetes 클러스터를 사용자의 요구 사항에 맞게 자유롭게 조정할 수 있습니다.
변경한 설정 파일에 맞게 자동으로 설치 및 구성되기 때문에 클러스터의 구성을 쉽게 수정하고 맞춤형 환경을 만들 수 있습니다.
그럼 간단히 몇가지 설정을 변경하여 클러스터를 구성해보도록 하겠습니다!
k8s-cluster.yml
( inventory/mycluster/group_vars/k8s_cluster/k8s-cluster.yml )
'k8s-cluster.yml' 파일은 Kubernetes 클러스터를 배포하는데 필요한 구성 정보를 담고 있습니다.
- Container manager 지정
- 컨테이너 생성, 배포, 실행 등을 관리하는 소프트웨어 ex ) Docker
## Default: containerd
container_manager: docker
- audit 활성화
- 감사 로그
# audit log for kubernetes
kubernetes_audit: true
- event 유지 시간 설정 (event 로그 보존 시간)
- ex ) Pod의 생성, 삭제, 스케일링, 에러 등
## Amount of time to retain events. (default 1h0m0s)
event_ttl_duration: "48h0m0s"
- 인증서 자동 갱신
- 매월 첫 번째 월요일에 자동 갱신
## Automatically renew K8S control plane certificates on first Monday of each month
auto_renew_certificates: true
addons.yaml
( inventory/mycluster/group_vars/k8s_cluster/addons.yml )
'addons.yml' 파일은 Kubernetes 클러스터에 추가로 설치되는 애드온(Add-ons) 구성을 담고있습니다.
- Helm 설치
- Kubernetes 애플리케이션을 쉽게 배포하고 관리하기 위한 패키지 매니저
### addons.yml ###
helm_enabled: true
- Local Path Provisoner 설치
- 클러스터 내에서 pv(Persistent Volumes)를 동적으로 생성하고 할당하는 프로비저너
# Rancher Local Path Provisioner
local_path_provisioner_enabled: true
- Metrics Server 설치
- 클러스터 내에서 리소스 사용량 및 성능에 대한 정보 수집
→ Pod 및 Node의 CPU, MEMORY 사용량 등 쿼리 가능
- 클러스터 내에서 리소스 사용량 및 성능에 대한 정보 수집
# Rancher Local Path Provisioner
local_path_provisioner_enabled: true
- Nginx Ingress Controller 설치
- 클러스터에서 서비스를 외부로 노출, HTTP 및 HTTPS 트래픽을 관리하고 라우팅하는 소프트웨어
# Nginx ingress controller deployment
ingress_nginx_enabled: true
# 호스트 머신의 네트워크 사용
ingress_nginx_host_network: true
# 특정 IP로 노출X
ingress_publish_status_address: ""