AWS

On-premise infra를 AWS로 Migration

홍덕화 2019. 1. 14. 13:39

프로젝트 목표


On-Premise를 AWS로 Migration할 때 데이터 무결성 보장, 다운타임 최소화, 고가용성 보장



프로젝트 기대효과


자본 비용을 가변 비용으로 대체

- 규모의 경제로 얻게 되는 경제적 효과

- On-Premise 데이터 센터 운용 및 유지 관리에 대한 비용 절감

- 속도 및 민첩성 개선

- 데이터 무결성 보장

- 고가용성으로 인한 안정성 향상



프로젝트 진행 순서



1. On-Premise 환경 구축


2. Migration


3. AWS 환경 구축





1. On-Premise 구축


On-Premise 구축시 고려사항


- Untangle을 사용한 방화벽 구축으로 Private-Zone과 DMZ-Zone 구분

-OpenVPN으로 내부 네트워크를 구축하여 보안성 향상



On-Premise 구성도





Untangle 설정






외부 통신을 위한 Network Card





포트 포워딩





Access Rule





Filter Rule



OpenVPN





내부 네트워크용 OpenVPN



ESXi, VCSA 구축





On-Premise Server들을 관리할 ESXi와 VCSA를 설치한 뒤 서버 구축



Web Server 구축





Django를 활용한 Web Server 구축



Active Directory Server 구축





OpenVPN 내에서 AD가입을 하기 위해 먼저 OpenVPN 연결





Mail Server에서 AD Member Server 가입



AD 인증을 통한 Mail Server 구축





AD 인증을 통한 사용자 계정 추가





WIndows Live Mail에 계정 추가





계정 정상 접속 확인



DNS Server 구축





FTP Server 구축





디렉토리 목록 조회 확인





디렉토리 목록 조회 확인



DB Server 구축




MySQL을 사용한 Database 구축



2. Migration


Migration 목표


- VPN을 통한 Active Directory와 Database의 보안을 유지한 상태로 Migration

- 다운타임 최소화

- 무결성 유지



VPN 생성


https://honggg0801.tistory.com/29


Server Migration


https://honggg0801.tistory.com/6


Database Migration


https://honggg0801.tistory.com/11


Active Directory Migration


https://honggg0801.tistory.com/30



3. AWS 환경 구축



AWS 구성도





VPC 구성





서울 리전에 사용할 VPC 대역을 생성한다.





두 개의 가용영역에 Public, Private Subnet을 하나씩 생성한다.





Private Subnet의 Routing Table은 내부 통신을 위한 local 10.0.0.0/16과 On-Premise에서 Migration을 위해 연결한 VPN의 VPG가 존재한다.





Public Subnet의 Routing Table은 외부 통신을 위한 igw(Internet Gateway)를 추가적으로 설정하였다.





보안 그룹은 각각의 서비스별로 다르게 구성하여 보안 수준을 향상시켰다.


Auto-Scaling 및 ELB 구성


https://honggg0801.tistory.com/17


CloudWatch를 이용한 SNS 구성


https://honggg0801.tistory.com/19




부하테스트


AWS CloudWatch를 사용하여 설정한 임계치를 넘으면서 부하 발생시, 지정해둔 관리자의 E-Mail로 알림이 가고

Auto-Scaling 기능을 통해 Scale out하여 확장한다.





평상시 CloudWatch 대시보드의 모습이다


부하 테스트를 위한 시스템에서 ab명령어를 통해 Web Instance에 부하를 준다.



CloudWatch 대시보드에서 부하에 대한 경고 메시지가 나오면서 지정해둔 관리자의 메일로 알림이 간다.





알림 메일이 온 것을 확인할 수 있다.





Auto-Scaling Group 설정으로 자동으로 확장된 EC2를 확인할 수 있다.



위의 과정으로 On-Premise Infra를 AWS로 Migration 해보았다.