年末年始にインスタンスをたくさん上げたまま休みに入ると、年明けの請求金額が心配になるので、必須ではないNodegroupのインスタンス数は最低限に抑えて休みに入りたいです。
AWS EKSのNodegroupをコマンドラインで操作する時はeksctlを使うので、NodegroupのEC2インスタンス数をscaleする時もeksctlを使います。
- まず、nodegroupのDESIRED CAPACITY数を確認します。
eksctl get nodegroup --cluster=[Cluster Name]
CLUSTER NODEGROUP CREATED MIN SIZE MAX SIZE DESIRED CAPACITY INSTANCE TYPE IMAGE ID
[Custer Name] [Nodegroup Name] 2019-12-19T03:38:35Z 1 6 2 t3.medium ami-[ID]
DESIRED CAPACITY 2なので、2つのインスタンスが上がっていることが確認できます。
- nodeの数を2から1に減らします。
eksctl scale nodegroup --cluster=[Cluster Name] --nodes=1 --name=[Nodegroup Name]
[?] scaling nodegroup, desired capacity from 2 to 1
- 再度nodegroupのDESIRED CAPACITY数を確認しすると、1に変わっていて1つのインスタンスが上がっていることが確認できます。
eksctl get nodegroup --cluster=[Cluster Name]
CLUSTER NODEGROUP CREATED MIN SIZE MAX SIZE DESIRED CAPACITY INSTANCE TYPE IMAGE ID
[Custer Name] [Nodegroup Name] 2019-12-19T03:38:35Z 1 6 1 t3.medium ami-[ID]
もちろん、インスタンスの数はAWSのWebコンソル上でも確認できます。