Overview
Helm Base App Chart 생성후에 Base Chart 만 사용해서 모든 Application을 연동하는 방법에 대해서 알아본다.
https://github.com/somaz94/helm-base-app-template
Helm에 대한 내용들은 이전 포스팅을 참고하길 바란다.
2022.09.06 - [Container Orchestration/Kubernetes] - Helm 이란? (Kubernetes Package manager)
2023.05.16 - [Container Orchestration/Kubernetes] - Helm Chart 작성방법
2024.11.15 - [Container Orchestration/Kubernetes] - Helm Chart Template 문법
2024.12.20 - [Container Orchestration/Kubernetes] - Helm Chart 생성 및 패키징 (gh-pages)
Helm Base App Chart 생성(With ArgoCD)
사전 설정
- ArgoCD 설치
- ArgoCD에 Kubernetes Cluster 등록
- ArgoCD에 GitLab 등록
- PV, PVC 사용 시 Storage 설정
- 인증서 사용 시 Certmanager 설치 및 Clusterissuer 설정
Base Template 구조 및 생성
Base Template 구조
helm-base-app-template [main|…32]
17:45 $ tree -d
.
├── appsets
├── charts
│ └── base
│ └── templates
└── values
└── somaz
├── admin
├── auth
├── backend
└── batch
Base Template 생성
아래의 코드를 참고하면 된다. 여러가지로 변형 가능하다.
ArgoCD ApplicationSet 생성
마찬가지로 아래의 코드를 참고하면 된다.
App Values Yaml 파일 생성
가장 중요한 파일이다. `base template values.yaml` 을 참고해서 차분히 작성하는 것이 중요하다.
마무리
Base Template , ArgoCD Yaml, App Values Yaml 파일의 구조를 이해할 수 있다면, Base Template 하나만 사용해서 모든 App을 생성할 수 있다. 예시는 Onpremise Template 이지만 Cloud를 사용하더라도 동일하다. AWS, GCP, Azure 의 모든 리소스에 대한 Base Template을 생성하면 활용가능하다.
Reference
https://github.com/somaz94/helm-base-app-template
https://github.com/somaz94/helm-chart-template
'Container Orchestration > Kubernetes' 카테고리의 다른 글
Helm Chart 생성 및 패키징 (gh-pages) (2) | 2024.12.20 |
---|---|
Kubernetes Operator(CRD, CR) 생성(With kubebuilder) (0) | 2024.12.17 |
Kubernetes Operator 및 Custom Resource Definitions(CRDs) 이해하기 (0) | 2024.12.12 |
Kubernetes Headless Service란? (0) | 2024.12.03 |
Kubernetes Deployment Strategy (0) | 2024.11.26 |