Helm 3.0에서 kubernetes에 쉽게 도입

Kubernetes에 앱을 쉽게 넣을 수 있는 Helm이 v3에 메이저 업데이트되어, Tiller가 없어지는 것으로 조작성이 변화했기 때문에 시험한다.

이번에는 Elasticsearch와 Kibana를 넣는다. 환경은 Windows의 Docker desktop 부속의 kubernetes를 사용.

1. Helm 설치



1.1 Helm 설치



Windows의 경우 Chocolatey를 사용합니다. Chocolatey 설치 방법은 아래 참조.
htps : // 잠깐 y. 오 rg / in s tai l

Chocolatey의 인스톨 후에는 커멘드 프롬프트나 PowerShell등의 콘솔로부터 Helm를 인스톨.
> choco install -y kubernetes-helm

1.2 Chart(필요한 애플리케이션 모음) 찾기



Helm에서는 필요한 어플리케이션(컨테이너)의 모임을 Chart라고 부른다.
search repo 명령으로 원하는 Chart를 검색할 수 있습니다.
> helm search repo Chart名

2. Helm으로 Elasticsearch 설치



2.1 Elasticsearch의 Chart 검색



이번 타겟이 되는 Elasticsearch를 helm에서 검색.
# ElasticsearchのChart検索
> helm search repo Elasticsearch



맨 위 bitnami/elasticsearch를 이번에는 설치한다.
표시된 URL을 브라우저에 입력합니다.



2.2 리포지토리 등록 및 Chart 설치



표시된 다음 명령을 입력합니다.
# レポジトリの登録(Chartのインストールに必要)
> helm repo add bitnami https://charts.bitnami.com
> helm repo add stable https://kubernetes-charts.storage.googleapis.com
# Elasticsearch Chartのインストール(設定なし)
> helm install elasticsearch bitnami/elasticsearch

elasticsearch라는 이름으로 bitnami/elasticsearch가 설치됩니다.
설정을 변경하기 위해 일단 제거.
helm delete elasticsearch

3. Chart 설정 변경(Kibana 설치)



Chart(어플리케이션의 집합)의 설정을 파일에 출력한다.
helm inspect values bitnami/elasticsearch > config.yml

config.yml의 14 행, global 중 kibanaEnabled의 false를 true로 변경
이제 Elasticsearch와 동시에 Kibana가 설치됩니다.
  kibanaEnabled: true

변경된 설정을 반영하면서 Elasticsearch Chart의 설치를 실시. 이 변경으로 Kibana도 동시에 설치됩니다.
> helm install elasticsearch bitnami/elasticsearch -f config.yml

명령 프롬프트 및 PowerShell과 같은 콘솔에서 다음을 입력하십시오.
Kibana의 서비스를 로컬로 포트 포워드합니다.
> kubectl port-forward svc/elasticsearch-kibana 80:80

브라우저에서 localhost:80을 입력하여 Kibana를 엽니다.
데모 데이터를 넣으면 아래의 대시보드를 열람 가능.


Kibana와 Elasticsearch를 개별적으로 컨테이너로 설치하면 컨테이너의 Kibana에서 Elasticsearch를 인식하게 하는 것이 DNS 관계에서 힘들다. Helm을 사용하면 각종 컨테이너가 패키징되어 있어 쉽게 처리할 수 있다.

Ingress를 사용하여 Elasticsearch를 localhost로 공개하고 Kibana는 80 이외의 포트를 사용하여 포트 포워드에서 사용하는 것이 최적 솔루션일까?
Elasticsearch는 계층에서 인식하는 방식이므로 ingress와 궁합이 나쁘다. Ingress에서 80 이외의 포트를 지정할 수 있으면 편리하지만…

Elasticsearch와 Kibana의 OSS 버전만으로는 외부 데이터의 캡처가 어렵기 때문에, Embulk나 Fluentd의 추가에 관해서 추기할지도.
(일반 CSV 캡처는 유상판 Kibana의 기능)

이상

좋은 웹페이지 즐겨찾기