티스토리 뷰

Resource Limit 실습

Resource CPU

  • 1(1000m) : CPU 1개를 fully 사용하는것
  • 250m: CPU 1개를 1/4 만큼 사용하는것

Resource Memory

  • 1G (Gigabyte) = 1,000,000,000 bytes
  • 1M (Megabyte) = 1,000,000 bytes
  • 1K (Kilobyte) = 1,000 bytes
  • 1Gi (Gibibyte) = 1,073,741,824 bytes
  • 1Mi (Mebibyte) = 1,048,576 bytes
  • 1Ki (Kibibyte) = 1,024 bytes

Resource 설정관련

  • CPU 의 경우 Limit 를 일시적으로 넘어갈 수 있음, POD 의 실행에 큰 영향을 주지 않음
  • Memory 의 경우 Limit 를 넘어서면 OOMKilled 라는 메시지와 함께 POD 가 Kill 됨, 그러므로 Memory 의 Limit 을 재조정 해야할 필요가 있음

예)

kubectl get pods

NAME       READY   STATUS      RESTARTS   AGE
test-pod   0/1     OOMKilled   2          26s

Resource 설정

apiVersion: v1
kind: Pod
metadata:
  name: frontend
spec:
  containers:
  - name: app
    image: images.my-company.example/app:v4
    resources:
      requests:
        memory: "64Mi"
        cpu: "250m"
      limits:
        memory: "128Mi"
        cpu: "500m"
  - name: log-aggregator
    image: images.my-company.example/log-aggregator:v6
    resources:
      requests:
        memory: "64Mi"
        cpu: "250m"
      limits:
        memory: "128Mi"
        cpu: "500m"

resource 의 경우 위와 같이 containers 하위에 resources 항목에 지정을 한다.

  • app 컨테이너
    • 요청:
      • 메모리: 64 Mibibyte 로 설정
      • CPU: 250m 이므로 1개의 CPU를 1/4로 사용
    • Limit:
      • 메모리: 128 Mibibyte 로 설정
      • CPU: 500m 이므로 1개의 CPU를 1/2로 사용
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
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 29 30 31
글 보관함