๋ชฉ์ฐจ
ย 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
๋ณต์ฌ
์ด์ ๊ฒ์๋ฌผ
๋ค์ ๊ฒ์๋ฌผ
