2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

株式会社オープンストリームAdvent Calendar 2019

Day 24

[AWS] EKSでFargateが使えるようになったらしいので試してみた

Last updated at Posted at 2019-12-23

はじめに

少し前に開催されたre:Inventで
「EKS(Elastic Kubernetes Service) 上のPodをFargateで実行できるようになった」
と発表されました。
https://aws.amazon.com/jp/blogs/news/amazon-eks-on-aws-fargate-now-generally-available/

ということで試してみました。

先にまとめ

  • ワーカーノード無し (コントロールプレーン + Fargateのみ) でPodが実行可能

EKS + Fargate 構築

ちなみに、以下の内容は基本的に公式を簡略化したものですので、実際にやる場合は公式をご覧ください。

1. eksctlでクラスタを作成

今回は東京リージョンでクラスタを作成していきます。
EKS + Fargate に対応していないリージョンだとエラーになります。
(2019年12月現在 東京リージョンを含む4つのリージョンしか対応していません)

eksctl create cluster --name my-cluster --version 1.14 --fargate --region ap-northeast-1

--fargate を指定することでFargateプロファイルなるものが作成され、PodをFargateで実行できるようになります。
なおこのとき、実行するIAMユーザーに eks:CreateFargateProfile 等の権限が無いとエラーになります。
その後の削除等も含めると eks:*FargateProfile* の権限を付けた方が良いかと思います。

2. 作成したクラスタにPodをデプロイ

普通にkubectlで作成するだけで、自動的にFargateで実行されます。
特にEKS/Fargate用の設定等は必要ありません。(Dockerイメージの取得元をECRにする等はあるかもですが)

kubectl apply -f deployment.yaml

3. デプロイしたPodがRunningになるのを待つ

今回 replicas: 2 の Deployment で試しましたが、
1つのPodは30秒くらいで ContainerCreating になったのに対して
もう1つは80秒くらいまで Pending のままでした。
このあたりはFargateの機嫌次第だと思われます。

というわけで、ワーカーノードを追加することなくFargateでPodが実行できました。

その他

Fargateで稼働しているPodに対してALBを設定しようとしたのですが
alb-ingress-controller 内でエラーとなりうまくいきませんでした。
また別途調査しようと思います…

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?