안녕하세요 이쁜이와 멋쟁이의 BTC_기범입니다.
오늘을 K8s 환경의 파드, 컨테이너들의 리소스 사용을
일괄적으로 제한할 수 있는 Limit Range에 대해 알아보겠습니다.
Limit Range란
기본적으로 컨테이너와 파드를 생성하면 컴퓨팅 리소스의 제한은 없습니다.
그렇기 때문에 리소스를 과하게 사용할 가능성이 있습니다.
이러한 상황을 피할 수 있도록 만들어진 기능 중 하나가 Limit Range입니다.
Limit Range는 각 namespace에서 생성되는 파드, 컨테이너의 기본 limit과 request 값을 지정할 수 있습니다.
또한 리소스의 상한, 하한 값을 지정하여 적절하지 않은 파드, 컨테이너의 생성을 막을 수도 있습니다.
Limit Range 예시
apiVersion: v1
kind: LimitRange
metadata:
name: limitRange-example
spec:
limits:
- default:
cpu: 500m
memory: 50Mi
defaultRequest:
cpu: 500m
memory: 30Mi
max:
cpu: "2"
min:
cpu: 200m
위 예시는 cpu, memory의 사용을 제한하는 Limit Range를 생성하는 yaml 예시입니다.
defualt namespace에서 생성되는 파드, 컨테이너에서 cpu의 경우 기본적으로 생성시 500m을 배치하고 limit 도 동일하게 500m으로 지정되어 있는 것을 볼 수 있습니다.
defualt namespace에서 생성되는 파드, 컨테이너에서 memory의 경우 생성시 30Mi의 리소스를 사용하도록 하고 limit은 50Mi으로 제한하고 있는 것을 확인할 수 있습니다.
그리고 max, min을 통해 허용되는 리소스의 범위를 지정하고 있는 것을 볼 수 있습니다.
지금까지 Limit Range에 대해 살펴보았습니다.
적절한 Limit Range 설정을 통해 적절한 리소스 사용을 실현하시길 바라면서 글을 마치겠습니다.
다음에 봬요~!
'IT KNOWLEDGE' 카테고리의 다른 글
32비트와 64비트 (0) | 2023.10.06 |
---|---|
Helm (0) | 2023.09.29 |
[Youtube API] 동영상의 조회수와 좋아요 수 추출하기 (0) | 2023.09.25 |
많이 사용 되는 개발언어들과 그 개발언어들의 특징 (0) | 2023.09.15 |
서버와 HTTP 개념 이해 (0) | 2023.09.15 |
댓글