[NCP] NKS 환경에서의 Cluster Autoscaler

    반응형
    SMALL

    Cluster Autoscaler란?

    간단하게 Pod가 요청하는 자원량에 비해 Node가 가진 자원량이 부족할 때 Node의 수를 Scale-out하거나 Scale-in해주는 Add-on이다.

     

    NKS에서의 Cluster Autoscaler 설치 및 사용법

    VPC Environment

    -> VPC 환경에 NKS를 구축하였을 때 Cluster Autoscaler를 자동으로 설치된다.

     

    Classic Environment

    -> 해당 환경에서는 아래와 같은 방식으로 Cluster Autoscaler를 설치해줘야한다.

     

    우선 helm을 설치했다고 가정하에 진행한다.

    $ helm repo add ncloud https://navercloudplatformdeveloper.github.io/helm-charts

    아래에 빨간색으로 표시한 부분은 Cluster Autoscaler의 버전을 적어야하는데 현재는 "1.12.7-beta-202004200000" 버전만 지원한다.

    $ helm install ncloud/autoscaler \
    --set min=1 \
    --set max=3 \
    --version 1.12.7-beta-202004200000

     

    그 후 정상 동작하는 지 확인

    $ kubectl get cm cluster-autoscaler-status -o yaml -n kube-system

     

    Scaling Test

    $ kubectl create deployment nginx-deployment --image=nginx:latest --replicas=100

    위 명령어로 nginx pod를 100개 생성했을 때 할당할 수 있는 Resource의 양이 충분하지 않으므로, Node가 Scaling될 것이다.

    잠시 뒤 Node가 확장됐는지 확인 후 아래 명령어로 deployment를 삭제해주자.

     

    $ kubectl delete deployment nginx-deployment
    반응형
    LIST

    댓글