시작하기 전에, 팀원분 컴퓨터에서 eks 클러스터를 만들었기 때문에 정작 내 컴퓨터에서 어떻게 접속할지 모르겠어서... 잠시 헤맸었는데 이렇게 접속하면 되는 것 같다.
aws eks update-kubeconfig --region <region> --name <cluster name>
rds cloudformation stack을 만들었다. clusterconfig가 아니라 cloudformation이라서 많이 고민 했었는데, 여러가지를 보고 생각해본 결과로는 이렇게 만들면 될 것 같았다.
AWSTemplateFormatVersion: 2010-09-09
Resources:
PrivateSubnet1:
Type: AWS::EC2::Subnet
Properties:
VpcId: <VPC ID>
CidrBlock: <Private Subnet 1 CIDR>
PrivateSubnet2:
Type: AWS::EC2::Subnet
Properties:
VpcId: <VPC ID>
CidrBlock: <Private Subnet 2 CIDR>
DBSubnetGroup:
Type: AWS::RDS::DBSubnetGroup
Properties:
DBSubnetGroupDescription: subnet group for rds
DBSubnetGroupName: web-db-subnet-group
SubnetIds:
- !Ref PrivateSubnet1 #원래오류남
- !Ref PrivateSubnet2
DBInstance:
Type: AWS::RDS::DBInstance
Properties:
DBName: web-db
DBInstanceIdentifier: web-db
AvailabilityZone: ap-northeast-2
AllocatedStorage: 1
DBInstanceClass: db.t3.medium
Engine: mysql
MasterUsername:
MasterUserPassword:
VPCSecurityGroups:
- vpc-sg-id #eks 클러스터와 같은 값을 입력하면 EKS클러스터가 속해있는 보안그룹과 같은 곳에 속한다.
DBSubnetGroupName: web-db-subnet-group
MultiAZ: true
VSCode의 yaml파일에서는 !Ref 부분이 오류가 있다고 나왔지만, 공식 문서를 살펴 보니 저렇게 쓰는게 맞고 yaml 파일 형식이라서 VSCode에서 오류가 나는 것 같다. 다음주에는 rds를 올리고 팀원 분들에게 액세스 가능한지를 물어봐야 할 것 같다. + 지금 생각해 보니 웹 개발 하시는 분들이 rds를 사용하셔야 하는데 아마 퍼블릭 액세스를 허용해두어야 할 듯 싶다..? 퍼블릭 서브넷을 하나 만들고 개발 완료하면 없애던가 배스천 호스트를 구현하던가 할 듯...
그것 말고도 전에 만들어두었던 HPA나 PVC같은 yaml 파일들을 미리 github에 push해 두었다.