(사용되지 않음) Helm을 사용하여 Kubernetes 클러스터에 컨테이너 배포

Azure Kubernetes Service를 사용하는 이 문서의 업데이트된 버전은 AKS(Azure Kubernetes Service)에서 Helm을 사용하여 애플리케이션 설치를 참조하세요.

경고

ACS(Azure Container Service)는 더 이상 사용되지 않습니다. 새로운 특징 또는 기능이 ACS에 추가되지 않을 예정입니다. 모든 API, 포털 환경, CLI 명령 및 설명서가 더 이상 사용되지 않는다고 표시됩니다.

2017년에 Kubernetes 관리, 배포 및 운영을 간소화하기 위한 AKS(Azure Kubernetes Service)가 도입되었습니다. Kubernetes 오케스트레이터를 사용하는 경우 2020년 1월 31일까지 AKS로 마이그레이션하세요. 시작하려면 Azure Kubernetes Service로 마이그레이션을 참조하세요.

자세한 내용은 Azure.com의 Azure Container Service 사용 중단 알림을 참조하세요.

Helm은 Kubernetes 애플리케이션을 설치하고 수명 주기를 관리하는 오픈 소스 패키징 도구입니다. Apt-get, Yum 등의 Linux 패키지 관리자와 마찬가지로 Helm은 사전 구성된 Kubernetes 리소스의 패키지인 Kubernetes 차트를 관리하는 데 사용합니다. 이 문서는 Azure Container Service에 배포된 Kubernetes 클러스터에서 Helm을 이용하여 작업하는 방법을 보여줍니다.

Helm에는 두 가지 구성 요소가 있습니다.

  • Helm CLI는 사용자 컴퓨터에서 로컬로 또는 클라우드에서 실행되는 클라이언트입니다

  • Tiller는 Kubernetes 클러스터에서 실행되는 서버로 Kubernetes 애플리케이션의 수명 주기를 관리합니다

필수 구성 요소

Helm 기초

Tiller를 설치하고 애플리케이션을 배포하는 Kubernetes 클러스터에 대한 정보를 보려면 다음 명령을 입력합니다.

kubectl cluster-info 

kubectl cluster-info

Helm을 설치한 후 다음 명령을 입력하여 Kubernetes 클러스터에 Tiller를 설치합니다.

helm init --upgrade

설치가 성공적으로 완료되면 다음과 같은 출력이 표시됩니다.

Tiller 설치

리포지토리에서 사용 가능한 모든 Helm 차트를 보려면 다음 명령을 입력합니다.

helm search 

다음과 같은 출력이 표시됩니다.

Helm 검색

차트를 업데이트하여 최신 버전을 가져오려면 다음을 입력합니다.

helm repo update 

Nginx 수신 컨트롤러 차트 배포

Nginx 수신 컨트롤러 차트를 배포하려면 단일 명령을 입력합니다.

helm install stable/nginx-ingress 

수신 컨트롤러 배포

클러스터에서 실행되는 모든 서비스를 보려면 kubectl get svc를 입력합니다. IP 주소가 수신 컨트롤러에 할당된 것을 확인할 수 있습니다. (할당이 진행 중인 <pending>동안 . 완료하는 데 몇 분 정도 걸립니다.)

IP 주소가 할당된 후 Nginx 백엔드가 실행 중인 것을 보려면 외부 IP 주소 값으로 이동합니다.

수신 IP 주소

클러스터에 설치된 차트 목록을 보려면 다음을 입력합니다.

helm list 

명령을 helm ls로 줄일 수 있습니다.

MariaDB 차트 및 클라이언트 배포

이제 MariaDB 차트 및 MariaDB 클라이언트를 배포하여 데이터베이스에 연결합니다.

MariaDB 차트를 배포하려면 다음 명령을 입력합니다.

helm install --name v1 stable/mariadb

여기서 --name은 릴리스에 사용되는 태그입니다.

배포가 실패할 경우 helm repo update를 실행하고 다시 시도합니다.

클러스터에 배포된 모든 차트를 보려면 다음을 입력합니다.

helm list

클러스터에서 실행 중인 모든 배포를 보려면 다음을 입력합니다.

kubectl get deployments 

마지막으로 Pod를 실행하여 클라이언트에 액세스하려면 다음을 입력합니다.

kubectl run v1-mariadb-client --rm --tty -i --image bitnami/mariadb --command -- bash  

클라이언트에 연결하려면 다음 명령을 입력하고 v1-mariadb를 배포 이름으로 바꿉니다.

sudo mysql –h v1-mariadb

이제 표준 SQL 명령을 사용하여 데이터베이스, 테이블 등을 만들 수 있습니다. 예를 들어 Create DATABASE testdb1; 빈 데이터베이스를 만듭니다.

다음 단계

  • Kubernetes 차트 관리에 대한 자세한 내용을 보려면 Helm 설명서를 참조하십시오.