728x90
[주의] 개인 공부를 위해 쓴 글이기 때문에 주관적인 내용은 물론, 쓰여진 정보가 틀린 것일 수도 있습니다!
피드백 부탁드립니다. (- -)(_ _) 꾸벅
[ Helm이란? ]
우분투의 apt나 Centos의 yum처럼 쿠버네티스용 패키지 매니지먼트 도구이다.
쿠버네티스 환경에서 배포를 한다고 하면, 단순히 컨테이너를 배포하여 사용하기엔 한계가 있다. 디플로이먼트로 Pod를 배포하여 status에 맞게 관리하여야 하고, 서비스를 배포하여 외부로 IP를 노출시키도 하고, PVC 같은 볼륨 정책적인 부분도 배포해야한다. 이러한 모든 작업을 Helm이라는 도구를 통해 리소스를 한번에 배포해주는 역할을 한다.
CLI 툴인 Helm은 다음과 같이 동작한다.
- 쿠버네티스 Cluster 안에 Helm Server가 있고, 이를 Tiller라고 부른다.
- Helm은 이 Tiller와 통신을 하며 배포 명령을 내릴 수 있고, Tiller는 쿠버네티스의 리소스를 배포한다.
- Helm을 통해 인스톨하는 패키지를 Chart(차트)라고 부른다.
- Chart는 Helm Chart Repository에 저장된다.
- 이 리포지토리는 HTTP server를 지원하므로, 구글 클라우드나 깃허브를 통해 끌어올 수 있다.
[ Helm 설치 ]
# brew 패키지 매니지먼트 툴 설치 (준비를 위한 준비..?)
$ sudo apt install linuxbrew-wrapper
# brew를 통해 helm 패키지 매니지먼트 툴 설치
$ brew install helm
# dependencies 설치
$ sudo apt-get install build-essential
# bash_profile에 path관련 환경변수 기입
$ echo 'export PATH="/home/linuxbrew/.linuxbrew/bin:$PATH"' >>~/.bash_profile
$ echo 'export MANPATH="/home/linuxbrew/.linuxbrew/share/man:$MANPATH"' >>~/.bash_profile
$ echo 'export INFOPATH="/home/linuxbrew/.linuxbrew/share/info:$INFOPATH"' >>~/.bash_profile
# 기본적인 chart들 가져오기
# git clone https://github.com/helm/charts.git
[ Helm 명령 ]
# repo 업데이트
$ helm repo update
# 설치
$ helm install <stable/패키지명>
# 삭제
$ helm delete <차트명>
# helm 목록 조회
$ helm list
728x90
'클라우드 > 쿠버네티스' 카테고리의 다른 글
[kubernetes] 쿠버네티스 클러스터 깔끔하게 초기화 및 오류조치 (0) | 2023.01.04 |
---|---|
[Kubernetes] 11. 쿠버네티스 etcd 백업/복원 (0) | 2022.12.30 |
[Kubernetes] 9. 쿠버네티스 kubeadm을 이용한 클러스터 구성 (0) | 2021.07.18 |
[Kubernetes] 8. 쿠버네티스 config와 kubectl의 context (0) | 2021.06.17 |
[Kubernetes] 7. 쿠버네티스 volume 마운트 (2) | 2021.06.17 |