tencent cloud

Tencent Kubernetes Engine

소식 및 공지 사항
릴리스 노트
제품 릴리스 기록
제품 소개
제품 장점
제품 아키텍처
시나리오
제품 기능
리전 및 가용존
빠른 시작
신규 사용자 가이드
표준 클러스터를 빠르게 생성
Demo
클라우드에서 컨테이너화된 애플리케이션 배포 Check List
TKE 표준 클러스터 가이드
Tencent Kubernetes Engine(TKE)
클러스터 관리
네트워크 관리
스토리지 관리
Worker 노드 소개
Kubernetes Object Management
워크로드
클라우드 네이티브 서비스 가이드
Tencent Managed Service for Prometheus
TKE Serverless 클러스터 가이드
TKE 클러스터 등록 가이드
실습 튜토리얼
Serverless 클러스터
네트워크
로그
모니터링
유지보수
DevOps
탄력적 스케일링
자주 묻는 질문
클러스터
TKE Serverless 클러스터
유지보수
서비스
이미지 레지스트리
원격 터미널

워크로드 리소스 제한 설정

PDF
포커스 모드
폰트 크기
마지막 업데이트 시간: 2025-08-04 14:45:41

요청(Request) 및 제한(Limit)

Request: 컨테이너가 사용하는 최소한의 리소스 요구 사항을 말하며, 컨테이너가 스케쥴링될 때 리소스 할당의 판단 기준이 됩니다. 노드에서 사용 가능한 리소스 양 >= 컨테이너 리소스 요청 수량인 경우에만 컨테이너를 노드에 스케쥴링할 수 있습니다. 그러나 Request 매개변수는 컨테이너에서 사용할 수 있는 리소스의 최대 값을 제한하지 않습니다. Limit: 컨테이너에서 사용할 수 있는 리소스의 최대 값입니다.
주의:
LimitRequest 매개변수에 대한 자세한 내용을 보려면 여기를 클릭하십시오.

CPU 제한 설명

CPU 리소스의 경우 CPU 요청 및 CPU 제한에 대한 리소스 양을 설정할 수 있으며, 이는 코어(U) 단위이며 소수일 수 있습니다.
주의:
CPU Request는 스케쥴링의 기초로 사용됩니다. 컨테이너가 생성되면 ‘allocated CPU’ 리소스라고 하는 노드에서 CPU 리소스가 컨테이너에 할당됩니다.
CPU Limit은 컨테이너 CPU 리소스의 최대 값입니다. 설정하지 않으면 제한이 없습니다(CPU Limit >= CPU Request).

메모리 제한 설명

메모리 리소스의 경우 컨테이너에 사용할 수 있는 최대 메모리 양만 제한할 수 있습니다. MiB 단위이며 소수일 수 있습니다.
주의:
메모리 Request는 스케쥴링의 기초로 사용됩니다. 컨테이너가 생성되면 ‘allocated memory’ 리소스라고 하는 노드에서 메모리 리소스가 컨테이너에 할당됩니다.
메모리 리소스는 확장할 수 없습니다. 노드의 모든 컨테이너가 사용하는 메모리 리소스가 제한을 초과하면 OOM(Out Of Memory, 즉 메모리 오버플로)의 위험이 있습니다. 따라서 Limit가 설정되지 않은 경우 기본적으로 컨테이너의 정상적인 작동을 보장하기 위해 Limit = Request입니다.

CPU 사용량 및 CPU 사용률

CPU 사용량은 실제로 사용된 물리적 CPU 코어 수를 나타내는 절대값입니다. CPU 리소스 요청 및 CPU 리소스 제한은 모두 CPU 사용량을 기준으로 판단됩니다.
CPU 사용률은 단일 CPU 코어(또는 노드의 총 CPU 코어)에 대한 CPU 사용률을 나타내는 상대 값입니다.

사용 예시

다음은 Request와 Limit의 역할을 보여주는 간단한 예입니다. 테스트 클러스터는 1개의 4U4G 노드, 2개의 배치된 Pod( Pod1 및 Pod2 )로 설정되며 각 Pod의 리소스는 (CPU Request, CPU Limit, Memory Request, Memory Limit) = (1U, 2U, 1G, 1G)로 설정됩니다. (1.0G = 1000MiB) 노드의 CPU 및 메모리 리소스 사용량은 아래 그림과 같습니다.
Alt text

할당된 CPU 리소스: 1U(Pod1용) + 1U(Pod2용) = 2U이고 할당 가능한 나머지 CPU 리소스는 2U입니다. 할당된 메모리 자원: 1G(Pod1의 경우) + 1G(Pod2의 경우) = 2G이고 할당 가능한 나머지 메모리 자원은 2G입니다. 따라서 ( CPU Request, Memory Request ) = ( 2U, 2G ) Pod 또는 2개 이상 (CPU Request, Memory Request) = (1U, 1G) Pod를 노드에 배치할 수 있습니다.
리소스 제한 측면에서 Pod1과 Pod2가 사용하는 리소스의 상한선은 ( 2U, 1G )이며, 이는 유휴 리소스가 있는 경우 Pod에서 사용할 수 있는 최대 CPU 리소스가 2U임을 의미합니다.

권장 서비스 리소스 제한

TKE는 현재 컨테이너 이미지의 기록 로드를 기반으로 Request 및 Limit 값을 권장합니다. 권장 값을 사용하면 컨테이너가 더 원활하게 실행되고 예외 가능성이 크게 줄어듭니다.
Recommendation algorithm: 알고리즘은 먼저 지난 7일 동안 현재 컨테이너 이미지에서 분당 로드 값을 가져온 다음 95번째 백분위수 값을 사용하여 Limit의 절반인 권장 Request를 결정합니다.
Request = Percentile(실제 부하[7d],0.95)
Limit = Request * 2
현재 샘플 크기(실제 로드)가 권장 사항 계산의 수량 요구 사항을 충족하지 않는 경우 알고리즘은 그에 따라 샘플 값 범위를 확장하고 다시 계산을 시도합니다. 예를 들어 이미지 tag, namespace 및 serviceName과 같은 필터 기준을 제거한 후 다시 시도합니다. 여러 계산 후에 유효한 값을 얻지 못하면 권장 값은 공백이 됩니다.
Blank recommended values: 정상적인 사용 중에는 다음과 같은 이유로 인해 일부 값에 대한 권장 사항이 없음을 알 수 있습니다.
1. 현재 데이터가 계산 요구 사항을 충족하지 않는 경우. 최소 1440개의 샘플(실제 부하), 즉 하루의 데이터가 있어야 합니다.
2. 권장 값이 현재 컨테이너에 대해 이미 설정된 Request 또는 Limit보다 작은 경우.
주의:
1. 권장 값은 과거 부하를 기준으로 계산되기 때문에 원칙적으로 컨테이너 이미지가 실제 비즈니스를 오래 실행할수록 권장 값이 정확해집니다.
2. 권장 값을 사용하여 서비스를 생성할 경우 클러스터 리소스가 부족하여 컨테이너 스케쥴링이 실패될 수 있습니다. 서비스를 저장할 때 현재 클러스터에 남아 있는 리소스를 주의 깊게 확인해야 합니다.
3. 권장 값은 참고용입니다. 실제 비즈니스 요구 사항에 따라 조정하시기 바랍니다.

도움말 및 지원

문제 해결에 도움이 되었나요?

피드백