티스토리 뷰
728x90
컨테이너 리소스 request & limit
- 포드를 만들 때 컨테이너가 필요로 하는(=요청 request) CPU 및 메모리 양과 소비할 수 있는 것(=한계 limit)를 지정할 수 있음
- 컨테이너마다 개별적으로 지정
apiVersion: v1
kind: Pod
metadata:
name: frontend
spec:
containers:
- name: app
image: images.my-company.example/app:v4
resources:
requests:
memory: "64Mi"
cpu: "250m" # 0.25
limits:
memory: "128Mi"
cpu: "500m" # 0.5
컨테이너 리소스 단위
CPU
- 1 CPU = 1코어
- 노드가 물리 호스트인 경우, 1 = 1 물리 CPU 코어
- 가상 머신인 경우, 1 = 1 가상 코어
- 소수점 명시 가능
- 0.5 : 절반의 CPU 시간을 요청
- 0.1 = “백 밀리 CPU”, “백 밀리코어” (=100m)
- CPU 시간
- 컨테이너가 실제로 CPU에서 실행되는 시간으로 측정
- ex) 1 CPU 시간: CPU 하나가 1초 동안 완전히 사용된 것
- ex) 컨테이너가 2개의 CPU 코어를 사용하여 5초간 실행된 경우 10 CPU 시간을 사용한 것
- 사용 예시
containers:
- name: my-nginx
image: nginx
resources:
requests:
cpu: "2" # 2개의 CPU 요청
- my-nginx 컨테이너가 10초 동안 1개의 CPU를 100% 사용했다면 총 10CPU 시간을 소비한 것
메모리 리소스 단위
Kubernetes에서 메모리 요청(requests)과 제한(limits)은 주로 다음과 같은 단위로 설정됩니다:
단위 의미 예시
B | 바이트(Byte) | 512B |
Ki | 키비바이트(1 Ki = 2¹⁰ B = 1024 B) | 128Ki |
Mi | 메비바이트(1 Mi = 2²⁰ B = 1024 Ki) | 256Mi |
Gi | 기비바이트(1 Gi = 2³⁰ B = 1024 Mi) | 1Gi |
Ti | 티비바이트(1 Ti = 2⁴⁰ B = 1024 Gi) | 1Ti |
참고:
- 메모리 단위는 이진 접두사(Ki, Mi, Gi)를 주로 사용합니다.
- kB, MB, GB 같은 10진 단위도 지원되지만, Kubernetes에서는 보통 이진 접두사를 권장합니다.
memory 에 대한 제한 및 요청은 바이트 단위로 측정된다. E, P, T, G, M, k 와 같은 수량 접미사 중 하나를 사용하여 메모리를 일반 정수 또는 고정 소수점 숫자로 표현할 수 있다. Ei, Pi, Ti, Gi, Mi, Ki와 같은 2의 거듭제곱을 사용할 수도 있다. 예를 들어, 다음은 대략 동일한 값을 나타낸다.
128974848, 129e6, 129M, 128974848000m, 123Mi
접미사의 대소문자에 유의한다. 400m의 메모리를 요청하면, 이는 0.4 바이트를 요청한 것이다. 이 사람은 아마도 400 메비바이트(mebibytes) (400Mi) 또는 400 메가바이트 (400M) 를 요청하고 싶었을 것이다.
십진표기 vs 이진 표기 : https://ko.wikipedia.org/wiki/킬로바이트
파드의 리소스 사용량 모니터링
kubectl top pod {pod_name}
728x90
'devOps' 카테고리의 다른 글
[쿠버네티스] 컴퓨팅 리소스 관리 - LimitRange & ResourceQuota (0) | 2024.11.28 |
---|---|
[쿠버네티스] 컴퓨팅 리소스 관리 - Pod 우선순위 정하기 (feat. QoS) (0) | 2024.11.26 |
[EKS] AWS Secrets Manager 보안데이터를 Pod의 env로 연결하기 (1) | 2024.11.12 |
[쿠버네티스] 클라이언트 유형별 API 서버 접근 방법 및 권한 관리 전략 (1) | 2024.11.10 |
[쿠버네티스] 쿠버네티스 내부 이해 (2) | 2024.11.05 |
댓글
300x250
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- phpUnit
- java
- 리눅스 컨테이너
- 대규모 데이터 처리
- NoSQL
- docker
- MySQL
- 샤딩
- laravel
- pods
- index
- Infra
- 주니어개발자
- k8s
- 분산처리
- laravel 테스트코드
- Container
- springboot
- devops
- database
- mongoDB
- php
- 라라벨
- laravel 테스트
- 백엔드
- 몽고디비
- kubernetes
- sre
- 쿠버네티스
- mockery
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
글 보관함