[Retry, k8s] 32. 리소스 관리, 오토 스케일링 - 네임스페이스 리소스 쿼터 제한
카테고리: KUBERNETES
태그: kubernetes
05. 네임스페이스 리소스 쿼터 제한
리소스 쿼터를 사용하여 각 네임스페이스마다, 즉 가상 쿠버네티스 클러스터마다 사용 가능한 리소스를 제한할 수 있다. (리소스 쿼타는 생성이나 변경으로 그 시점에 제한이 걸린 상태가 되어도 이미 생성된 리소스에는 영향을 주지 않기 때문에 주의)
(1) 생성 가능한 리소스 수 제한
# 예제 1) sample-resourcequota-count-new.yaml
apiVersion: v1
kind: ResourceQuota
metadata:
name: sample-resourcequota-count-new
namespace: default
spec:
hard:
# 생성 가능한 리소스 수 (새로운 방식)
count/persistentvolumeclaims: 10
count/services: 10
count/secrets: 10
count/configmaps: 10
count/replicationcontrollers: 10
count/deployments.apps: 10
count/replicasets.apps: 10
count/statefulsets.apps: 10
count/jobs.batch: 10
count/cronjobs.batch: 10
count/deploymetns.extensions: 10
# 예제 2) sample-resourcequota-count-old.yaml
apiVersion: v1
kind: ResourceQuota
metadata:
name: sample-resourcequota-count-old
namespace: default
spec:
hard:
# 생성 가능한 리소스 수 (이전 방식)
# count/*의 새로운 방식으로는 지정 불가
sample-storageclass.storageclass.storage.k8s.io/persistentvolumeclaims: 10
services.loadbalancers: 10
services.nodeports: 10
# count/*의 새로운 방식으로도 지정 가능
pods: 10
persistentvolumeclaims: 10
replicationcontrollers: 10
secrets: 10
configmaps: 10
services: 10
resourcequotas: 10
(2) 리소스 사용량 제한
# 예제 1) sample-resourcequota-count-new.yaml
apiVersion: v1
kind: ResourceQuota
metadata:
name: sample-resourcequota-count-new
namespace: default
spec:
hard:
# Requests로 사용량 제한
requests.memory: 2Gi
requests.storage: 5Gi
sample-storageclass.storageclass.storage.k8s.io/requests.storage: 5Gi
requests.ephemeral-storage: 5Gi
requests.nvidia.com/gpu: 2
# Limits로 사용량 제한
limits.cpu: 4
limits.ephemeral-storage: 10Gi
limits.nvidia.com/gpu: 4
댓글 남기기