반응형
참고
-
Helm Chart를 이용한 Kubernetes배포/관리 - Cyuu (v2에 대한 설명)
-
Day-30 학습 Helm (part 1) - it Home (v2와 v3 차이 도식)
-
Helm 빠르게 시작해보자! - 악분일상 (helm이란? 10가지 주제 데모)
Helm이 무엇인가 살펴보면
helm을 한 문장으로 표현해 본다면 yaml 파일 패키지 정도가 어울릴 것 같습니다.
가령, 외부에서 접속 가능한 서버 한 세트를 배포 하려면 아래와 같이 두 개 이상의 yaml파일이 필요할 수 있습니다.
-
front-service.yaml
-
front-deployment.yaml
-
front-pvc.yaml
게다가 백엔드 서버가 필요하다면 추가 yaml 파일이 필요하게 됩니다.
-
front-service.yaml
-
front-deployment.yaml
-
front-pvc.yaml
-
back-service.yaml
-
back-deployment.yaml
-
back-pvc.yaml
여기에 결제를 위한 독립 서버를 구성하려면 yaml 파일이 또 추가 됩니다.
-
front-service.yaml
-
front-deployment.yaml
-
front-pvc.yaml
-
back-service.yaml
-
back-deployment.yaml
-
back-pvc.yaml
-
purchase-service.yaml
-
purchase-deployment.yaml
-
purchase-pvc.yaml
이런식으로 하나의 서비스를 구성하기 위한 서버가 늘어날 수록 yaml파일 수가 늘어납니다.
물론! 모든 yaml 파일들의 내용을 하나의 yaml의 manifest로 정의할 수 도 있지만
관리측면에서는... 어후~ 끔찍하죠~
저렇게 yaml 파일이 많으면 서비스 한번 띄우려면 여러번의 명령어로 각 yaml파일을 배포 해야 합니다.
하지만, helm을 사용하면 yaml 파일이 아무리 많더라도 명령어 한줄로 배포하거나 삭제할 수 있습니다.
(개인적으로는 요 부분이 helm의 핵심인 것 같습니다. -0-)
helm은 여러 yaml 파일들을 패키지 형식으로 묶어 편하게 배포할 수 있도록 해주는 도구 입니다.
Helm chart 구조
helm chart는 아래와 같이 tree 구조로 구성 되어 있습니다.
그리고 chars 하위에 또 다른 helm chart 구성이 가능하다고 하니
아래와 같이 구성해볼 수도 있을 것 같습니다. (궁굼하네요 해봐야 겠어요)
각 항목들의 뜻
wordpress/
|
|
최상위 폴더 : release될 패키지
|
|
Chart.yaml
|
차트에 대한 정보
|
|
values.yaml
|
차트에서 사용하는 설정값(변수 등)
|
|
templates/
|
k8s에 배포될 yaml 파일들
|
|
charts/
|
관련있는 차트
|
|
LICENSE
|
#옵션 : 차트에 대한 라이센스
|
|
README.md
|
#옵션 : 차트에 대한 설명
|
|
requirements.yaml
|
#옵션 : 차트의 의존성 명시
|
|
templates/NOTES.txt
|
#옵션 : 간략한 사용법 설명
|
각자 뭔가 역할이 있겠지만 굵게 표시한 부분 중점으로 사용해 보며 느낌으로 파악하겠습니다. ㅋ
Helm 버전 2 와 버전 3 차이
helm 구조에 대해 검색하던 중 helm 구성요소에 대한 내용이 있었는데
그 중
-
Helm Client
-
Tiller
위 와 같은 개념이 검색되었습니다.
Helm Client와 Tiller 기능으로는
-
Helm chart를
-
Helm Client에서 입력을 받아
-
클러스터에 권한이 있는 (서버역할을 하는 클러스터에 설치된)
-
Tiller를 통해 helm chart에 정의된 내용을 배포
위 와 같이 helm chart를 cluster에 배포하기 위해 server-client 개념이였고, 이 구조는 helm version2의 내용 이였습니다.
현재(2022-06-22)는 helm version 3를 사용하게 되었고, helm client나 Tiller 개념 대신
-
helm 하나로 구성되었으며
-
tiller의 주 역할인 클러스터의 권한은 kubeconfit에 의해 부여 된다고 합니다.
구 버전이 되어버린 helm v2를 사용할 일은 없겠지만
나중에 helm 자료 검색 시 tiller 라는게 보이는 글은 v2에 해당하는 내용이라는것을 구분할 수 있으면 될 것 같습니다.
Helm v2와 v3 차이
음...
딱히 helm에 대해 더 검색되거나 궁굼한게 있진 않네요
바로 사용 해봐야겠습니다.
반응형
Helm 설치
helm v2와 다르게 helm v3는 설치라 할 것이 없습니다.
Windows 기준으로는 압축되어 있는 실행파일 다운로드 후 압축만 풀면 바로 사용할 수 있습니다.
Helm Release - git for Helm
위 링크로 들어가서 OS환경에 맞는 압축파일을 다운로드 합니다.
(저는 Windows환경이라 Windows용 파일을 다운로드 했습니다.)
다운로드 후 압축을 풀어주면 helm.exe 파일이 있습니다.
사용 편의를 위해 해당 파일을 path를 잡아줄 건데요 저는 새로운 경로를 추가 하여 path를 잡아 줄겁니다.
C:\Program Files\Helm 경로를 추가하여 helm.exe를 옮기고
Windows 환경 변수 path에 경로를 추가 합니다.
cmd 창에서 helm 커맨드를 사용해 봅니다.
오호~ 잘 설치? 되었군요
이제 chart를 사용해 볼건데 뭔가 샘플이 필요 하니까 적당한 샘플을 찾아서 chart를 만들어 봐야겠습니다.
반응형
LIST
'IT > Kubernetes' 카테고리의 다른 글
Helm으로 2 tier webapp 배포 (종속성) (1) | 2023.04.17 |
---|---|
Helm으로 2 tier webapp 배포 (0) | 2023.04.17 |
K8S Horizontal Pod Autoscaler (HPA) (0) | 2023.04.17 |
K8S Autoscale 리서치 (0) | 2023.04.17 |
K8S resources.requests 필요한가? (1) | 2023.04.17 |