이 포스팅은 Google Cloud에서 제공하는 'Kubernetes in Google Cloud' 교육을 기반으로 실습하고 내용을 작성하였습니다.
Google Kubernetes Engine(GKE)란?
- 컨테이너화된 애플리케이션을 배포, 관리 및 확장할 수 있는 관리형 환경을 제공
- 컨테이너 클러스터를 형성하도록 그룹화된 여러 머신(Compute Engine 인스턴스)으로 구성
이번 실습에서는 GKE를 사용하여 컨테이너를 생성하고 애플리케이션을 배포해 보는 시간을 가졌습니다.
Step1. 기본 컴퓨팅 영역 설정
컴퓨팅 영역 클러스터와 리소스가 존재하는 리전 내 대략적인 위치를 의미합니다.
예) us-central1-a는 us-central1 리전에 속한 영역입니다.
1. Shell에서 리전과 영역을 설정
gcloud config set compute/region assigned_at_lab_start
gcloud config set compute/zone assigned_at_lab_start
Step2. GKE 클러스터 생성
GKE 클러스터는 1개 이상의 클러스터 마스터 머신과 노드(Computer Engine VM 인스턴스)라는 여러 작업자 머신으로 구성됩니다.
gcloud container clusters create --machine-type=e2-medium --zone=assigned_at_lab_start lab-cluster
출력 결과는 다음과 같습니다.
NAME: lab-cluster
LOCATION: assigned_at_lab_start
MASTER_VERSION: 1.22.8-gke.202
MASTER_IP: 34.67.240.12
MACHINE_TYPE: e2-medium
NODE_VERSION: 1.22.8-gke.202
NUM_NODES: 3
STATUS: RUNNING
Step3. 사용자 인증 정보 얻기
클러스터의 사용자 인증 정보를 얻어와야 합니다.
gcloud container clusters get-credentials lab-cluster
Step4. 클러스터에 애플리케이션 배포
클러스터의 사용자 인증 정보를 얻어야 합니다.
hello-app 컨테이너 이미지에서 새 배포 hello-server를 생성합니다.
kubectl create deployment hello-server --image=gcr.io/google-samples/hello-app:1.0
이 명령어를 통해 hello-server를 나타내는 배포 객체가 생성됩니다.
- --image는 배포할 컨테이너 이미지를 지정합니다.
- gcr.io/google-samples/hello-app:1.0: 가져올 이미지 버전을 나타냄
참고
GKE 클러스터 아키텍처 | Google Kubernetes Engine(GKE) | Google Cloud
GKE 클러스터 아키텍처를 살펴봅니다.
cloud.google.com
'Cloud' 카테고리의 다른 글
[GCP/Kubernetes] Kubernetes를 통해 클라우드 조정하기 (0) | 2023.05.11 |
---|---|
[GCP/Kubernetes] Docker 컨테이너 생성하기 (0) | 2023.05.11 |