What’s This

EKSにおいて、Podに対してSGを適用する場合、いくつか準備が必要です。
設計前、作業前に知っておくと、検証がスイスイ進むのではないかという内容です。
簡易なメモです。

ノードにt3系は使用できない

ドキュメントにある通り、Pod単位でSGを適用したい場合には、ノードにt3系は使用できないです。

pods のセキュリティグループは、m5、c5、r5、p3、m6g、c6g、および r6g インスタンスファミリーを含む、ほとんどの Nitro ベースの Amazon EC2 インスタンスファミリーでサポートされています。t3 インスタンスファミリーはサポートされていません。サポートされているインスタンスの詳細なリストについては、GitHub で「limits.go」ファイルを参照してください。ノードは、そのファイルで一覧表示されているインスタンスタイプのうち、IsTrunkingCompatible: true を含むものである必要があります。

一意のセキュリティグループを個々の pods に割り当てる方法について説明します。

以下limits.goでIsTrunkingCompatibleがtrueになっているc5.largeに変更して再度検証したところ、適用できました。
https://github.com/aws/amazon-vpc-resource-controller-k8s/blob/master/pkg/aws/vpc/limits.go

ちなみに、サポートされていないファミリー(a1.medium)で適用するとこんなエラーが出ます。


全文はこちら:[EKS] Podに対してSecurity Groupを適用する前にしておく準備について

著者:@meta_plankton