Infra
[k8s] Object Namespace, ResourceQuota, LimitRange
뚜둔뚜둔
2022. 3. 7. 12:10

Object - Namespace, ResourceQuota, LimitRange
kubernetes Cluster 에서 사용할 수있는 자원들이 있음
Namespace안에 파드들은 클러스터 자원을 공유해서 사용.
ResourceQuota를 통해 최대 자원을 설정해두어 그 이상은 사용이 불가능하게 해둠.
LimitRange를 통해 들어오는 파드의 사이즈를 제한해서 Namespace안에 제한된 파드가 들어올 수 있게 함.
Namespace
- 한 namespace 안에서는 같은 이름의 Pod를 쓸 수 없음.
- 타 namespace 의 자원과 분리되서 관리가 됨.
- 만든 자원들은 같은 namespace 안에서만 사용 가능.
- namespace를 지우면, 안에 있는 자원들도 다 지워짐.
ResourceQuota
- namespace의 자원한계를 설정 (requests, limits)
- pod를 만들때 이 spec(requests, limits)을 명시해줘야함. -> 명시하지 않으면 namesapce에 만들어지지 않음.
- namespace의 resourceQuota의 양보다 Pod들의 requests,limits의 양이 많으면 생성되지 않음.
ResourceQuota
- min: pod에서 설정되는 메모리의 최소값
- max: pod에서 설정되는 메모리의 최대값
- maxLimitRequestRatio: min, max 비율이 이것을 초과할 수 없다.
- -> 이 값들을 만족하는 pods만 namespace에 들어올 수 있음
- defaultRequest, default : 파드에 설정해둔 값이 없으면, 자동으로 이 spec으로 들어옴
반응형