본문 바로가기
K8S

Pod에 Resource (cpu, mem) 할당하기

by ohrohi 2025. 1. 2.
반응형
  • Resource Requests
    • 파드를 실행하기 위한 최소 리소스 양을 요청
    • (node에서 최소한 확보<보장>되어 있어야 할 리소스 양)
  • Resource Limits
    • 파드가 사용할 수 있는 최대 리소스 양을 제한
    • Memory limit을 초과해서 사용되는 파드는 종료(OOM Kill) 되며 다시 스케줄링 된다.
  • https://kubernetes.io/docs/tasks/configure-pod-container/assign-cpu-resouce/
apiVersion: v1
kind: Pod
metadata:
  name: nginx-pod-env
spec:
  containers:
  - name: nginx-container    -> 컨테이너별로 리소스 설정
    image: nginx:1.14
    ports:
    - containerPort: 80
      protocol: TCP
    env:
    - name: MYVAR
      value: "testvalue"
    resources:
      requests:
        memory: 500Mi
        cpu: 200m
      limits:
        memory: 1Gi
        cpu: 1

 

  • 참고
    • kubernetes에서 메모리는 아래와 같이 용량산정 한다.
      • 1MB = 1000KB
      • 1MiB = 1024KiB
    • kubernetes에서 CPU는 CORE수로 산정한다.
      • 1 core = 1000mc (밀리코어)
  • kubctl describe pod [pod 명]으로 pod 정보를 확인했을때 yaml에서 limits만 선언해도 Requests가 같이 생성되지만, 반대로 Requests만 yaml에서 선언했을때는 Limits가 생성되지 않는다.
반응형