【アップデート】Amazon EKSコンソールで標準的なKubernetesリソースが表示されるようになりました

2022.05.31

コンサル部のとばち(@toda_kk)です。

2022年5月のアップデートにより、Amazon EKSのマネジメントコンソールから標準的なKubernetesリソースを全て確認できるようになりました。

従来、EKSのコンソール上で確認できるリソースは、Deployment、Job、DaemonSet、StatefulSet、ReplicaSetといったリソースに限られていました。GUI上から全てのリソースを管理したい場合、Kubernetesダッシュボードを導入したり、Lensなどのツールを利用する必要がありました。

手慣れたKubernetesユーザーであればCUIでkubectlコマンドを実行して手早くリソースの状況を確認できることでしょう。

しかし、こうした状況はAmazon ECSに慣れたAWSコンテナサービスのユーザーからすれば、EKSおよびKubernetesの取っ付きづらさの一因となっていたのではないでしょうか。

それが今回のアップデートにより、EKS上で実行されている標準的なKubernetesリソースであれば全てマネジメントコンソールから確認できるようになりました。EKS導入のハードルが1つ下がったのではないかと思います。

どう変わったのか

実際にどのようにアップデートされたのか、マネジメントコンソールを確認してみます。

表示されるリソースタイプ

ちょっと見づらいかもしれませんが、上述のブログのスクリーンショットと比べると、たくさんのリソースタイプが表示されていることがわかります。

実行中のKubernetesリソースの表示は、Namespaceで絞り込みもできます。

NameやTypeでフィルタリングもできます。

「構造化ビュー」「rawビュー」

試しにPodの詳細を確認してみます。「構造化ビュー」「rawビュー」というメニューがあります。

「構造化ビュー」では、Kubernetesリソースの詳細情報をGUIで確認することができます。Namespaceの情報やPodで起動しているコンテナの情報、付与されているラベルの情報などを一元的に表示できて便利です。

「rawビュー」では、Kubernetesリソースの詳細情報をJSON形式で表示します。普段からkubectlを使ってリソースを管理しているユーザーにとっては、こちらの方が慣れているかもしれません。

「構造化ビュー」「rawビュー」どちらも表示できるのは、助かります。

Authentication/Authorization

個人的には、ServiceAccountや、ClusterRole/Role、ClusterRoleBinding/RoleBindingがマネジメントコンソールから確認できるのが嬉しいです。

上図はeksctlでクラスターを作成しただけの状態ですが、デフォルトでもたくさんのリソースが作成されていることがわかりますね。

カスタムリソースは表示されない

今回のアップデートにより確認できるようになったのは標準的なKubernetesリソース全てなので、カスタムリソースは表示されません。

ただ、カスタムリソース定義(CRD、Custom Resource Definitions)は確認できます。

EKSの場合だと、VPCのENIやセキュリティグループ周りでCRDを利用していることがわかります。

注意点

EKSマネジメントコンソールからKubernetesリソースを確認するためには、サインインしているIAMユーザーもしくはIAMロールに対して、Kubernetesユーザーとして適切な権限を付与されている必要があります。

クラスターを作成したIAMエンティティ(ユーザー/ロール)はデフォルトでその権限が付与されていますが、他のIAMエンティティはたとえIAMのAdministratorAccessポリシーがアタッチされていても、確認できません。Kubernetesユーザーとして権限を付与して貰う必要があります。

具体的な設定方法については、下記の記事をご参照ください。

以上、コンサル部のとばち(@toda_kk)でした。