위 그림과 같이 VPC 안에 Pricate Subnet,Public Subnet을 각각 한개씩 구성하고 Internet Gateway를 통한 외부와의 통신 그리고 Nat Gateway를 이용해 Public Subnet에서 Private Subnet으로 통신할 수 있게 구축을 해보자!!
인터넷 게이트의 상태가 Attatched로 바뀌었고 VPC ID도 등록된걸 볼 수 잇다.
ip주소에서 라우팅 경로를 정의해 서브넷 밖으로 나가는 아웃바운드 트래픽에 대한 라우팅 경로를 설정하는 것이다. 퍼블릭 서브넷용 라우팅 테이블과 프라이빗 서브넷용 라우팅 테이블을 설정하자
1. 좌측 메뉴바에서 라우팅 테이블로 이동한다.
2. 우측 상단 라우팅 테이블 생성 Click
3. 이름 적고 라우팅 테이블 생성 Click - 퍼블릭 서브넷용 라우팅 테이블
4. 3번 처럼 브라이빗 서브넷용 라우팅 테이블도 생성한다
5. 라우팅 테이블 리스트에서 study-public-rt를 선택하고 하단에 나오는 정보의 서브넷 연결에서 서브넷 연결 편집 Click
6. 퍼블릭 서브넷 선택하고 연결 저장
이렇게 하면 퍼블릭 서브넷에 study-public-rt가 연결된다.
7. 5,6번을 study-private-rt에도 똑같이 적용해 준다.(프라이빗용 이니까 서브넷도 프라이빗을 선택하자)
8. study-public-rt의 하단 세부정보의 라우팅에서 라우팅 편집 Click
라우팅 추가를 눌러서 0.0.0.0/0, 인터넷 게이트웨이(텍스트 필드 클릭해서 인터넷 게이트웨이를 누르면 자동으로 아까 만들어둔 인터넷 게이트웨이 나옴)를 설정하고 변경사항 저장, 퍼블릭 서브넷은 외부와 통신하기 때문에 인터넷 게이트웨이를 라우팅에 추가해준다.
9. study-private-rt의 하단 세부정보의 라우팅에서 라우팅 편집 Click
--> 여기서 해야하는건 NAT Gateway 라우팅 추가인데 아직 안만들었으니까 만들고 하자!
NAT 게이트웨이 생성에 앞서 Elastic IP(탄력적 IP)를 할당 받자!
1. 좌측 메뉴바에서 탄력적 IP Click
2. 우측 상단 탄력적 IP 주소 할당 Click하고 안에서 별다른거 건드리지말고 그냥 할당 Click
3. 그리고 좌측 메뉴바에서 NAT 게이트웨이 Click
4. 우측 상단 NAT 게이트웨이 생성 Click
5. 이름을 적고 서브넷은 아까 만든 퍼블릭 서브넷으로 설정한다
6. 연결 유형은 퍼블릭으로하고(프라이빗으로하면 NAT를 통해 트래픽 인터넷 도달 안됨) 2번에서 만든 탄력적 IP 할당하고 NAT 게이트웨이 생성 Click
상태 Pending에서 Available로 바뀔때까지 진득하게 기다리자..
바뀌면 다시 라우팅 테이블로 이동하자!!!!
7. study-private-rt의 하단 세부정보 라우팅에서 라우팅 편집 Click
0.0.0.0/0 설정하고 텍스트 필드 눌러서 NAT 게이트웨이 누르고 방금 만든 NAT 게이트웨이 선택하고 변경사항 저장 -> 프라이빗 서브넷은 라우트를 통해서 퍼블릭 서브넷에 있는 NAT 게이트웨이를 통해서 트래픽이 이동하게 된다.
이렇게 하면 VPC 네트워크 구축이 끝났다. 이제 퍼블릭 서브넷에 인스턴스를 한개 만들고 프라이빗 서브넷에 인스턴스를 한개 만들어서 잘 되는지 확인해보자!
잘 연결되었는지 확인
1. 프라이빗 서브넷의 인스턴스에 접근하기 위해 먼저 퍼블릭 서브넷 인스턴스에 연결한다.
2. 퍼블릭 서브넷의 인스턴스에 연결 후, 프라이빗 서브넷의 인스턴스에 연결하기 위해 키 복사(키 페어 생성 시 다운로드한 pem 파일의 내용을 그대로 복사해서 파일로 저장)
3. 키 페어 권한 400 으로 변경
4. 키 페어 파일을 이용해서 프라이빗 서브넷의 인스턴스로 연결