쿠버네티스에서 리소스 할당하기
이 항목에서는 쿠버네티스의 Milvus 클러스터에 리소스를 할당하는 방법을 설명합니다.
일반적으로, 프로덕션 환경에서 Milvus 클러스터에 할당하는 리소스는 머신 워크로드에 비례해야 합니다. 리소스를 할당할 때 머신 유형도 고려해야 합니다. 클러스터가 실행 중일 때 구성을 업데이트할 수 있지만, 클러스터를 배포하기 전에 값을 설정하는 것이 좋습니다.
Milvus 운영자를 사용하여 리소스를 할당하는 방법에 대한 자세한 내용은 Milvus 운영자를 사용하여 리소스 할당하기를 참조하세요.
1. 사용 가능한 리소스 보기
kubectl describe nodes
를 실행하여 프로비저닝한 인스턴스에서 사용 가능한 리소스를 확인합니다.
2. 리소스 할당하기
헬름을 사용하여 CPU와 메모리 리소스를 밀버스 컴포넌트에 할당한다.
리소스를 할당하는 방법에는 두 가지가 있다:
명령어로 리소스 할당
--set
를 사용하여 리소스 구성을 업데이트하는 경우 각 Milvus 구성 요소에 대한 리소스 변수를 설정해야 합니다.
helm upgrade my-release milvus/milvus --reuse-values --set standalone.resources.limits.cpu=2 --set standalone.resources.limits.memory=4Gi --set standalone.resources.requests.cpu=0.1 --set standalone.resources.requests.memory=128Mi
helm upgrade my-release milvus/milvus --reuse-values --set dataNode.resources.limits.cpu=2 --set dataNode.resources.limits.memory=4Gi --set dataNode.resources.requests.cpu=0.1 --set dataNode.resources.requests.memory=128Mi
구성 파일을 설정하여 리소스 할당
resources.yaml
파일에 resources.requests
및 resources.limits
파라미터를 지정하여 CPU 및 메모리 리소스를 할당할 수도 있습니다.
dataNode:
resources:
limits:
cpu: "4"
memory: "16Gi"
requests:
cpu: "1"
memory: "4Gi"
queryNode:
resources:
limits:
cpu: "4"
memory: "16Gi"
requests:
cpu: "1"
memory: "4Gi"
3. 구성 적용
다음 명령어를 실행하여 Milvus 클러스터에 새 구성을 적용합니다.
helm upgrade my-release milvus/milvus --reuse-values -f resources.yaml
resources.limits
을 지정하지 않으면, 파드가 사용 가능한 모든 CPU 및 메모리 리소스를 소비합니다. 따라서 동일한 인스턴스에서 실행 중인 다른 작업에서 더 많은 메모리 소비가 필요한 경우 리소스의 전체 할당을 피하려면 resources.requests
및 resources.limits
을 지정해야 합니다.리소스 관리에 대한 자세한 내용은 쿠버네티스 설명서를 참조한다.
다음 단계
- 다음 방법을 배울 수도 있습니다:
- 클라우드에 클러스터를 배포할 준비가 되셨다면: