베하 안녕하세요 ~~! BTC_현상수배범입니다.
이번 시간에는 NLB EIP를 사용하여 Private 서버 속 및 Private RDS 접속하는 간단한 실습을 해보도록 하겠습니다.
1. 아키텍처 구성도
해당 구성도에서 NLB의 IP주소를 이용하여 Private에 있는 WEB 서버에 SSH 접속을 진행하고 RDS endpoint 대신 NLB의 IP주소를 이용하여 외부에서 RDS 접근하는 방법(mysqlworkbench 사용)을 진행해보도록 하겠습니다.
2. 사전 요구 사항
1)mysqlworkbench 설치 (RDS 외부 접근 용)
https://zincod.tistory.com/247 해당블로그 참고하여 진행해주세요~
3.실습 순서
1)VPC 등 생성
-VPC 등으로 생성해주시고 가용영역은 a존 c존으로 설정한 후 퍼블릭 서브넷 2개, 프라이빗 서브넷 4개로 설정한 뒤 cidr 값은 디폴트 값으로 설정해주고 생성을 해줍니다!
※참고 : nat, vpc 앤드포인트 cidr 값 등은 고객사의 상황에 따라 달라지나, 현재는 실습과정이므로 해당과정은 넘어가도록 하겠습니다.
2)private subnet에 ec2 생성
※해당 부분은 이번 실습에서 주된 주제가 아니기 때문에 간략하게 패스하도록 하겠습니다!
-OS amazon linux 2 ami
-t2,micro
-키페어 생성(있을 경우 생략)
-보안그룹은 일단 SSH만 my ip로 새로 생성
-이전에 만든 vpc와 private 서브넷에 ec2를 배치
-나머지는 디폴트 값으로 설정하고 생성하기를 눌러줍니다!
3)private subnet에 rds 생성
※해당 부분은 이번 실습에서 주된 주제가 아니기 때문에 간략하게 패스하도록 하겠습니다!
-DB 엔진 : mysql
-DB 인스턴스 ID, 마스터 사용자 이름 : db
-다중 AZ DB 인스턴스
-초기 데이터 베이스 이름 및 비밀번호는 기억해주세요~! 나중에 mysql workbench 로컬에서 접속할 때 사용할 예정입니다
-vpc 및 보안그룹 : 이전에 생성했던 vpc와 db 보안그룹(3306)으로 생성
-나머지는 default 값으로 생성해줍니다.
4)NLB에 사용할 eip 생성
-nlb ip주소가 유동적으로 변경되는 것을 막기 위해 eip 주소를 할당해줍니다. 나중에 이 eip 주소는 nlb를 생성할 때 네트워크 매핑 작업에서 사용할 것이니 생성만 미리 해두세요~!session 끊김 현상 발생 방
5)NLB 생성
생성한 VPC의 az와 eip 주소를 할당해줍니다. 여기서 public으로 설정해야 external nlb주소를 통해 외부에서 web이나 rds에 접근할 수 있게 됩니다!
6)Target Group 생성
1)web -targetgroup : 기본 구성을 ip로 설정한 후 web 서버의 프라이빗 주소를 입력해줍니다.
2) rds-targetgroup : rds-tg도 ip로 구성을 해주는데 해당 rds의 endpoint는 nslookup 명령어를 사용하여 ip주소를 확인할 수 있습니다. 해당 작업도 위의 web-tg 구성방법과 동일하게 진행합니다.
7)리스너 편집
web -ssh 접속 포트 (22)
rds -mysql 접속 포트 (3306)
8)보안그룹 수정
web-sg
nlb가 mapping 된 ip 대역 대를 보안그룹에 추가
db-sg
nlb가 mapping 된 ip 대역 대를 보안그룹에 추가
9)NLB EIP를 사용하여 WEB서버 접속
이제 nlb eip 주소를 활용해서 A존에 있는 web 서버에 접속해 보겠습니다.
10)NLB EIP를 사용하여 RDS 접속
위와 동일하게 nlb eip를 사용해서 로컬에서 rds에 접속해보겠습니다~!
해당 실습을 통해 NLB EIP를 사용하여 Private 서버 속 및 Private RDS 접속하는 방법에 대해 구축해보았습니다.
여러 환경에서 NLB를 변칙적으로 사용하는 방법에 대해 알아봤는데요. 다음 시간에는 더 흥미로운 주제로 찾아뵙겠습니다!!
다음에 또 만나요 ~~ 베빠~!
'CSP (Cloud Service Provider) > AWS' 카테고리의 다른 글
[AWS] Solutions Library_Instance Scheduler (0) | 2023.07.05 |
---|---|
[AWS] AWS S3 버킷의 수명 주기(Lifecycle)와 버전관리 (0) | 2023.07.04 |
[AWS] S3 Pre-signed URL (0) | 2023.06.27 |
[AWS] Amazon ElastiCache와 MemoryDB for Redis (0) | 2023.06.25 |
[AWS] Solutions Library (0) | 2023.06.23 |
댓글