【正解】C
【0からの解説】
「NodeCreationFailure: Instances failed to join the Kubernetes cluster」は、ワーカーノード(EC2 インスタンス)は起動したものの、Kubernetes クラスターに参加できなかったことを示す典型的なエラーです。原因は多岐にわたり、ノードの IAM ロールの権限不足、サブネットのルーティング/インターネット到達性、セキュリティグループの設定、aws-auth ConfigMap の設定、DNS(kube-dns/CoreDNS)到達性などが考えられます。
AWS はこの問題の切り分けを自動化する Systems Manager の自動化ランブック「AWSSupport-TroubleshootEKSWorkerNode」を提供しています。このランブックはクラスター名とインスタンス ID を入力すると、ノードがクラスターに参加できない一般的な原因(IAM、ネットワーク、設定など)を体系的にチェックして結果を返してくれます。原因が一つに特定できない本問の状況では、まずこのランブックを実行して網羅的に切り分けるのが最も適切です。
【誤りの選択肢】
A:EKS のドキュメントでは予約 CIDR として 10.100.0.0/16 や 172.20.0.0/16 などがサービス CIDR に使われますが、172.17.0.0/16 は Docker のデフォルトブリッジ範囲であり、これ単独が「ノードがクラスターに参加できない」エラーの一般的な根本原因とは言えません。網羅的な切り分けにはなりません。
B:kubeconfig の更新は kubectl でクラスターに接続できないときの対処であり、ノードがクラスターに「参加」できない問題とは別の話です。エラーの原因解決にはなりません。
D:IAM OIDC プロバイダーは IRSA(Pod に IAM ロールを割り当てる仕組み)に必要なものであり、ワーカーノードがクラスターに参加する処理とは無関係です。
【参考】
Troubleshoot worker nodes failing to join an EKS cluster (AWS re:Post)Run the AWSSupport-TroubleshootEKSWorkerNode runbook