{GCP GKE}ノードプールの追加と管理

 


https://cloud.google.com/kubernetes-engine/docs/how-to/node-pools?hl=ja

ノードプールは、クラスタ内で同じ構成を持つノードのグループです。
ノードプールは、NodeConfig の仕様を使用します。
プール内の各ノードには Kubernetes ノードラベル cloud.google.com/gke-nodepool が設定されます。
これには値としてノードプールの名前が指定されます。

クラスタを作成すると、指定したノード数とノードタイプを使用して、クラスタの最初のノードプールが作成されます。
その後、別のサイズやタイプのノードプールをクラスタに追加できます。
ノードプール内のノードはすべて同一になります。

 

-- 1. 前作業

gcloud init
gcloud auth list

gcloud --version

gcloud projects create project01-9999999 \
--name="project01"

gcloud config list
gcloud config set project project01-9999999
gcloud config set compute/region asia-northeast1 --quiet
gcloud config set compute/zone asia-northeast1-a --quiet

gcloud beta billing accounts list
gcloud beta billing projects link project01-9999999 --billing-account=111111-111111-111111

gcloud services enable compute.googleapis.com --project project01-9999999

gcloud components update


-- 2. Google Kubernetes Engine API を有効化

gcloud services list --enabled
gcloud services list --available

 

gcloud services enable container.googleapis.com \
--project project01-9999999

 

-- 3. kubectlインストール

curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/darwin/amd64/kubectl"

chmod +x ./kubectl

sudo mv ./kubectl /usr/local/bin/kubectl
sudo chown root: /usr/local/bin/kubectl

kubectl version --client

 

-- 4. GKE Standard クラスタの作成

gcloud compute machine-types list

 


gcloud container clusters create gke01 \
--disk-size=10 \
--disk-type=pd-standard \
--num-nodes=1 \
--machine-type=e2-micro \
--spot \
--zone=asia-northeast1-a \
--node-locations=asia-northeast1-a

 

gcloud container clusters list


-- 5. gke-gcloud-auth-pluginのインストール


gcloud components remove gke-gcloud-auth-plugin

gcloud components install gke-gcloud-auth-plugin


-- 6. クラスターに接続する


export USE_GKE_GCLOUD_AUTH_PLUGIN=True
gcloud components update

gcloud container clusters get-credentials gke01 --zone=asia-northeast1-a --project=project01-9999999


kubectl get nodes
kubectl get pods -n kube-system

 

-- 7. Standard クラスタにノードプールを追加


gcloud container node-pools create pool01 \
--cluster gke01 \
--num-nodes 1 


gcloud container node-pools list --cluster gke01

 

-- 8. ノードプールをスケーリングする


gcloud container clusters resize gke01 \
--node-pool pool01 \
--num-nodes 2

gcloud container node-pools list --cluster gke01


gcloud container node-pools describe pool01 \
--cluster gke01

 

-- 9. クリーンアップ


gcloud container node-pools delete pool01 \
--cluster gke01

gcloud container node-pools list --cluster gke01

 

gcloud container clusters delete gke01 \
--zone asia-northeast1-a \
--quiet

 


gcloud projects list

gcloud projects delete project01-9999999


gcloud beta billing projects unlink project01-9999999