Help us understand the problem. What is going on with this article?

【待望】EKSでワーカーノードのプロビジョニングがサポートされた

概要

EKSで使用するワーカーノードのプロビジョニングおよび管理を、EKSのサポートとして対応されたことが2019年11月18日にAWSから発表されました。
つまり、自前でEC2を管理する必要がなくなります。これは超待望。
https://aws.amazon.com/jp/about-aws/whats-new/2019/11/amazon-eks-adds-support-for-provisioning-and-managing-kubernetes-worker-nodes/

従来のワーカーノードの管理方法

ワーカーノード用EC2のプロビジョニングはオートスケーリンググループを用意するなどの方法で行う必要がありました。
つまり、EC2の管理とEKSの管理は別々でした。

さらに、オートスケーリンググループを使った場合は下記の設定をする必要がありました。

  • クラスターオートスケール用の設定を自身で行う
  • EC2起動時のuser dataにEKSクラスタと紐付けるスクリプトが必要

今回のアップデート内容

EKSにNodeGroupという概念が登場しました。
eks-api-evolution-1024x495.png

NodeとPodのキャパシティを見て、EKSが自動でEC2を増やしたり減らしたりしてくれる機能です。
AWSコンソール上で、EKSクラスターの詳細画面から設定できます。
0_mng-cluster-overview-1024x516.png

NodeGroupの設定に必要なのは

  • ワーカーノード用のサブネット
  • ワーカーノード用のIAMロール
  • ワーカーノードのインスタンスタイプ
  • 台数(Minimum size, Max size, Desired size)

この辺りの最低限必要なマシンの設定を行なっていきます。
つまり、従来のクラスターオートスケールの設定、EC2起動時のスクリプトなどが不要となり、マシンのあらかたの外枠だけ決めておけば後はkubernetesで良い感じにやってくれるようになります。

画像は公式ブログより抜粋。
https://aws.amazon.com/jp/blogs/containers/eks-managed-node-groups/

また、AWSコンソール以外にも下記ツールなどを使用してNodeGroupを作成することもできます。

  • AWS CLI
  • eksctl CLI
  • Cloudformation
  • Terraform

Terraformではもう使えるの?

私は業務で、TerraformでEKSクラスタを構築しているので、サポートされているかが気になっていましたが、バッチリサポートされていました。
https://github.com/terraform-providers/terraform-provider-aws/blob/master/CHANGELOG.md

Terraformの場合は aws_eks_node_group というリソースを使用することでNodeGroupを作成できます。

まとめ

EKSでワーカーノードのプロビジョニング、管理がサポートされました。
EC2のスペックなどの指定は必要になりますが、オートスケーリンググループを使って自前で管理していた部分がマネージドになるのは幸せになれそうです!
今後も素晴らしいアップデートを期待しております。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away