内容
- CodeBuildeで
kubectl apply
を実施したい - エラー
error: You must be logged in to the server (Unauthorized)
- CodeBuildでkubectlしたいが、このエラーが出てしまう
参考ページ
メモ
- 基本的に上記クラスメソッドさんのブログのように進めればOK
- EKS, EKSノードグループ作成
- CodePipeline, CodeBuild作成
- CodeBuildのロールの調整(CodeBuildがkubectlできるようにする)
上記 CodeBuildのロールの調整(CodeBuildがkubectlできるようにする)
これでハマった
- 上記ブログにもあるように、EKSクラスタのConfigMap情報を編集する必要がある
- CodeBuildがEKSクラスタにアクセスできるような設定にしてやる必要がある
- EKSクラスタにログインできるコンソールから以下のコマンドを実行して
aws-auth
を
$ kubectl edit -n kube-system configmap/aws-auth
これでCodebuilで使用するロール情報を追記してやる必要がある
- rolearn: <CodeBuildのサービスロールのARN> username: codebuild groups: - system:masters
これを追記
CodeBuildのサービスロールのARN
について
- CodeBuildにアタッチしてあるロールを見てみると以下のようになってる
arn:aws:iam::xxxxxxxxx:role/service-role/codebuild-role
- この
arn
をrolearn
として記載してもうまくいかない - 上記Qiitaブログに書いてあるが
○: arn:aws:iam::xxxxx:role/codebuild-hoge-service-role ×: arn:aws:iam::xxxxx:role/service-role/codebuild-hoge-service-role
ということらしい