🐳 Container/K8S
[K8s] Storage Class
heywantodo
2024. 4. 29. 15:16
728x90
반응형
[K8s] Storage Class
스토리지 클래스는 관리자가 제공하는 스토리지의 classes를 설명할 수 있는 방법을 제공한다.
클래스는 서비스의 품질 수준, 백업 정책, 클러스터 관리자가 정한 임의의 정책에 매핑될 수 있다.
StorageClass 리소스
해당 스토리지클래스에 속하는 PV를 동적으로 프로비저닝할 때 사용된다.
스토리지클래스의 이름은 중요하며, 사용자가 특정 클래스를 요청할 수 있는 방법으로 사용된다.
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: standard
provisioner: kubernetes.io/aws-ebs
parameters:
type: gp2
reclaimPolicy: Retain
allowVolumeExpansion: true
mountOptions:
- debug
volumeBindingMode: Immediate
관리자는 특정 클래스에 바인딩을 요청하지 않은 PVC에 대해서만 스토리지 클래스를 지정할 수 있다.
프로비저너
PV 프로비저닝에 사용되는 볼륨 플러그인을 결정하는 프로비저너가 있다.
반드시 지정이 필요하다. ex) AWS EBS, AzureFile, NFS 등
파라미터
스토리지 클래스에는 속하는 볼륨을 설명하는 파라미터가 있다.
provisioner에 따라 다른 파라미터를 사용할 수 있다.
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: slow
provisioner: kubernetes.io/aws-ebs
parameters:
type: io1
iopsPerGB: "10"
fsType: ext4
리클레임 정책
스토리지클래스에 의해 동적으로 생성된 PV는, reclaimPolicy 필드에 지정된 리클레임 정책을 가진다.
이는 Delete(Default), 또는 Retain이 될 수 있다.
참고
https://kubernetes.io/ko/docs/concepts/storage/storage-classes/
728x90
반응형