728x90
반응형
# 클라우드 포메이션 기반 기본 환경 세팅하기
1. 클라우드 포메이션으로 이동 후 스택 생성을 클릭하여 스택을 생성한다.
2. 템플릿 관련 옵션을 설정 후 생성을 진행 한다.
3. 업로드한 파일을 확인한다. 우측 하단에 디자이너에서 보기를 클릭하면 아래와 같이 생성된 인프라를 볼 수 있다.
- 상당에는 그래픽으로 환경을 표시하고 하단에는 스크립트로 환경을 볼 수 있다.
- 스크립트로 표현된 환경
- 스택 생성: 상단에 아이콘을 클릭하면 구성된 인프라를 기반으로 환경이 생성 된다.
상단 아이콘을 클릭하면 스택 생성 화면으로 이동하고, 다음을 클릭하면 스택 생성이 된다.
- 생성전 확인화면이 아래와 같이 설정된다.
- 스택 옵션 구성 화면에서는 다른 옵션을 설정하지 않고 다음을 클릭하여 다음으로 넘어간다.
- 마지막 검토 화면에서 템플릿 URL 부분에서 파일 이름 외 끝부분은 동적으로 변경된다는것을 기억하자.
- 스택 생성을 클릭하여 위의 설정된 환경으로 스택을 생성한다.
- 생성이 진행되는 모습, 생성이 완료가 되면 CREATE_COMPLETE로 상태가 변경 된다.
4. 생성한 스택 확인
- VPC로 이동하여 정상적으로 스택이 생성되었는지 확인한다.
- 아래의 모습처럼 정상적으로 VPC 스택이 생성된것을 볼 수 있다.
- 생성한 VPC 리소스가 정상적인지 체크
세부정보 및 CIDR 등 기본 정보에 대한 확인이 가능하다. 이상없이 확인이 된다면 정상적으로 생성이 된것이다.
5. 환경생성 전체 소스 (클라우드 포메이션)
AWSTemplateFormatVersion: '2010-09-09'
Parameters:
ClusterBaseName:
Type: String
Default: eks-work
TargetRegion:
Type: String
Default: ap-northeast-2
AvailabilityZone1:
Type: String
Default: ap-northeast-2a
AvailabilityZone2:
Type: String
Default: ap-northeast-2b
AvailabilityZone3:
Type: String
Default: ap-northeast-2c
VpcBlock:
Type: String
Default: 192.168.0.0/16
WorkerSubnet1Block:
Type: String
Default: 192.168.0.0/24
WorkerSubnet2Block:
Type: String
Default: 192.168.1.0/24
WorkerSubnet3Block:
Type: String
Default: 192.168.2.0/24
Resources:
EksWorkVPC:
Type: AWS::EC2::VPC
Properties:
CidrBlock: !Ref VpcBlock
EnableDnsSupport: true
EnableDnsHostnames: true
Tags:
- Key: Name
Value: !Sub ${ClusterBaseName}-VPC
WorkerSubnet1:
Type: AWS::EC2::Subnet
Properties:
AvailabilityZone: !Ref AvailabilityZone1
CidrBlock: !Ref WorkerSubnet1Block
VpcId: !Ref EksWorkVPC
MapPublicIpOnLaunch: true
Tags:
- Key: Name
Value: !Sub ${ClusterBaseName}-WorkerSubnet1
WorkerSubnet2:
Type: AWS::EC2::Subnet
Properties:
AvailabilityZone: !Ref AvailabilityZone2
CidrBlock: !Ref WorkerSubnet2Block
VpcId: !Ref EksWorkVPC
MapPublicIpOnLaunch: true
Tags:
- Key: Name
Value: !Sub ${ClusterBaseName}-WorkerSubnet2
WorkerSubnet3:
Type: AWS::EC2::Subnet
Properties:
AvailabilityZone: !Ref AvailabilityZone3
CidrBlock: !Ref WorkerSubnet3Block
VpcId: !Ref EksWorkVPC
MapPublicIpOnLaunch: true
Tags:
- Key: Name
Value: !Sub ${ClusterBaseName}-WorkerSubnet3
InternetGateway:
Type: AWS::EC2::InternetGateway
VPCGatewayAttachment:
Type: AWS::EC2::VPCGatewayAttachment
Properties:
InternetGatewayId: !Ref InternetGateway
VpcId: !Ref EksWorkVPC
WorkerSubnetRouteTable:
Type: AWS::EC2::RouteTable
Properties:
VpcId: !Ref EksWorkVPC
Tags:
- Key: Name
Value: !Sub ${ClusterBaseName}-WorkerSubnetRouteTable
WorkerSubnetRoute:
Type: AWS::EC2::Route
Properties:
RouteTableId: !Ref WorkerSubnetRouteTable
DestinationCidrBlock: 0.0.0.0/0
GatewayId: !Ref InternetGateway
WorkerSubnet1RouteTableAssociation:
Type: AWS::EC2::SubnetRouteTableAssociation
Properties:
SubnetId: !Ref WorkerSubnet1
RouteTableId: !Ref WorkerSubnetRouteTable
WorkerSubnet2RouteTableAssociation:
Type: AWS::EC2::SubnetRouteTableAssociation
Properties:
SubnetId: !Ref WorkerSubnet2
RouteTableId: !Ref WorkerSubnetRouteTable
WorkerSubnet3RouteTableAssociation:
Type: AWS::EC2::SubnetRouteTableAssociation
Properties:
SubnetId: !Ref WorkerSubnet3
RouteTableId: !Ref WorkerSubnetRouteTable
Outputs:
VPC:
Value: !Ref EksWorkVPC
WorkerSubnets:
Value: !Join
- ","
- [!Ref WorkerSubnet1, !Ref WorkerSubnet2, !Ref WorkerSubnet3]
RouteTable:
Value: !Ref WorkerSubnetRouteTable
728x90
반응형
'k8s 실전 프로젝트 > 1. EKS 환경구축' 카테고리의 다른 글
2. EKS 클러스터 구축 (0) | 2022.03.03 |
---|