스테이트리스 워크로드 확장

변화하는 컨테이너 워크로드 요구사항에 맞게 스테이트리스 워크로드를 확장합니다.

시작하기 전에

사전 구성된 베어메탈 Kubernetes 클러스터에 대해 명령어를 실행하려면 다음 리소스가 있어야 합니다.

  1. Kubernetes 클러스터 이름을 찾거나 플랫폼 관리자에게 클러스터 이름을 문의합니다.

  2. Kubernetes 클러스터의 kubeconfig 파일이 없는 경우 로그인 및 생성합니다.

  3. Kubernetes 클러스터의 kubeconfig 경로를 사용하여 이 안내의 CLUSTER_KUBECONFIG를 바꿉니다.

상태 비저장 워크로드를 확장하는 데 필요한 권한을 얻으려면 조직 IAM 관리자에게 프로젝트 네임스페이스의 네임스페이스 관리자 역할 (namespace-admin)을 부여해 달라고 요청하세요.

배포 확장하기

Kubernetes의 확장 기능을 활용하여 배포에서 실행되는 포드 수를 적절하게 확장합니다.

배포의 포드 자동 확장

Kubernetes는 수요가 변화할 때 배포를 수동으로 업데이트할 필요가 없도록 자동 확장 기능을 제공합니다. 배포에서 수평형 포드 자동 확장 처리기를 설정하여 이 기능을 사용 설정합니다.

kubectl --kubeconfig CLUSTER_KUBECONFIG \
    -n NAMESPACE \
    autoscale deployment DEPLOYMENT_NAME \
    --cpu-percent=CPU_PERCENT \
    --min=MIN_NUMBER_REPLICAS \
    --max=MAX_NUMBER_REPLICAS

다음을 바꿉니다.

  • CLUSTER_KUBECONFIG: Kubernetes 클러스터의 kubeconfig 파일입니다.

  • NAMESPACE: 프로젝트 네임스페이스입니다.

  • DEPLOYMENT_NAME: 자동 확장할 배포의 이름입니다.

  • CPU_PERCENT: 모든 포드에서 요청할 대상 평균 CPU 사용률입니다(백분율로 표시).

  • MIN_NUMBER_REPLICAS: 자동 확장 처리에서 프로비저닝할 수 있는 포드 수의 하한값입니다.

  • MAX_NUMBER_REPLICAS: 자동 확장 처리에서 프로비저닝할 수 있는 포드 수의 상한입니다.

새로 만든 수평형 포드 자동 확장 처리의 현재 상태를 확인하려면 다음을 실행합니다.

kubectl get hpa

출력은 다음과 비슷합니다.

NAME              REFERENCE                          TARGET    MINPODS   MAXPODS   REPLICAS   AGE
DEPLOYMENT_NAME   Deployment/DEPLOYMENT_NAME/scale   0% / 50%  1         10        1          18s

배포의 포드를 수동으로 확장

배포를 수동으로 확장하려면 다음을 실행하세요.

kubectl --kubeconfig CLUSTER_KUBECONFIG \
    -n NAMESPACE \
    scale deployment DEPLOYMENT_NAME \
    --replicas NUMBER_OF_REPLICAS

다음을 바꿉니다.

  • CLUSTER_KUBECONFIG: Kubernetes 클러스터의 kubeconfig 파일입니다.

  • NAMESPACE: 프로젝트 네임스페이스입니다.

  • DEPLOYMENT_NAME: 자동 확장할 배포의 이름입니다.

  • DEPLOYMENT_NAME: 배포에서 선택한 복제된 Pod 객체 수입니다.