본문 바로가기

쿠버네티스

파드 리소스 조정으로 속도 향상

쿠버네티스 도입 후 심각한 속도 저하 발생, 18초 정도까지 본 적 있습니다.

 

찾아보니 지나친 리소스 제한은 처리 속도의 제약을 가져다 준다는 글을 보게 되었습니다.

[번역] 쿠버네티스에서 쉽게 저지르는 10가지 실수

 

[번역] 쿠버네티스에서 쉽게 저지르는 10가지 실수

쿠버네티스를 사용하면서 쉽게 저지르는 10가지 실수에 대한 번역글입니다. 원글을 읽고 공감가는 부분이 많아 기록으로 남기고자 번역하였습니다.

coffeewhale.com

 

현재 t3.large(2코어 8기가램) 노드를 세 개 쓰고 있습니다.

서버의 종류가 약 8개이고, 각 3개의 레플리카 셋이 만들어지도록 설정했기 때문에 24개의 파드가 만들어집니다.

 

모든 서버를 안전하게 띄우기 위해 각 파드의 리소스를 아래와 같이 설정했습니다.

resources:
  requests:
    cpu: 100m
    memory: 512Mi
  limits:
    cpu: 250m
    memory: 768Mi

 

다시 생각해보니 0.1~0.25의 CPU만 할당 받을 수 있기 때문에 처리 속도가 느리다는 것을 깨달아 아래와 같이 리소스를 조정했습니다.

resources:
  requests:
    cpu: 250m
    memory: 512Mi
  limits:
    cpu: 400m
    memory: 768Mi

 

그러니 CPU 리소스 부족 문제로 Pending 상태의 파드가 생겼습니다.

  Warning  FailedScheduling  75s (x6 over 3m6s)  default-scheduler  0/3 nodes are available: 3 Insufficient cpu. preemption: 0/3 nodes are available: 3 No preemption victims found for incoming pod..

 

 

 

Jig, Work-Order 서버의 경우 매우 중요하기 때문에 3개씩 레플리카 셋을 만들지만,

나머지 서버의 경우 상대적으로 중요도가 낮아 두 개 정도로 조정해도 괜찮다고 판단했습니다.

 

레플리카의 개수를 조정하니 정상적으로 모든 파드가 동작했습니다.

 

리소스 조정 후 아래와 같이 속도가 빨라졌습니다.