티스토리 뷰
7탄!! 쿠버네티스에 pod 올리자! pod? 뭐에요?
9탄!! 쿠버네티스 오토스케일링(kubernetes autoscaling)
# 부록!! 쿠버네티스 장애 처리5탄부록!! 쿠버네티스 장애 처리
#기타 참고하기
헬름챠트로 올리기[샘플]11) 쿠버네티스 가상스토리지(Ceph) 설치
- The Tiller Server: 쿠버네티스 API와 상호 작용하는 Helm 서버
- The Helm Client : 커맨드 라인 Helm 클라이언트
Helm설치
Helm 3 설치 & 기본 사용방법
1. 개요
Helm의 사용법에 대해서 알아보겠습니다.
2. 헬름 조건
- 쿠버네티스 설치및 클러스터는 위에 1탄부터 천천히 따라해보세요
- helm을 설치할 위치에서 kubectl 명령어를 사용할 수 있어야 합니다.
3. Helm이란?
Helm은 쿠버네티스의 package managing tool입니다.
크게 세가지 컨셉을 가지고 있는데 :
- Chart : Helm package입니다. app을 실행시키기위한 모든 리소스가 정의되어있습니다.
Homebrew formula, Apt dpkg, Yum RPM파일과 비슷하다고 생각하시면 됩니다. - Repository : chart들이 공유되는 공간입니다. docker hub를 생각하시면 될 것 같습니다.
- Release : 쿠버네티스 클러스터에서 돌아가는 app들은(chart instance) 모두 고유의 release 버전을 가지고 있습니다.
다시 정리하면,
helm은 chart를 쿠버네티스에 설치하고, 설치할때마다 release버전이 생성되며, 새로운 chart를 찾을때에는 Helm chart repository에서 찾을 수 있습니다.
주의!
이 문서는 helm v3.0.0 이상을 다루고 있습니다.
2.x버전과 많은것이 변경되었기 때문에 참고해주시기 바랍니다.
4. Installation
kubectl을 사용할 수 있는 노드로 이동하여 설치합니다.
November 13, 2020. The new locations are hosted using GitHub pages.
NameOld LocationNew Location
2020년 11월 13일 부터 변경되었나 보네요 위치 확인 잘하세용
https://charts.helm.sh/incubator
$ curl https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 > get_helm.sh
$ chmod 700 get_helm.sh
$ ./get_helm.sh버전 확인 :
$ helm version
helm chart repository를 추가해줍니다.
$ helm repo add stable https://charts.helm.sh/incubator
$ helm repo add stable https://charts.helm.sh/stable
chart list 출력 :
$ helm search repo stable
chart update :
$ helm repo update
Happy Helming!
5. 실습 (Prometheus)
설치가 끝났으니 한번 차트를 클러스터에 배포해봅시다.
모니터링 툴 중 하나인 Prometheus를 배포해보겠습니다.
$ helm install monitor stable/prometheus
그런데 pod의 상태를 확인해보면 :
$ kubectl get pod
몇 개의 pod이 Pending상태입니다.
이유는 k8s클러스터에 StorageClass가 정의되어있지 않기 때문입니다.
(pvc의 요청을 받아줄 provisioner가 없기 때문)
그래서 일단 pv옵션을 false로 변경해주어 EmptyDir을 사용하게 해야 합니다.
Helm chart의 설정을 변경하는 방법은 크게 두가지 방법이 있습니다.
using yaml
문제가 되는 chart를 먼저 확인해봅시다.
$ helm inspect values stable/prometheus
persistentVolume.enabled가 True입니다. 이렇게 표기되어있는 부분이 총 세군데가 있습니다.
수정할 부분만 따로 파일을 만들어주면 됩니다.
$ vim volumeF.yaml
alertmanager:
persistentVolume:
enabled: false
server:
persistentVolume:
enabled: false
pushgateway:
persistentVolume:
enabled: false
딱 이렇게 volumeF.yaml 파일에 입력해서 저장해둡니다.
그리고 업그레이드해줍시다. $ helm upgrade -f volumeF.yaml monitor stable/prometheus 업그레이드 하게되면 Pending이었던 pod들이 Running상태로 변하는 것을 확인할 수 있습니다. |
using Command
다른 방법으로는 커맨드라인으로 설정을 추가해주는 방법이 있습니다.
outer: inner: value
위와 같은 표현식을 다음과 같이 표현할 수 있습니다.
$ --set outer.inner=value
그럼 위 문제와 같은 경우는 다음과 같이 표현될 수 있습니다.
$ helm install monitor stable/prometheus --set alertmanager.persistentVolume.enabled=false --set
server.persistentVolume.enabled=false --set pushgateway.persistentVolume.enabled=false
pod들이 정상적으로 Running되었으니 웹으로 접속해봅시다.
$ kubectl get svc
prometheus-server를 clusterIP에서 NodePort로 변경해줍니다.(spec.type)
$ kubectl edit svc monitor-prometheus-server
NodePort로 변경 방법
# kubectl edit svc monitor-prometheus-server
아래와 같이 쭉..~ 입력해줘도 상관 없습니다.
$ helm install monitor stable/prometheus --set alertmanager.persistentVolume.enabled=false --set server.persistentVolume.enabled=false --set pushgateway.persistentVolume.enabled=false
다시 확인해보면 포트포워딩된 포트가 보입니다.
웹사이트 확인!! 192.168.56.150:31557 (ip:port)로 접속해봅시다.
버추얼 박스 아이피 입력 하셔야 합니다.
삭제
삭제할때는 간단하게 설치할때 사용했던 이름만 사용하면 됩니다.
$ helm uninstall {이름}
'3. 쿠버네티스의 모든것' 카테고리의 다른 글
6탄 !! 도커 컴포즈 VS 쿠버네티스 컴포즈 (0) | 2020.03.22 |
---|---|
#부록!! 쿠버네티스 트러블 슈팅!!~ (0) | 2020.03.21 |
4탄!! NFS 설정입니다. (0) | 2020.03.21 |
3탄!! 쿠버네티스 WORKER NODE 환경 구성 (0) | 2020.03.19 |
2탄!! 쿠버네티스 설치 준비[마스터노드] (2) | 2020.03.19 |
- Total
- Today
- Yesterday
- 키알리
- MSA
- pod 상태
- 오라클 트러블 슈팅(성능 고도화 원리와 해법!)
- [오라클 튜닝] sql 튜닝
- 우분투
- 오라클 홈디렉토리 copy 후 startup 에러
- CVE 취약점 점검
- K8s
- 설치하기(HP-UX)
- startup 에러
- Oracle
- 쿠버네티스
- 스토리지 클레스
- 커널
- 앤시블
- 버쳐박스
- [오라클 튜닝] instance 튜닝2
- (InstantClient) 설치하기(HP-UX)
- 테라폼
- 5.4.0.1072
- ORACLE 트러블 슈팅(성능 고도화 원리와 해법!)
- 코로나19
- 오라클 인스턴트클라이언트(InstantClient) 설치하기(HP-UX)
- directory copy 후 startup 에러
- 트리이스
- 튜닝
- ubuntu
- 오라클
- 여러서버 컨트롤
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |