실습
가이드
링크에서 가이드를 확인할 수 있습니다.
EC2
VPC (Optional)
실습 과정을 응용하는 단계입니다.
기본 값은 기본 VPC(172.31.0.0/16)이지만, 기본 VPC를 사용하지 않을 경우에는 VPC를 새롭게 생성한 후 진행합니다.
VPC Perring은 Terraform으로 진행합니다. 그 이외의 리소스만 생성하세요.
AWS CLI를 통한 VPC 생성(VPC ID를 기록해 둡니다)
aws ec2 create-vpc --cidr-block 100.100.0.0/16 --tag-specifications "ResourceType=vpc,Tags=[{Key=Service,Value=DEV},{Key=Name,Value=Console}]"
생성이 끝났다면, Main route table을 subnet이 연결된 route table로 변경합니다.
Main route table로 변경할 route table 선택
작업 선택
기본 라우팅 테이블 설정
생성
실습에서는 Cloud9을 사용하지만, 본 가이드에서는 Cloud9과 같은 역할을 할 EC2(Amazon Linux 2)를 생성합니다.
Terraform에서 데이터로 불러오기 위하여 EC2 이름을 cloud9-eks-terraform으로 변경합니다.
태그 추가
설정
IAM 역할 추가, 패키치 설치 등을 진행합니다.
IAM 역할 수정
eksworkshop-admin 선택
저장 선택
생성한 서버로 접속 (SSH)
패키치 설치
mkdir ~/environment
sudo yum update && sudo yum install git -y
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://rpm.releases.hashicorp.com/AmazonLinux/hashicorp.repo
sudo yum install -y terraform
여기까지 진행한 이후, 가이드에 따라 Kubernetes 도구를 설치합니다.
Kubernetes 도구 설치 과정은 링크에서 확인할 수 있습니다.
Terraform
5. Creating a private EKS Cluster with Terraform > 5. Linking the Cloud9 IDE & CI/CD VPC to the EKS Network 단계 진행 전 일부 코드를 변경합니다.
수정 (Optional)
VPC를 새롭게 생성한 경우에 한하여 Terraform 코드를 일부 수정합니다. 주의하여 진행합니다.
먼저, VPC와 관련된 내용을 변경합니다.
파일 열기
vi data-defvpc.tf
코드 붙여넣기
저장
data "aws_vpc" "vpc-default" {
default = false
filter {
name = "tag:Name"
values = ["PROD-VPC"]
}
}
반드시 자신의 EC2를 생성한 VPC의 이름을 입력하세요. (PROD-VPC는 예시입니다.)
다음으로 EC2 보안그룹과 관련된 내용을 수정합니다.
파일 열기
vi data-sg-c9-instance.tf
코드 수정
저장
variable "c9label" {
description="Cloud9 IDE Name Label"
type=string
default="cloud9-eks-terraform"
}
output c9lab {
value = "%{ if var.c9label != "" } true %{else} false %{endif}"
}
data "aws_instance" "c9inst" {
filter {
name = "tag:Name"
values = ["*${var.c9label}*"]
}
}
data "aws_security_group" "c9sg" {
// 여기를 아래와 같이 변경해주세요.
id = sort(data.aws_instance.c9inst.vpc_security_group_ids)[0]
}
data "aws_iam_instance_profile" "c9ip" {
name = data.aws_instance.c9inst.iam_instance_profile
}
output c9role {
value=data.aws_iam_instance_profile.c9ip.role_arn
}
기본 VPC가 아닌 다른 VPC를 사용하는 경우 보안 그룹을 불러오는 특성이 달라집니다.
두 개의 파일 수정이 끝났다면, 다시 링크로 돌아가서 진행해주세요.
마지막으로,
끝까지 읽어주신 모든 분들께 감사드립니다.
다음 글 보기
이전 글 보기