KEA Blog Project에서 MSA 아키텍처로 개발을 진행하기 위해 Kubernetes를 활용하게 되었다. 그런데 이왕 AWS 자원 제공받는 김에 EKS도 써보고 싶어서 권한 부여 요청을 드렸고 사용하게 되었다.
1. aws-cli 및 kubectl 설치 확인
2. VPC 생성
•
aws에서 EKS 구성에 필요한 VPC 설정을 CloudFormation Stack으로 제공하고 있으며, VPC, 서브넷, 보안그룹 등을 제공한다. but 현재 IAM권한이 부여되어있지 않기에, 그냥 직접 기존 생각해둔 아키텍처에 맞게 VPC를 생성했다.
3. 클러스터 IAM 역할 생성
•
cli를 활용하면 다음과 같다.
$ vi c.json
---
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "eks.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
JSON
복사
•
role-name
◦
IAM 역할 이름을 지정한다.
•
assume-role-policy-document file
◦
역할 정책 json 파일 경로를 입력한다.
$ aws iam create-role \
--role-name EKSClusterRole \
--assume-role-policy-document file://"kea-003-eks-cluster-role.json"
Shell
복사
•
필요한 Amazon EKS 관리형 IAM 정책과 생성한 역할을 연결한다.
$ aws iam attach-role-policy \
--policy-arn arn:aws:iam::aws:policy/AmazonEKSClusterPolicy \
--role-name EKSClusterRole
Shell
복사
•
아니면 다음과 같이 웹 콘솔에서 설정할 수도 있다.
4. 클러스터 생성
•
다음과 같이 위에서 추가한 서비스 역할을 추가하고, 다음을 눌러 VPC에서 설정한 서브넷, 보안그룹 등을 추가해준다.
•
로깅 구성(Configure logging)도 해보고 싶었는데 권한문제로 패스…
•
이후 검토 및 생성 페이지에서 생성을 누르고 상태가 활성이 될 때까지 기다린다.
그러면 이렇게 딱..!