반응형

어제 실패한 것을 이어서 하면서 성공을 했다.

codebuild를 통한 eks 배포를 검색하면 좋은 블로그글이 많이 있지만 내 문제를 해결하는데 3가지 글이 많은 도움이 됬다.

error: You must be logged in to the server (Unauthorized) 오류 해결 방안 (tistory.com)

첫번째 블로그에서는 IAM 역할로 인한 문제와 aws-auth의 문제를 볼 수 있었다.

CodeBuild가 EKS에게 권한을 받기 위해서 EKS 정책들을 얻어야 한다. 지금은 연습이어서 Admin, FullAccess등을 설정하려고 했지만 EKS는 모든 정책이 없었다. EKS의 모든 정책을 주면 10개뿐인 정책이 다 차게되어 알아보고 넣어야 했다.

aws-auth에 mapRoles에 직접적으로 CodeBuild에 적용된 role의 arn을 rolearn에 추가 해주면 된다고 했다. 

BUT 여전히 실패했다.

https://repost.aws/knowledge-center/codebuild-eks-unauthorized-errors

2번째는 AWS 공식 리포트글을 참조 했다.

aws-auth에 직접적으로 ARN을 추가해주면 eks가 codebuild를 통과 시켜 줄 것이라고 생각을 했지만 에러는 여전했다.

error: You must be logged in to the server (Unauthorized)

aws에서 해당 error에 대해서 설명해주는데 

AWS Identity and Access Management (IAM) Authenticator doesn't permit a path in the role Amazon Resource Name (ARN) used in the configuration map. If the role ARN (rolearn) in your aws-auth ConfigMap includes a path, Amazon EKS returns the following error: error: You must be logged in to the server (Unauthorized)

IAM 구성 맵에 사용되는 ARN 역할의 경로를 허용하지 않습니다. aws-auth ConfigMap의 ARN(rolearn)에 경로가 포함되어 있으면 EKS는 오류를 반환한다. error: You must be logged in to the server (Unauthorized)

즉 CodeBuild 서비스의 역할 (자동 생성된)의 경로 문제 였다.

 

 

반응형

+ Recent posts