
=VPC Private subnet에 있는 aws 리소스가 인터넷으로 트래픽이 통할수 있도록 하는 서비스
우리는 AZ 2a용과 AZ 2c용 두개를 만들것이다
Nat Gateway 그 영역에 대한 Nat Gateway 하기 때문에 다른 영역에 대해서는 기능을 할수 없다.
Nat Gateway 를 생성해보자. 이름을 입력해준뒤 우리는 가용영역 2a, 2c public 서브넷에 생성할 예정이니 서브넷은 public -2a /public 2c 를 설정 해준다.
인터넷을 타고 나갈때는 공인 ip 를 타고 나가야하기떄문에 탄력적ip (Elastic ip) 를 사용한다
2a/ private 용 서브넷만을 위한 라우팅으로 편집해준다.
2c/private 서브넷 에 대한 라우팅 테이블 하나 또 생성해준다.
Nat Gateway 성공적으로 생성 완료!
★priavte 라우팅 테이블 두개나눈이유는 특정한 가용영역에 서비스 장애가 나면 한쪽은 서비스가 정상으로 되야대기떄문에 2개로 나눠서 트래픽을 흐르도록 구성하는것이다.
public subnet 에 Bastion을 만들어보자. Bastion을 만들떄는 저번에 만들어뒀던 AMI 를 이용하여 인스턴스를 생성한다.
새로만든 VPC + 위치는 2a public 서브넷
기본 디폴트값 설정들은 생략한다.
Bastion 용 키페어 하나 만들어 주자. 만드는 기존 인스턴스 생성할때랑 똑같다.
Bastion용 키페어 하나만드는게 훨씬 보안이강화 되는 구성이 되기떄문에 하나만드는것을 추천한다!
Bastion을 다 만들었으면 이제는 private서브넷/2a에 있는 EC2를 만들어주자.
만드는 방법은 기존 EC2만드는 방법과 동일하고 서브넷과 VPC설정만 주의 해주자
putty 로 Bastion 로그인을 해보자. putty Generater 로 호스트네임은 Bastion ip주소를 넣고 비밀번호는 준비해둔 Bastion ppk 를 넣어준다.
아직 이상태는 접속만 한상태이고 로그인은 하지 않은 상태이다.
명령어 sudo vi 파일명(key pair name) 입력해준다.(private EC2의 키페어이름)
이 상태에서 엔터를 치면 리룩스 편집기 창이 뜬다.
i를 눌러 insert모드로 바꾸고 pem키(EC2) 메모장으로 읽어드린값 을 붙여넣는다(마우스 오른쪽)
(스페이스바 공간 절대안됌) esc 누르면 insert모드가 없어지고 저장(=쉬프트 : + wq)
ssh -i seoul-lab-web-srv.pem(pem키값) ec2-user@private/ec2 프라이빗ip값
ssh -i pem이름 + ec2-user@private/EC2의 프라이빗IP값
비밀번호(ppk) 는 먼저 등록(?) 햇으니 Hostname(ip값) 을 입력 해주는것 같다...?
연결된 EC2로 웹서버로 잘 나가는지 테스트해봤다
연결성공뒤 웹으로 통신이 되는지 안되는지 확인 = 명령어 = ping google.co.kr
-> 웹으로 나갈때는 Nat Gateway를 타고나가라는 route를 추가해야함
=>Nat Gateway private 서브넷에잇는 aws 리소스가 웹으로 통신하러 나갈떄에 대한 연동되는 부분!
=> Bastion 을 통해 private ec2에 접속하고 private ec2 가 외부의 웹으로 통신할떄 테스트 진행부분이였다
-> 아직은 익숙하지 않아 어렵지만 배우면 배울수록 재밌는것 같다. 이러한 기능들을 사용해 프로젝트를 진행하고 서비스할 생각을 하니 정말 흥미롭지 않을수가 없다. 하루 빨리 더 많은 기술들을 배워보고 싶고 또 적용해 보고싶다!