본문 바로가기
CSP (Cloud Service Provider)/GCP

Google Kubernetis Engine 구성

by BTC_안민규 2022. 5. 27.

gke를 이용하여 클러스터 생성

gcloud auth login
gcloud config set project [projectID]
gcloud config set compute/region asia-northeast3
gcloud config set compute/zone asia-northeast3-a​

 

해당 설정을 끝내고 config list 명령어를 사용했을 때

[accessibility]
screen_reader = True
[component_manager]
disable_update_check = True
[compute]
gce_metadata_read_timeout_sec = 30
[core]
account = your@account.com
disable_usage_reporting = True
project = yourproject-1
[metrics]
environment = devshell

위와 같은 출력이 나오면 기본적인 설정은 완료입니다.

클러스터를 생성하기 위한 리전과 존을 설정해야 합니다

gcloud config set compute/region asia-northeast3
gcloud config set compute/zone asia-northeast3-a

위에 있는 명령어 두개를 이용하여 한국의 가용영역 A에 클러스터를 생성할 수 있도록 잡아두었습니다.

......
[compute]
gce_metadata_read_timeout_sec = 30
region = asia-northeast3
zone = asia-northeast3-a
......
 

config list에 리전과 존이 추가되어있다면 성공적으로 설정이 되었다는 겁니다.

gsutil -m cp -r gs://spls/gsp053/orchestrate-with-kubernetes .
cd orchestrate-with-kubernetes/kubernetes

gcloud container clusters create gketest --num-nodes 3 --scopes "https://www.googleapis.com/auth/projecthosting,storage-rw"

컨테이너와 배포를 만들고 실행하기 위한 샘플코드를 다운받습니다.

설정된 zone에 노드가 3개인 클러스터를 생성해보겠습니다.

WARNING: Starting in January 2021, clusters will use the Regular release channel by default when `--cluster-version`, `--release-channel`, `--no-enable-autoupgrade`, and `--no-enable-autorepair` flags are not specified.
WARNING: Currently VPC-native is the default mode during cluster creation for versions greater than 1.21.0-gke.1500. To create advanced routes based clusters, please pass the `--no-enable-ip-alias` flag
WARNING: Starting with version 1.18, clusters will have shielded GKE nodes by default.
WARNING: Your Pod address range (`--cluster-ipv4-cidr`) can accommodate at most 1008 node(s).
WARNING: Starting with version 1.19, newly created clusters and node-pools will have COS_CONTAINERD as the default node image when no image type is specified.

아래의 경고창을 확인하실 수 있지만 당장은 클러스터를 생성하고 테스트해보는 단계에서는 크게 중요한 부분이 아니기때문에 넘어가도록 하겠습니다.

kubeconfig entry generated for gketest.
NAME: gketest
LOCATION: asia-northeast3-a
MASTER_VERSION: 1.20.10-gke.1600
MASTER_IP: 34.64.172.168
MACHINE_TYPE: e2-medium
NODE_VERSION: 1.20.10-gke.1600
NUM_NODES: 3
STATUS: RUNNING

생성이 완료되면 어떤 클러스터를 생성했는지 확인하실 수 있습니다.

cloud console 에서도 클러스터가 생성되었음을 확인하실 수 있습니다.

$ kubectl apply -f deployments/auth.yaml
deployment.apps/auth created

kubectl apply를 이용하여 받았던 샘플 yaml을 배포 객체로 만듭니다.

$ kubectl get deployments
NAME   READY   UP-TO-DATE   AVAILABLE   AGE
auth   1/1     1            1           43s

 

$ kubectl get nodes
NAME                                     STATUS   ROLES    AGE   VERSION
gke-gketest-default-pool-b1bd9d51-f4pb   Ready    <none>   13m   v1.20.10-gke.1600
gke-gketest-default-pool-b1bd9d51-n4m3   Ready    <none>   13m   v1.20.10-gke.1600
gke-gketest-default-pool-b1bd9d51-p09f   Ready    <none>   13m   v1.20.10-gke.1600

댓글