쿠버네티스 클러스터를 구성하는 방법은 온프레미스로 직접 가상환경들을 구축하여 클러스터를 구성하는 것도 가능하지만 AWS, Azure, GCP와 같은 대부분의 클라우드 서비스에서 사용하기 편리하게 구성을 할 수 있다.
구글에서 서비스 중인 Google Cloud Platform에서 쿠버네티스 클러스터를 구성하는 방법에 대해서 정리해보려 한다.
이 부분은 특별한 부분이 없다.
기본적으로 사용 중인 구글 계정을 활용해 가입을 진행하면 기본적으로 90일 동안 사용할 수 있는 $300달러의 크레딧을 제공해주고, 이 기간 동안 쿠버네티스 연습을 하기 위해서는 충분한 양이다.
GCP의 메뉴를 본다면 'Kubernetes Engine'메뉴가 있는 것을 볼 수 있다.
해당 메뉴로 가게 된다면 Kubernetes Engine API를 사용할 것인지를 묻는 메뉴가 나오는데 사용함을 눌러준다.
API를 사용하게 되면 쿠버네티스 클러스터를 구성할 수 있게 된다
Standard와 GKE에서 노드를 관리해주는 autopilot모드를 선택할 수 있는 데 연습을 하기 위한 목적이기 때문에 standard를 선택해준다.
서버의 위치와 사용할 하드웨어 스펙들 같은 클러스터의 기본적인 설정을 할 수 있다.
설정이 완료되면 쿠버네티스 클러스터에 접속을 할 수 있다.
실행되는 터미널에서 아래 명령어를 입력해 노드들을 확인할 수 있다.
kubectl get nodes
마스터노드를 제외한 워커노드들이 조회 되는 것을 확인 할 수 있다.
기본적으로 클라우드 서비스에서는 마스터노드를 관리해주기 때문에 마스터 노드를 제외한 워커노드들만 조회가 된다.
연습으로 쿠버네티스 클러스터에 로드밸런서인 nginx 팟을 실행시켜 보겠다.
kubectl create deploy nx --image=nginx
클러스터 외부에서도 접근을 할 수 있게 설정
kubectl expose deploy nx --type=LoadBalancer --port=80 --target-port=80
pod 정보를 조회
kubectl get pod,svc
pod 정보에 나온 external-ip대로 접속을 해본다면 nginx가 정상적으로 실행 되는 것을 확인할 수 있다.