실습 1탄 = 5/7
콘솔에서 ESK Nodes정보 보자
Cloud9에서 CLI로 EKS 클러스터를 만들었다면, 웹 콘솔에서 node정보를 볼수 있도록 권한을 주어야한다.
참고 자료
https://aws-eks-web-application.workshop.aws/ko/50-eks-cluster/200-option-console.html
1
role arn 확인
rolearn=$(aws cloud9 describe-environment-memberships --environment-id=$C9_PID | jq -r '.memberships[].userArn')
echo ${rolearn}
2
값을 불렀을 때, assumed-role이 있다면 아래의 작업을 추가적으로 수행
assumedrolename=$(echo ${rolearn} | awk -F/ '{print $(NF-1)}')
rolearn=$(aws iam get-role --role-name ${assumedrolename} --query Role.Arn --output text)
echo ${rolearn}
3
매핑
eksctl create iamidentitymapping --cluster eks-demo --arn ${rolearn} --group system:masters --username admin
4
확인
kubectl describe configmap -n kube-system aws-auth
5
AWS 콘솔에서 확인하자 > EKS
확인
- groups:
- system:masters
rolearn: arn:aws:iam::xxxxxxxxxx:role/seo-administrator-role
username: admin
위 내용이 있으면 정상적인것이다.
1)
Overview 에서 node 확인
https://docs.aws.amazon.com/ko_kr/eks/latest/userguide/add-user-role.html
https://aws.amazon.com/ko/premiumsupport/knowledge-center/amazon-eks-cluster-access/
실습 - CLI로 EKS 클러스터를 만들었다면, EKS 콘솔에서 node정보를 볼수 있도록 권한을 주기
1
우선 EKS 콘솔에서 worker node 정보가 보이는지 보자. 안보인다.
기본적으로 콘솔에서는 정보를 확인할수 없다.
추가로 작업을 해줘야 한다.
2
ACCOUNT_ID=`aws sts get-caller-identity --query 'Account' --output text`
echo $ACCOUNT_ID
3
iam role arn확인한다.
arn xxxxxxxxxxxxxxxxxxxxx
4
1줄 요약
eksctl create iamidentitymapping --cluster first-eks --arn arn:aws:iam::$ACCOUNT_ID:role/seo-administrator-role --group system:masters --username admin
// 리전 , 클러스터 이름 first-eks , account id , role이름 4개를 맞추어 준다.
리전이 틀리면 aws configure로 리전을 맞춰주자.
// --arn은 iam > 역할 > seo-administrator-role 의 역할 ARN을 입력하면 된다.
// EC2에 연결한 역할 이름의 arn이다.
https://brunch.co.kr/@topasvga/1654
5
참고
kubectl describe configmap -n kube-system aws-auth
kubectl edit configmap -n kube-system aws-auth
kubectl delete configmap -n kube-system aws-auth
https://brunch.co.kr/@topasvga/1655
https://brunch.co.kr/@topasvga/1883
https://brunch.co.kr/@topasvga/1679