[Retry, k8s] 32. 리소스 관리, 오토 스케일링 - 네임스페이스 리소스 쿼터 제한

Date:     Updated:

카테고리:

태그:


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

KUBERNETES 카테고리 내 다른 글 보러가기

댓글 남기기