1 Answer
- Newest
- Most votes
- Most comments
1
Hello there,
The error: You must be logged in to the server (Unauthorized)
you encountered is because the kubectl
in the CodeBuild is not configured properly for Amazon EKS or the IAM user or role credentials that you are using do not map to a Kubernetes RBAC user with sufficient permissions in your Amazon EKS cluster.
Things to check:
- The Service role for CodeBuild service: eks-CodeBuildServiceRole should have this permission below. It gives it full access to EKS.
{
"Sid": "EKSAccessPolicy",
"Effect": "Allow",
"Action": [
"eks:*"
],
"Resource": "*"
}
- Mapping of the Service role for CodeBuild to a Kubernetes RBAC user. From terminal Cloud9 to which you have connected EKS cluster, verify the configMap aws-auth has the right entry for the IAM role: eks-CodeBuildServiceRole with the command:
kubectl edit configmaps aws-auth -n kube-system
The eks-CodeBuildServiceRole should be mapped to masters. Be sure your AWS_ACCOUNT_ID is substituted in the snippet below:
- groups:
- system:masters
rolearn: arn:aws:iam::{$AWS_ACCOUNT_ID}}:role/eks-CodeBuildServiceRole
username: codebuild-eks
I was able to reproduce the steps in the guide. See the CodeBuild result.
Relevant content
- Getting error while connecting EKS cluster error: You must be logged in to the server (Unauthorized)Accepted Answerasked 2 years ago
- asked 2 years ago
- AWS OFFICIALUpdated 6 months ago
- AWS OFFICIALUpdated 10 days ago
- AWS OFFICIALUpdated 3 years ago
Thanks for your helps! Let me check again! I think the problem is in Mapping of the Service role for CodeBuild to a Kubernetes RBAC user.
Hi, I substituted my AWS_ACCOUNT_ID in aws-auth.yaml file but the same error still occur. Please help me check!