์ด ํ์ด์ง์์๋ ํ์ค Google Kubernetes Engine(GKE) ํด๋ฌ์คํฐ๋ฅผ ์๋ ํ์ฅํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํฉ๋๋ค. ํด๋ฌ์คํฐ ์๋ ํ์ฅ ์ฒ๋ฆฌ์ ์๋ ๋ฐฉ์์ ์์๋ณด๋ ค๋ฉด ํด๋ฌ์คํฐ ์๋ ํ์ฅ ์ฒ๋ฆฌ๋ฅผ ์ฐธ์กฐํ์ธ์.
Autopilot ํด๋ฌ์คํฐ๋ฅผ ์ฌ์ฉํ๋ฉด ๋ ธ๋ ํ์ด ๋ ธ๋ ์๋ ํ๋ก๋น์ ๋์ ํตํด ์๋์ผ๋ก ํ๋ก๋น์ ๋๋๊ณ ์ํฌ๋ก๋ ์๊ตฌ์ฌํญ์ด ์ถฉ์กฑ๋๋๋ก ์๋์ผ๋ก ํ์ฅ๋๋ฏ๋ก ๋ ธ๋ ํ๋ก๋น์ ๋์ด๋ ๋ ธ๋ ํ ๊ด๋ฆฌ์ ์ ๊ฒฝ์ ์ฐ์ง ์์๋ ๋ฉ๋๋ค.
ํด๋ฌ์คํฐ ์๋ ํ์ฅ ์ฒ๋ฆฌ ์ฌ์ฉ
๋ค์ ์น์ ์์๋ ํด๋ฌ์คํฐ ์๋ ํ์ฅ ์ฒ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํฉ๋๋ค.
์๋ ํ์ฅ์ ์ฌ์ฉํ๋ ํด๋ฌ์คํฐ ๋ง๋ค๊ธฐ
Google Cloud CLI ๋๋ Google Cloud ์ฝ์์ ์ฌ์ฉํ์ฌ ์๋ ํ์ฅ์ด ์ฌ์ฉ ์ค์ ๋ ํด๋ฌ์คํฐ๋ฅผ ๋ง๋ค ์ ์์ต๋๋ค.
gcloud
์๋ ํ์ฅ์ด ์ฌ์ฉ ์ค์ ๋ ํด๋ฌ์คํฐ๋ฅผ ๋ง๋ค๋ ค๋ฉด --enable-autoscaling
ํ๋๊ทธ๋ฅผ ์ฌ์ฉํ๊ณ --min-nodes
๋ฐ --max-nodes
๋ฅผ ์ง์ ํฉ๋๋ค.
gcloud container clusters create CLUSTER_NAME \
--enable-autoscaling \
--num-nodes NUM_NODES \
--min-nodes MIN_NODES \
--max-nodes MAX_NODES \
--location=CONTROL_PLANE_LOCATION
๋ค์์ ๋ฐ๊ฟ๋๋ค.
CLUSTER_NAME
: ๋ง๋ค ํด๋ฌ์คํฐ์ ์ด๋ฆNUM_NODES
: ๊ฐ ์์น์์ ๋ง๋ค ๋ ธ๋ ์MIN_NODES
: ์์ญ๋น ์ง์ ๋ ๋ ธ๋ ํ์์ ์๋์ผ๋ก ํ์ฅ๋๋ ์ต์ ๋ ธ๋ ์. GKE ๋ฒ์ 1.24 ์ด์์์ ์ ์ฒด ๋ ธ๋ ํ์ ์ต์ ๋ ธ๋ ์๋ฅผ ์ง์ ํ๋ ค๋ฉด--total-min-nodes
๋ฅผ ์ฌ์ฉํฉ๋๋ค.--total-min-nodes
๋ฐ--total-max-nodes
ํ๋๊ทธ๋ฅผ--min-nodes
๋ฐ--max-nodes
ํ๋๊ทธ์ ํจ๊ป ์ฌ์ฉํ ์ ์์ต๋๋ค.MAX_NODES
: ์์ญ๋น ์ง์ ๋ ๋ ธ๋ ํ์์ ์๋์ผ๋ก ํ์ฅ๋๋ ์ต๋ ๋ ธ๋ ์. GKE ๋ฒ์ 1.24 ์ด์์์ ์ ์ฒด ๋ ธ๋ ํ์ ์ต๋ ๋ ธ๋ ์๋ฅผ ์ง์ ํ๋ ค๋ฉด--total-max-nodes
๋ฅผ ์ฌ์ฉํฉ๋๋ค.--total-min-nodes
๋ฐ--total-max-nodes
ํ๋๊ทธ๋ฅผ--min-nodes
๋ฐ--max-nodes
ํ๋๊ทธ์ ํจ๊ป ์ฌ์ฉํ ์ ์์ต๋๋ค.CONTROL_PLANE_LOCATION
: ํด๋ฌ์คํฐ์ ์ปจํธ๋กค ํ๋ ์ธ์ ๋ํ Compute Engine ์์น. ๋ฆฌ์ ํด๋ฌ์คํฐ์ ๊ฒฝ์ฐ ๋ฆฌ์ ๋๋ ์์ญ ํด๋ฌ์คํฐ์ ๊ฒฝ์ฐ ์์ญ์ ์ ๊ณตํฉ๋๋ค.
์์: ๋ ธ๋ ์๋ ํ์ฅ์ด ์ฌ์ฉ ์ค์ ๋๊ณ ์ต์ ๋ฐ ์ต๋ ๋ ธ๋๊ฐ ์ง์ ๋ ํด๋ฌ์คํฐ ๋ง๋ค๊ธฐ
๋ค์ ๋ช ๋ น์ด๋ ๋ฆฌ์ ์ 3๊ฐ ์์ญ์ ๊ฐ๊ฐ 30๊ฐ์ฉ ์ด 90๊ฐ์ ๋ ธ๋๊ฐ ์ง์ ๋ ํด๋ฌ์คํฐ๋ฅผ ๋ง๋ญ๋๋ค. ๋ ธ๋ ์๋ ํ์ฅ์ด ์ฌ์ฉ ์ค์ ๋๊ณ ํด๋ฌ์คํฐ ๋ก๋๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ ธ๋ ์๋ฅผ ์กฐ์ ํฉ๋๋ค. ํด๋ฌ์คํฐ ์๋ ํ์ฅ ์ฒ๋ฆฌ๋ ๊ธฐ๋ณธ ๋ ธ๋ ํ ํฌ๊ธฐ๋ฅผ ๋ ธ๋ 15๊ฐ๋ก ์ค์ด๊ฑฐ๋ ๋ ธ๋ ํ์ ์์ญ๋น ์ต๋ 50๊ฐ์ ๋ ธ๋๋ก ๋๋ฆด ์ ์์ต๋๋ค.
gcloud container clusters create my-cluster --enable-autoscaling \
--num-nodes=30 \
--min-nodes=15 --max-nodes=50 \
--location=us-central
์์: ๋ ธ๋ ์๋ ํ์ฅ์ด ์ฌ์ฉ ์ค์ ๋๊ณ ์ด ๋ ธ๋ ์๊ฐ ์ง์ ๋ ํด๋ฌ์คํฐ ๋ง๋ค๊ธฐ
๋ค์ ๋ช ๋ น์ด๋ ๋ฆฌ์ ์ 3๊ฐ ์์ญ์ ๊ฐ๊ฐ 10๊ฐ์ฉ ์ด 30๊ฐ์ ๋ ธ๋๊ฐ ์ง์ ๋ ํด๋ฌ์คํฐ๋ฅผ ๋ง๋ญ๋๋ค. ๋ ธ๋ ์๋ ํ์ฅ์ด ์ฌ์ฉ ์ค์ ๋๊ณ ํด๋ฌ์คํฐ ๋ก๋๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ ธ๋ ์๋ฅผ ์กฐ์ ํฉ๋๋ค. ์ด ์์์์๋ ์์ญ ๊ฐ ๋ถ์ฐ์ ๊ด๊ณ์์ด ํด๋ฌ์คํฐ์ ์ด ํฌ๊ธฐ๊ฐ 10~60๊ฐ ์ฌ์ด์ ๋ ธ๋์ผ ์ ์์ต๋๋ค.
gcloud container clusters create my-cluster --enable-autoscaling \
--num-nodes 10 \
--location us-central1 \
--total-min-nodes 10 --total-max-nodes 60
์ฝ์
๊ธฐ๋ณธ ๋ ธ๋ ํ์ ์๋ ํ์ฅ์ด ์ฌ์ฉ ์ค์ ๋ ์ ํด๋ฌ์คํฐ๋ฅผ ๋ง๋ค๋ ค๋ฉด ๋ค์ ์๋ด๋ฅผ ๋ฐ๋ฅด์ธ์.
Google Cloud ์ฝ์์์ Kubernetes ํด๋ฌ์คํฐ ๋ง๋ค๊ธฐ ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
์ํ๋ ๋๋ก ํด๋ฌ์คํฐ๋ฅผ ๊ตฌ์ฑํฉ๋๋ค.
ํ์์ฐฝ์ ๋ ธ๋ ํ์์ default-pool์ ํด๋ฆญํฉ๋๋ค.
์๋ ํ์ฅ ์ฌ์ฉ ์ค์ ์ฒดํฌ๋ฐ์ค๋ฅผ ์ ํํฉ๋๋ค.
์ต์ ๋ ธ๋ ์์ ์ต๋ ๋ ธ๋ ์ ํ๋์ ๊ฐ์ ์ํ๋ ๋๋ก ๋ณ๊ฒฝํฉ๋๋ค.
๋ง๋ค๊ธฐ๋ฅผ ํด๋ฆญํฉ๋๋ค.
์๋ ํ์ฅ์ ์ฌ์ฉํ๋ ๋ ธ๋ ํ ์ถ๊ฐ
gcloud CLI ๋๋ Google Cloud ์ฝ์์ ์ฌ์ฉํ์ฌ ์๋ ํ์ฅ์ด ์ฌ์ฉ ์ค์ ๋ ๋ ธ๋ ํ์ ๋ง๋ค ์ ์์ต๋๋ค.
gcloud
์๋ ํ์ฅ์ ์ฌ์ฉํ๋ ๋ ธ๋ ํ์ ๊ธฐ์กด ํด๋ฌ์คํฐ์ ์ถ๊ฐํ๋ ค๋ฉด ๋ค์ ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํฉ๋๋ค.
gcloud container node-pools create POOL_NAME \
--cluster=CLUSTER_NAME \
--enable-autoscaling \
--min-nodes=MIN_NODES \
--max-nodes=MAX_NODES \
--location=CONTROL_PLANE_LOCATION
๋ค์์ ๋ฐ๊ฟ๋๋ค.
POOL_NAME
: ์ํ๋ ๋ ธ๋ ํ์ ์ด๋ฆCLUSTER_NAME
: ๋ ธ๋ ํ์ด ์์ฑ๋๋ ํด๋ฌ์คํฐ์ ์ด๋ฆMIN_NODES
: ์์ญ๋น ์ง์ ๋ ๋ ธ๋ ํ์์ ์๋์ผ๋ก ํ์ฅ๋๋ ์ต์ ๋ ธ๋ ์. GKE ๋ฒ์ 1.24 ์ด์์์ ์ ์ฒด ๋ ธ๋ ํ์ ์ต์ ๋ ธ๋ ์๋ฅผ ์ง์ ํ๋ ค๋ฉด--total-min-nodes
๋ฅผ ์ฌ์ฉํฉ๋๋ค.--total-min-nodes
๋ฐ--total-max-nodes
ํ๋๊ทธ๋ฅผ--min-nodes
๋ฐ--max-nodes
ํ๋๊ทธ์ ํจ๊ป ์ฌ์ฉํ ์ ์์ต๋๋ค.MAX_NODES
: ์์ญ๋น ์ง์ ๋ ๋ ธ๋ ํ์์ ์๋์ผ๋ก ํ์ฅ๋๋ ์ต๋ ๋ ธ๋ ์. GKE ๋ฒ์ 1.24 ์ด์์์ ์ ์ฒด ๋ ธ๋ ํ์ ์ต๋ ๋ ธ๋ ์๋ฅผ ์ง์ ํ๋ ค๋ฉด--total-max-nodes
๋ฅผ ์ฌ์ฉํฉ๋๋ค.--total-min-nodes
๋ฐ--total-max-nodes
ํ๋๊ทธ๋ฅผ--min-nodes
๋ฐ--max-nodes
ํ๋๊ทธ์ ํจ๊ป ์ฌ์ฉํ ์ ์์ต๋๋ค.CONTROL_PLANE_LOCATION
: ํด๋ฌ์คํฐ์ ์ปจํธ๋กค ํ๋ ์ธ์ ๋ํ Compute Engine ์์น. ๋ฆฌ์ ํด๋ฌ์คํฐ์ ๊ฒฝ์ฐ ๋ฆฌ์ ๋๋ ์์ญ ํด๋ฌ์คํฐ์ ๊ฒฝ์ฐ ์์ญ์ ์ ๊ณตํฉ๋๋ค.
์์: ๋ ธ๋ ์๋ ํ์ฅ์ด ์ฌ์ฉ ์ค์ ๋ ๋ ธ๋ ํ ์ถ๊ฐ
๋ค์ ๋ช ๋ น์ด๋ ๋ ธ๋ ํ์ ์ต๋ 5๊ฐ ๋ ธ๋์ ์ต์ 1๊ฐ ๋ ธ๋๋ก ํ์ฅํ๋ ๋ ธ๋ ์๋ ํ์ฅ์ ์ฌ์ฉํ์ฌ ๋ ธ๋ ํ์ ๋ง๋ญ๋๋ค.
gcloud container node-pools create my-node-pool \
--cluster my-cluster \
--enable-autoscaling \
--min-nodes 1 --max-nodes 5 \
--location us-central1-c
์ฝ์
์๋ ํ์ฅ์ ์ฌ์ฉํ๋ ๋ ธ๋ ํ์ ๊ธฐ์กด ํด๋ฌ์คํฐ์ ์ถ๊ฐํ๋ ค๋ฉด ๋ค์ ์๋ด๋ฅผ ๋ฐ๋ฅด์ธ์.
Google Cloud ์ฝ์์์ Google Kubernetes Engine ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
ํด๋ฌ์คํฐ ๋ชฉ๋ก์์ ์์ ํ๋ ค๋ ํด๋ฌ์คํฐ ์ด๋ฆ์ ํด๋ฆญํฉ๋๋ค.
add_box ๋ ธ๋ ํ ์ถ๊ฐ๋ฅผ ํด๋ฆญํฉ๋๋ค.
๋ ธ๋ ํ์ ์ํ๋ ๋๋ก ๊ตฌ์ฑํฉ๋๋ค.
ํฌ๊ธฐ์์ ์๋ ํ์ฅ ์ฌ์ฉ ์ค์ ์ฒดํฌ๋ฐ์ค๋ฅผ ์ ํํฉ๋๋ค.
์ต์ ๋ ธ๋ ์์ ์ต๋ ๋ ธ๋ ์ ํ๋์ ๊ฐ์ ์ํ๋ ๋๋ก ๋ณ๊ฒฝํฉ๋๋ค.
๋ง๋ค๊ธฐ๋ฅผ ํด๋ฆญํฉ๋๋ค.
๊ธฐ์กด ๋ ธ๋ ํ์ ์๋ ํ์ฅ ์ฌ์ฉ ์ค์
gcloud CLI ๋๋ Google Cloud ์ฝ์์ ์ฌ์ฉํ์ฌ ๊ธฐ์กด ๋ ธ๋ ํ์ ์๋ ํ์ฅ์ ์ฌ์ฉ ์ค์ ํ ์ ์์ต๋๋ค.
gcloud
๊ธฐ์กด ๋ ธ๋ ํ์ ์๋ ํ์ฅ์ ์ฌ์ฉ ์ค์ ํ๋ ค๋ฉด ๋ค์ ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํฉ๋๋ค.
gcloud container clusters update CLUSTER_NAME \
--enable-autoscaling \
--node-pool=POOL_NAME \
--min-nodes=MIN_NODES \
--max-nodes=MAX_NODES \
--location=CONTROL_PLANE_LOCATION
๋ค์์ ๋ฐ๊ฟ๋๋ค.
CLUSTER_NAME
: ์ ๋ฐ์ดํธํ ํด๋ฌ์คํฐ์ ์ด๋ฆPOOL_NAME
: ์ํ๋ ๋ ธ๋ ํ์ ์ด๋ฆ. ๋ ธ๋ ํ์ด ํ๋๋ฟ์ด๋ฉดdefault-pool
์ ๊ฐ์ผ๋ก ์ ๊ณตํฉ๋๋ค.MIN_NODES
: ์์ญ๋น ์ง์ ๋ ๋ ธ๋ ํ์์ ์๋์ผ๋ก ํ์ฅ๋๋ ์ต์ ๋ ธ๋ ์. GKE ๋ฒ์ 1.24 ์ด์์์ ์ ์ฒด ๋ ธ๋ ํ์ ์ต์ ๋ ธ๋ ์๋ฅผ ์ง์ ํ๋ ค๋ฉด--total-min-nodes
๋ฅผ ์ฌ์ฉํฉ๋๋ค.--total-min-nodes
๋ฐ--total-max-nodes
ํ๋๊ทธ๋ฅผ--min-nodes
๋ฐ--max-nodes
ํ๋๊ทธ์ ํจ๊ป ์ฌ์ฉํ ์ ์์ต๋๋ค.MAX_NODES
: ์์ญ๋น ์ง์ ๋ ๋ ธ๋ ํ์์ ์๋์ผ๋ก ํ์ฅ๋๋ ์ต๋ ๋ ธ๋ ์. GKE ๋ฒ์ 1.24 ์ด์์์ ์ ์ฒด ๋ ธ๋ ํ์ ์ต๋ ๋ ธ๋ ์๋ฅผ ์ง์ ํ๋ ค๋ฉด--total-max-nodes
๋ฅผ ์ฌ์ฉํฉ๋๋ค.--total-min-nodes
๋ฐ--total-max-nodes
ํ๋๊ทธ๋ฅผ--min-nodes
๋ฐ--max-nodes
ํ๋๊ทธ์ ํจ๊ป ์ฌ์ฉํ ์ ์์ต๋๋ค.CONTROL_PLANE_LOCATION
: ํด๋ฌ์คํฐ์ ์ปจํธ๋กค ํ๋ ์ธ์ ๋ํ Compute Engine ์์น. ๋ฆฌ์ ํด๋ฌ์คํฐ์ ๊ฒฝ์ฐ ๋ฆฌ์ ๋๋ ์์ญ ํด๋ฌ์คํฐ์ ๊ฒฝ์ฐ ์์ญ์ ์ ๊ณตํฉ๋๋ค.
์ฝ์
๊ธฐ์กด ๋ ธ๋ ํ์ ์๋ ํ์ฅ์ ์ฌ์ฉ ์ค์ ํ๋ ค๋ฉด ๋ค์ ์๋ด๋ฅผ ๋ฐ๋ฅด์ธ์.
Google Cloud ์ฝ์์์ Google Kubernetes Engine ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
ํด๋ฌ์คํฐ ๋ชฉ๋ก์์ ์์ ํ๋ ค๋ ํด๋ฌ์คํฐ ์ด๋ฆ์ ํด๋ฆญํฉ๋๋ค.
๋ ธ๋ ํญ์ ํด๋ฆญํฉ๋๋ค.
๋ ธ๋ ํ ์๋์์ ์์ ํ ๋ ธ๋ ํ์ ์ด๋ฆ์ ํด๋ฆญํ ๋ค์ edit ์์ ์ ํด๋ฆญํฉ๋๋ค.
ํฌ๊ธฐ์์ ์๋ ํ์ฅ ์ฌ์ฉ ์ค์ ์ฒดํฌ๋ฐ์ค๋ฅผ ์ ํํฉ๋๋ค.
์ต์ ๋ ธ๋ ์์ ์ต๋ ๋ ธ๋ ์ ํ๋์ ๊ฐ์ ์ํ๋ ๋๋ก ๋ณ๊ฒฝํฉ๋๋ค.
์ ์ฅ์ ํด๋ฆญํฉ๋๋ค.
๊ธฐ์กด ๋ ธ๋ ํ์ ์๋ ํ์ฅ์ด ์ฌ์ฉ ์ค์ ๋์ด ์๋์ง ํ์ธ
ํด๋ฌ์คํฐ๊ฐ Google Cloud CLI ๋๋ Google Cloud ์ฝ์๋ก ์๋ ํ์ฅ์ ์ฌ์ฉ ์ค์ธ์ง ํ์ธํฉ๋๋ค.
gcloud
ํด๋ฌ์คํฐ์ ๋ ธ๋ ํ์ ์ค๋ช ํฉ๋๋ค.
gcloud container node-pools describe NODE_POOL_NAME --cluster=CLUSTER_NAME |grep autoscaling -A 1
๋ค์์ ๋ฐ๊ฟ๋๋ค.
POOL_NAME
: ์ ํํ ์ ๋ ธ๋ ํ์ ์ด๋ฆCLUSTER_NAME
: ํด๋ฌ์คํฐ์ ์ด๋ฆ
์๋ ํ์ฅ์ด ์ฌ์ฉ ์ค์ ๋ ๊ฒฝ์ฐ ์ถ๋ ฅ์ด ๋ค์๊ณผ ๋น์ทํฉ๋๋ค.
autoscaling:
enabled: true
์ฝ์
Google Cloud ์ฝ์์์ Google Kubernetes Engine ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
ํด๋ฌ์คํฐ ๋ชฉ๋ก์์ ํ์ธํ ํด๋ฌ์คํฐ ์ด๋ฆ์ ํด๋ฆญํฉ๋๋ค.
๋ ธ๋ ํญ์ ํด๋ฆญํฉ๋๋ค.
๋ ธ๋ ํ์์ ๋ ธ๋ ํ
Autoscalling
์ํ๋ฅผ ํ์ธํฉ๋๋ค.
์ฌ์ฉ๋์ง ์์ ์์ฝ์ ์ต์ ํ์ ์ฐ์ ์์๋ฅผ ๋๋ ๋ ธ๋ ํ ๋ง๋ค๊ธฐ
๋
ธ๋ ํ์ ๋ง๋ค ๋ --location_policy=ANY
ํ๋๊ทธ๋ฅผ ์ฌ์ฉํ์ฌ ํด๋ฌ์คํฐ ์๋ ํ์ฅ ์ฒ๋ฆฌ์ ์ฌ์ฉ๋์ง ์์ ์์ฝ์ ์ฌ์ฉ๋ฅ ์ ์ฐ์ ์์๋ฅผ ๋๋๋ก ์ง์ํ ์ ์์ต๋๋ค.
gcloud container node-pools create POOL_NAME \
--cluster=CLUSTER_NAME \
--location_policy=ANY
๋ค์์ ๋ฐ๊ฟ๋๋ค.
POOL_NAME
: ์ ํํ ์ ๋ ธ๋ ํ์ ์ด๋ฆCLUSTER_NAME
: ํด๋ฌ์คํฐ์ ์ด๋ฆ
๊ธฐ์กด ๋ ธ๋ ํ์ ์๋ ํ์ฅ ์ฌ์ฉ ์ค์ง
gcloud CLI ๋๋ Google Cloud ์ฝ์์ ์ฌ์ฉํ์ฌ ๊ธฐ์กด ๋ ธ๋ ํ์ ์๋ ํ์ฅ์ ์ฌ์ฉ ์ค์งํ ์ ์์ต๋๋ค.
gcloud
ํน์ ๋
ธ๋ ํ์ ์๋ ํ์ฅ์ ์ฌ์ฉ ์ค์งํ๋ ค๋ฉด --no-enable-autoscaling
ํ๋๊ทธ๋ฅผ ์ฌ์ฉํ์ธ์.
gcloud container clusters update CLUSTER_NAME \
--no-enable-autoscaling \
--node-pool=POOL_NAME \
--location=CONTROL_PLANE_LOCATION
๋ค์์ ๋ฐ๊ฟ๋๋ค.
CLUSTER_NAME
: ์ ๋ฐ์ดํธํ ํด๋ฌ์คํฐ์ ์ด๋ฆPOOL_NAME
: ์ํ๋ ๋ ธ๋ ํ์ ์ด๋ฆCONTROL_PLANE_LOCATION
: ํด๋ฌ์คํฐ์ ์ปจํธ๋กค ํ๋ ์ธ์ ๋ํ Compute Engine ์์น. ๋ฆฌ์ ํด๋ฌ์คํฐ์ ๊ฒฝ์ฐ ๋ฆฌ์ ๋๋ ์์ญ ํด๋ฌ์คํฐ์ ๊ฒฝ์ฐ ์์ญ์ ์ ๊ณตํฉ๋๋ค.
ํด๋ฌ์คํฐ ํฌ๊ธฐ๋ ํด๋ฌ์คํฐ์ ํ์ฌ ๊ธฐ๋ณธ ๋ ธ๋ ํ ํฌ๊ธฐ๋ก ๊ณ ์ ๋์ด ์์ผ๋ฉฐ ์๋์ผ๋ก ์ ๋ฐ์ดํธ ๊ฐ๋ฅํฉ๋๋ค.
์ฝ์
ํน์ ๋ ธ๋ ํ์ ์๋ ํ์ฅ์ ์ฌ์ฉ ์ค์งํ๋ ค๋ฉด ๋ค์ ์๋ด๋ฅผ ๋ฐ๋ฅด์ธ์.
Google Cloud ์ฝ์์์ Google Kubernetes Engine ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
ํด๋ฌ์คํฐ ๋ชฉ๋ก์์ ์์ ํ๋ ค๋ ํด๋ฌ์คํฐ ์ด๋ฆ์ ํด๋ฆญํฉ๋๋ค.
๋ ธ๋ ํญ์ ํด๋ฆญํฉ๋๋ค.
๋ ธ๋ ํ ์๋์์ ์์ ํ ๋ ธ๋ ํ์ ์ด๋ฆ์ ํด๋ฆญํ ๋ค์ edit ์์ ์ ํด๋ฆญํฉ๋๋ค.
ํฌ๊ธฐ์์ ์๋ ํ์ฅ ์ฌ์ฉ ์ค์ ์ฒดํฌ๋ฐ์ค์ ์ ํ์ ์ทจ์ํฉ๋๋ค.
์ ์ฅ์ ํด๋ฆญํฉ๋๋ค.
๋ ธ๋ ํ ํฌ๊ธฐ ์กฐ์
์๋ ํ์ฅ์ด ์ฌ์ฉ ์ค์ ๋ ํด๋ฌ์คํฐ์ ๊ฒฝ์ฐ ํด๋ฌ์คํฐ ์๋ ํ์ฅ ์ฒ๋ฆฌ๊ฐ ์ต์ ํฌ๊ธฐ(--min-nodes
) ๋ฐ ์ต๋ ํฌ๊ธฐ(--max-nodes
) ๊ฐ ๋๋ ์ต์ ์ด ํฌ๊ธฐ(--total-min-nodes
) ๋ฐ ์ต๋ ์ด ํฌ๊ธฐ(--total-max-nodes
)๋ก ์ง์ ๋ ๊ฒฝ๊ณ ๋ด์์ ๋
ธ๋ ํ์ ํฌ๊ธฐ๋ฅผ ์๋์ผ๋ก ์กฐ์ ํฉ๋๋ค. ์ด ํ๋๊ทธ๋ค์ ์ํธ ๋ฐฐํ์ ์
๋๋ค. ์ด๋ฌํ ๊ฐ์ ๋ณ๊ฒฝํ์ฌ ๋
ธ๋ ํ์ ํฌ๊ธฐ๋ฅผ ์๋์ผ๋ก ์กฐ์ ํ ์ ์์ต๋๋ค.
์๋ ํ์ฅ์ ์ฌ์ฉ ์ค์ ํ ํด๋ฌ์คํฐ์ ๋ ธ๋ ํ ํฌ๊ธฐ๋ฅผ ์๋์ผ๋ก ์กฐ์ ํ๋ ค๋ฉด ๋ค์์ ์ํํฉ๋๋ค.
- ๋ ธ๋ ํ์ ์๋ ํ์ฅ์ ์ฌ์ฉ ์ค์งํฉ๋๋ค.
- ์๋์ผ๋ก ํด๋ฌ์คํฐ ํฌ๊ธฐ๋ฅผ ์กฐ์ ํฉ๋๋ค.
- ์๋ ํ์ฅ์ ๋ค์ ์ฌ์ฉ ์ค์ ํ๊ณ ์ต์ ๋ฐ ์ต๋ ๋ ธ๋ ํ ํฌ๊ธฐ๋ฅผ ์ง์ ํฉ๋๋ค.
์ ํํ ๋ ธ๋์์ ํฌ๋ ์์ฝ ๋ฐฉ์ง
์ฌ์ฉ ์ฌ๋ก์ ๋ฐ๋ผ startup
๋๋ status
taint๋ฅผ ์ฌ์ฉํ์ฌ ์ ํํ ๋
ธ๋์์ ํฌ๋ ์์ฝ์ ๋ฐฉ์งํ ์ ์์ต๋๋ค.
์ด ๊ธฐ๋ฅ์ ๋ฒ์ 1.28 ์ด์์ GKE์์ ์ ๊ณต๋ฉ๋๋ค.
์์ taint
๋
ธ๋์์ ํฌ๋๋ฅผ ์คํํ๊ธฐ ์ ์ ์๋ฃํด์ผ ํ๋ ์์
์ด ์์ผ๋ฉด startup
taint๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์๋ฅผ ๋ค์ด ๋
ธ๋์ ๋๋ผ์ด๋ฒ ์ค์น๊ฐ ์๋ฃ๋ ๋๊น์ง ํฌ๋๋ฅผ ์คํํ์ง ์์์ผ ํฉ๋๋ค.
ํด๋ฌ์คํฐ ์๋ ํ์ฅ ์ฒ๋ฆฌ๋ startup
taint๋ก taint๋ ๋
ธ๋๋ฅผ ์ค๋น๋์ง ์์ ๊ฒ์ผ๋ก ์ทจ๊ธํ์ง๋ง, ๊ณง ํ์ฅ๋ ๊ฒ์ผ๋ก ๊ฐ์ ํ์ฌ ํ์ฅ ๋ก์ง์์ ์ด๋ฅผ ๊ณ ๋ คํฉ๋๋ค.
์์ taint๋ ํ๋ฆฌํฝ์ค๊ฐ startup-taint.cluster-autoscaler.kubernetes.io/
์ธ ๋ชจ๋ taint๋ก ์ ์๋ฉ๋๋ค.
์ํ taint
GKE๊ฐ ์ง์ ๋ ๋
ธ๋๋ฅผ ์ฌ์ฉํ์ฌ ํฌ๋๋ฅผ ์คํํด์๋ ์ ๋๋ ๊ฒฝ์ฐ์๋ status
taint๋ฅผ ์ฌ์ฉํ์ธ์.
ํด๋ฌ์คํฐ ์๋ ํ์ฅ ์ฒ๋ฆฌ๋ status
taint๊ฐ ์๋ ๋
ธ๋๋ฅผ ์ค๋น๋ ๊ฒ์ผ๋ก ์ทจ๊ธํ์ง๋ง ํ์ฅ ๋
ผ๋ฆฌ ์ค ์ด๋ฅผ ๋ฌด์ํฉ๋๋ค. taint ๋
ธ๋๊ฐ ์ค๋น๋์ด ์๋๋ผ๋ ํฌ๋๊ฐ ์คํ๋์ง ์์ต๋๋ค. ํฌ๋์ ๋ ๋ง์ ๋ฆฌ์์ค๊ฐ ํ์ํ ๊ฒฝ์ฐ GKE๊ฐ ํด๋ฌ์คํฐ๋ฅผ ํ์ฅํ๊ณ taint ๋
ธ๋๋ฅผ ๋ฌด์ํฉ๋๋ค.
์ํ taint๋ ํ๋ฆฌํฝ์ค๊ฐ status-taint.cluster-autoscaler.kubernetes.io/
์ธ ๋ชจ๋ taint๋ก ์ ์๋ฉ๋๋ค.
๋ฌด์ taint
๋ฌด์ taint๋ ํ๋ฆฌํฝ์ค๊ฐ ignore-taint.cluster-autoscaler.kubernetes.io/
์ธ ๋ชจ๋ taint๋ก ์ ์๋ฉ๋๋ค.
๋ฌธ์ ํด๊ฒฐ
๋ฌธ์ ํด๊ฒฐ ๋์๋ง์ ๋ค์ ํ์ด์ง๋ฅผ ์ฐธ๊ณ ํ์ธ์.
- ํด๋ฌ์คํฐ ์๋ ํ์ฅ ์ฒ๋ฆฌ๊ฐ ์ถ์๋์ง ์๋ ๋ฌธ์ ํด๊ฒฐ
- ํด๋ฌ์คํฐ ์๋ ํ์ฅ ์ฒ๋ฆฌ๊ฐ ํ์ฅ๋์ง ์๋ ๋ฌธ์ ํด๊ฒฐ
๋ค์ ๋จ๊ณ
- ํด๋ฌ์คํฐ ์๋ ํ์ฅ ์ฒ๋ฆฌ ์์ธํ ์์๋ณด๊ธฐ
- ํด๋ฌ์คํฐ ์๋ ํ์ฅ ์ฒ๋ฆฌ ์ด๋ฒคํธ ๋ณด๊ธฐ