728x90
반응형

[QwikLabs] 2021 Google Cloud Study Jam - Kubernetes Engine: Qwik Start

 

1. GKE 클러스터 만들기

클러스터는 1개 이상의 클러스터 마스터 머신과 노드라는 다수의 작업자 머신으로 구성된다.
노드란 클러스터를 구성하기 위해 필요한 Kubernetes 프로세스를 실행하는 Compute Engine VM 인스턴스이다.

Cloud Shell 을 통해 GKE 클러스터 만들기

gcloud container clusters create [CLUSTER-NAME]

클러스터가 생성되는 시간이 조금 걸릴 수 있다.

클러스터 생성 결과

클러스터가 생성되면 위와 같이 생성된 클러스터를 확인할 수 있다.

2. 클러스터의 사용자 인증 정보 얻기

클러스터를 만든 후 클러스터와 상호작용하려면 사용자 인증 정보가 필요하다.
따라서, 사용자의 인증 정보를 가져온다.

gcloud container clusters get-credentials [CLUSTER-NAME]

실행 결과

Fetching cluster endpoint and auth data.
kubeconfig entry generated for my-cluster.

 

3. 클러스터에 애플리케이션 배포

이제 기본적인 설정을 했으니 간단한 애플리케이션을 실행시켜보자.
실습과정에서 주어진 이미지를 통해 deployment 를 생성해보았다.

kubectl create deployment hello-server --image=gcr.io/google-samples/hello-app:1.0

생성된 deployment 를 확인해보자.

$ kubectl get deployment
NAME           READY   UP-TO-DATE   AVAILABLE   AGE
hello-server   1/1     1            1           18s

정상적으로 생성된 것을 확인할 수 있었다.

그리고 외부 IP 주소를 통해 접속을 허용할 수 있게 해준다.
애플리케이션을 외부 트래픽에 노출할 수 있는 Kubernetes 리소스인 Kubernetes Service를 생성하려면 다음 명령어를 실행하면 된다.

kubectl expose deployment hello-server --type=LoadBalancer --port 8080

kubectl expose 명령어를 통해 서비스 오브젝트를 생성해준다.
이와 관련된 자세한 내용은 쿠버네티스 document 에서 확인해볼 수 있다.

kubernetes.io/ko/docs/tutorials/stateless-application/expose-external-ip-address/

 

외부 IP 주소를 노출하여 클러스터의 애플리케이션에 접속하기

이 페이지에서는 외부 IP 주소를 노출하는 쿠버네티스 서비스 오브젝트를 생성하는 방법에 대해 설명한다. 시작하기 전에 kubectl을 설치한다. Google Kubernetes Engine 또는 Amazon Web Services와 같은 클라

kubernetes.io

잘 생성되었는지 확인해보자

$ kubectl get service
NAME           TYPE           CLUSTER-IP     EXTERNAL-IP     PORT(S)          AGE
hello-server   LoadBalancer   10.3.255.225   35.188.146.76   8080:32474/TCP   40s
kubernetes     ClusterIP      10.3.240.1     <none>          443/TCP          5m14s

서비스를 확인해보니 클러스터 IP 와 외부 IP 주소 그리고 포트를 확인할 수 있었다.

그럼 외부 IP 주소와 포트를 통해 접속해보자.

http://[EXTERNAL IP]:[PORT]

해당 주소로 접속하게 되면 다음과 같이 결과를 확인할 수 있었다.

애플리케이션 접속 결과

클러스터 삭제

마지막으로 생성한 클러스터를 삭제하는 방법이다.
cloud shell 에서 다음 명령어를 통해 삭제할 수 있었다.

gcloud container clusters delete [CLUSTER-NAME]

삭제 역시 생성과 같은 방법으로 create 대신 delete 를 통해 삭제해줄 수 있다.
클러스터를 삭제하고 플랫폼에서 클러스터가 사라진 것을 확인할 수 있었다.

클러스터 삭제 완료

 

이렇게 구글 클라우드 플랫폼을 통해서 쿠버네티스 엔진을 통해 클러스터를 생성하고 간단한 애플리케이션을 배포
그리고 외부 IP 주소를 통해 접속해보는 과정까지 간단하게 실습해보았다.
간단한 실습이지만 앞으로의 과정을 위해 필요한 준비 과정이라고 생각하고 열심히 따라해보고 정리해봤다.

728x90
반응형
복사했습니다!