- CPU/Memory Resource 제어
- LimitRange
- ResourceQuota
- request : 최소 설정
- limit : 최대 설정
- 하나의 pod 안에 db와 web을 동시에 배포한 yaml
- 리소스를 여러 pod들이 사용하려고 하는 경우 limit 값이 적용된다.
- 즉, pod가 하나일때는 limit 은 무의미하다.
LimitRange
- min, max : 해당 범위안에 들었을 경우에만 pod를 관리할 수 있다.
- maxLimitRequestRatio : cpu는 min max 4배까지 허용하겠다. memory는 10배까지 허용하겠다.
- 해당 범위안에 들었을 경우에만 pod를 관리할 수 있다.
- 네임스페이스 별로 스펙사이즈를 설정할 수 있다.
- 노드의 가용리소스를 판단하여 리소스 사용에 대한 limit, range를 설정
예) 큰pod들 생성 네임스페이스 : 큰 pod들만 생성할 수 있음 작은 pod들 생성 네임스이스 : 작은 pod들만 생성할 수 있음 |
ResourceQuota
- Namespace 의 총 Resource Limits 을 설정
- API server 가 Pod 생성시 유효성 검사를 실시 실행중인 Pod 에 영향을 주지 않음
- Namespace 마다 CPU/MEM/Storage(PVC)/API object 수를 제한
- Pod 생성시 Requests/Limits 을 명시해야 하므로 LimitRange 를 같이 사용할 필요가 있다
- apiserver enable admission plugins= 플래그가 ResourceQuota 인수 중 하나를 가질 때 활성화
'클라우드 컴퓨팅 & NoSQL > k8s' 카테고리의 다른 글
Helm (0) | 2020.12.06 |
---|---|
limit range/resource-quota 시나리오 (0) | 2020.12.06 |
Ingress Controller (0) | 2020.12.03 |
Service Controller (0) | 2020.12.03 |
Job/CronJob Controller (0) | 2020.12.03 |