Search

[CKA] 56. StorageClass

Date
2026/02/01
Category
Devops
Tag
Kubernetes
CKA
Storage
๋ชฉ์ฐจ

ย Provisioning

ย Static Provisioning

์ด์ „ ๊ฒŒ์‹œ๋ฌผ([CKA] 55. Volumes in Kubernetes)์—์„œ Volume์„ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์•„๋ž˜์™€ ๊ฐ™์€ ํ๋ฆ„์„ ๊ฐ€์กŒ๋‹ค:
โ€ข
PV ์ƒ์„ฑ (์Šคํ† ๋ฆฌ์ง€ ๋ฐฑ์—”๋“œ ํฌํ•จ)
โ€ข
PVC ์ƒ์„ฑ
โ€ข
Pod์—์„œ PVC๋ฅผ ๋ณผ๋ฅจ์œผ๋กœ ์‚ฌ์šฉ
์—ฌ๊ธฐ์„œ ์Šคํ† ๋ฆฌ์ง€ ๋ฐฑ์—”๋“œ๊ฐ€ ์˜ˆ๋ฅผ ๋“ค์–ด GCP Persistent Disk๋ผ๋ฉด ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธด๋‹ค.

๋ฌธ์ œ

PV๋ฅผ ๋งŒ๋“ค๊ธฐ ์ „์—:
1.
GCP์—์„œ ๋””์Šคํฌ๋ฅผ ๋จผ์ € ์ˆ˜๋™์œผ๋กœ ์ƒ์„ฑ
2.
๊ทธ ๋””์Šคํฌ ์ด๋ฆ„๊ณผ ๋™์ผํ•œ ์ด๋ฆ„/์ •๋ณด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ
3.
PV YAML์„ ์ˆ˜๋™์œผ๋กœ ์ž‘์„ฑ
์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์Šคํ† ๋ฆฌ์ง€๋ฅผ ํ•„์š”๋กœ ํ•  ๋•Œ๋งˆ๋‹ค ์ด ๊ณผ์ •์„ ๋ฐ˜๋ณตํ•ด์•ผ ํ•œ๋‹ค.
โ†’ ์ด ๋ฐฉ์‹์„ Static Provisioning์ด๋ผ๊ณ  ํ•œ๋‹ค.

ย Dynamic Provisioning

PVC๊ฐ€ ์ƒ์„ฑ๋˜๋Š” ์ˆœ๊ฐ„ ํ•„์š”ํ•œ ํฌ๊ธฐ์˜ ๋””์Šคํฌ๊ฐ€ ์ž๋™์œผ๋กœ ํ”„๋กœ๋น„์ €๋‹๋˜๊ณ , PV๊ฐ€ ์ž๋™ ์ƒ์„ฑ๋˜๋ฉฐ PVC๊ฐ€ ๊ทธ PV์— ๋ฐ”์ธ๋”ฉ๋œ๋‹ค.
โ†’ ์ด๊ฑธ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๋Š” ๊ฒƒ์ด StorageClass์ด๋‹ค.
StorageClass์—๋Š”:
โ€ข
์–ด๋–ค provisioner๋ฅผ ์จ์„œ
โ€ข
์–ด๋–ค ๋ฐฉ์‹/์˜ต์…˜์œผ๋กœ ์Šคํ† ๋ฆฌ์ง€๋ฅผ ๋งŒ๋“ค์ง€
๋ฅผ ์ •์˜ํ•œ๋‹ค.
โ†’ ์ด๊ฒƒ์ด Dynamic Provisioning์ด๋‹ค.

ย StorageClass

StorageClass๊ฐ€ ์ƒ๊ธฐ๋ฉด PV ๋ฐ ๋ชจ๋“  ๊ด€๋ จ ์Šคํ† ๋ฆฌ์ง€๊ฐ€ ์ž๋™์œผ๋กœ ์ƒ์„ฑ๋˜๋ฏ€๋กœ, ๋” ์ด์ƒ PV ์ •์˜๊ฐ€ ํ•„์š”ํ•˜์ง€ ์•Š๋‹ค. ํ•˜์ง€๋งŒ PVC ์ •์˜๋ฅผ ํ†ตํ•ด StorageClass ์ด๋ฆ„์„ ์ง€์ •ํ•˜์—ฌ ๋ฐ”์ธ๋”ฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— PVC๋Š” ์—ฌ์ „ํžˆ ์ƒ์„ฑํ•ด์•ผ ํ•œ๋‹ค.
โ€ข
StorageClass ์ƒ์„ฑ
โ€ข
PVC๊ฐ€ storageClassName์œผ๋กœ StorageClass ์ง€์ •
โ€ข
PVC๊ฐ€ ์ƒ์„ฑ๋˜๋ฉด
โ—ฆ
ํ”„๋กœ๋น„์ €๋„ˆ๊ฐ€ ํด๋ผ์šฐ๋“œ์— ๋””์Šคํฌ ์ƒ์„ฑ
โ—ฆ
PV ์ƒ์„ฑ
โ—ฆ
PVC๋ฅผ PV์— ๋ฐ”์ธ๋”ฉ
์ฆ‰,
โ€ข
PV + ์‹ค์ œ ๋””์Šคํฌ๋Š” ์ž๋™ ์ƒ์„ฑ
โ€ข
PVC๋Š” ์—ฌ์ „ํžˆ ์ƒ์„ฑ
apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: google-storage provisioner: kubernetes.io/gce-pd
YAML
๋ณต์‚ฌ

Parameters

StorageClass์˜ ๊ฐ•์ ์€ ๋‹จ์ˆœํžˆ โ€œ์ž๋™ ์ƒ์„ฑโ€๋งŒ์ด ์•„๋‹ˆ๋ผ, ๋””์Šคํฌ ์ข…๋ฅ˜/๋ณต์ œ ๋ฐฉ์‹ ๊ฐ™์€ ์˜ต์…˜์„ ํด๋ž˜์Šค๋ณ„๋กœ ํ‘œ์ค€ํ™”ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์ด๋‹ค.
GCP PD์˜ ๊ฒฝ์šฐ ์•„๋ž˜์™€ ๊ฐ™์€ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค:
โ€ข
Disk Type: pd-standard / pd-ssd
โ€ข
Replication Type: none / regional-pd
๊ทธ๋ž˜์„œ ์„œ๋น„์Šค ๋“ฑ๊ธ‰์ฒ˜๋Ÿผ ์—ฌ๋Ÿฌ ํด๋ž˜์Šค๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค. ์•„๋ž˜๋Š” ๊ทธ ์˜ˆ์‹œ์ด๋‹ค:
โ€ข
silver: ํ‘œ์ค€ ๋””์Šคํฌ
โ€ข
gold: SSD ๋””์Šคํฌ
โ€ข
platinum: SSD + ๋ณต์ œ(regional)
PVC๋Š” ํ•„์š”ํ•œ ๋“ฑ๊ธ‰๋งŒ ์ง€์ •ํ•˜์—ฌ ์ƒ์„ฑํ•˜๋ฉด ๋œ๋‹ค.
apiVersion: v1 kind: PersistentVolumeClaim metadata: name: my-claim spec: storageClassName: silver accessModes: - ReadWriteOnce resources: requests: storage: 1Gi
YAML
๋ณต์‚ฌ
์ด์ „ ๊ฒŒ์‹œ๋ฌผ