0부터 시작하는 AWS 공부 - VPC 를 이용한 가상 Network 구축

Jaehong Lee·2022년 11월 3일
2
post-thumbnail

Instance 생성 & Image 생성

Instance 생성

  • ec2 에 들어가서 인스턴스 시작에 들어가서 더 많은 AMI 찾아보기를 클릭하자

  • 커뮤니티에서 해당 AMI 선택

  • 새 Keypair 생성

  • Network 를 확인하면 default VPC 가 존재한다

  • 보안 그룹은 위와 같이 설정

인스턴스를 시작하자


Instance 접속 확인

  • Amazon Linux 는 기본 User 가 ec2-user 이다

  • 퍼블릭 Ip 를 확인하고, 이를 통해 Putty 로 접속하자
sudo yum -y install httpd
sudo systemctl start httpd
sudo systemctl enable httpd
echo "<center>ehllo aws</center>" | sudo tee /var/www/html/index.html
  • httpd 를 설치하고, index.html 을 작성하자
sudo tail -f /var/log/httpd/access_log
  • httpd 접속 log 를 확인하자

  • 잘 접속된다
sudo init 0
  • Instance 를 중지시키자

  • 잘 중지됬는지 확인하자

Image 생성 & 등록

  • 인스턴스에서 우클릭을 해서 이미지 및 템플릿을 누르자. 여기서 이미지 생성을 클릭하자

  • Image 를 생성하자

  • AMI 에 들어가면 생성한 Image 를 확인할 수 있다

  • 내 AMI 에 잘 등록되었다

VPC 를 이용한 가상 Network 구축

ELB 서브넷, WebAP 서브넷, RDS 서브넷을 사용해보자

VPC 확인

  • VPC 에 들어가자

  • 기본 VPC 의 라우팅 테이블에 들어가서 라우팅을 확인하자

VPC 생성

  • 위와 같이 설정하여 VPC 를 생성하자
  • 태그에는 이름이 자동으로 들어간다

Subnet 생성

인터넷에서 web-subnet 에 접근하려면, 인터넷 게이트웨이 -> public-subnet -> elb-subnet -> web-subnet 순서로 트래픽이 전달된다

  • elb-subnet 을 생성을 해주자. VPC 를 지정하고, 이름을 지정한다
  • 태그에는 이름이 자동으로 들어간다
  • 가용 영역은 a 로 하고, Ip 대역은 10.0.2.0/24 로 해주자

  • web-subnet 생성

  • rds-master-subnet 생성

  • rds-slave-subnet 생성. 이는 master 와 같은 가용 영역에 있으면 안된다

  • Public 용 subnet 생성. 이는 외부 연결 용이다. 이 Public 서브넷을 통해 Internet Gateway 와 연결이 된다

  • 총 5 개의 Subnet 을 생성했다

DB 서브넷 그룹 생성

  • rds 에 들어가서 DB 서브넷 그룹 생성을 누르자

  • 이름과 VPC 를 지정하고, 가용 영역을 선택하자
  • 설명도 넣어야 한다

  • RDS 용으로 생성한 서브넷을 선택하자

생성을 눌러주자


인터넷 게이트웨이 생성 & 연결

  • VPC 의 라우팅 테이블에 들어가자

  • 생성한 VPC 의 라우팅 테이블에 들어가면, 외부로의 연결에 대한 라우팅이 없는 것을 확인할 수 있다

  • 인터넷 게이트웨이를 생성해주자

  • VPC 에 연결을 눌러주자
  • 인터넷 게이트웨이를 통해 VPC 는 인터넷과 연결이 가능하다. 이 인터넷 게이트웨이를 VPC 와 연결시켜 줘야 해당 VPC 에서 인터넷 게이트웨이를 통해 인터넷과 연결이 된다

  • VPC 를 지정하고, 연결해주면 된다

Subnet 설정 & 라우팅 설정

  • Public Subnet 에 들어가서 서브넷 설정 편집을 눌러주자

  • 퍼블릭 Ip 주소 자동 할당 활성화를 눌러주자

  • VPC 의 라우팅 테이블에 들어가서 VPC 가 인터넷과 연결이 가능하게 라우팅 편집을 눌러주자

  • 주소는 0.0.0.0/0 으로 하고, 대상은 생성한 인터넷 게이트웨이로 지정하면 된다

  • Subnet 에 들어가서 라우팅 테이블에 들어가면, 잘 등록되어있다

보안 그룹 설정

보안 그룹은 기본적으로 Outbound 는 모두 허용이다

구조는 ELB - WEB - DB 이다. WEB 은 ELB 로부터의 접속만 허용하고, DB 는 WEB 으로부터의 접속만 허용한다

  • 보안 그룹을 생성해주자

  • 위와 같이 설정하여 생성해주자. 모든 ICMP 와 HTTP 접속을 허용해주었다

  • web 에 대한 보안 그룹을 생성해주자. ELB 에서 오는 트래픽만 허용하게 10.0.2.0/24 로 지정해주자

  • DB 에 대한 보안 그룹을 생성해주자. WEB 에서 오는 트래픽만 허용하게 10.0.1.0/24 로 지정한다

Web Instance 생성

  • 내 AMI 의 Image 를 선택해주자. 개수는 2 개로 지정한다

  • 네트워크는 위와 같이 설정한다

Instance 를 생성해주자


로드 밸런서 생성

  • 로드 밸런서를 생성해주자

  • Classic 을 선택하자

  • 이름과 VPC 를 지정하자

  • 서브넷은 elb-subnet 으로 지정하자. 서브넷은 로드 밸런서가 배치될 서브넷이다

  • 보안 그룹 할당에서 elb-sg 를 눌러주자. 이는 로드 밸런서에 INBOUND 하는 것에 대한 보안 그룹이다

  • 인스턴스 추가

로드 밸런서를 생성해주자


로드 밸런서 접속

  • DNS 이름을 복사하자
  • 클래식 로드 밸런서는 가상의 IP 를 제공해주지 않으므로 DNS 를 사용해야 한다. 허나, ELB 나 ALB 는 가상의 IP 를 제공해준다

  • 해당 도메인으로 접속하면 페이지에 잘 접속된다
profile
멋진 엔지니어가 될 때까지

0개의 댓글