brunch

You can make anything
by writing

C.S.Lewis

by Master Seo Jun 03. 2018

36. 웹사이트를 AWS로 이전하기, 이중화

웹사이트를 AWS로 이전해보자.

이전하며 이중화 하자~


<1> 문제점

<2> 개선방향

<3> 실행

<4> 이중화 대상 사이트

<5>  이전 순서

<6> 이전 상세



<1> 문제점


1) 웹사이트가 물리서버 1대에서 운영중이라 불안하다. - AWS로 백업을 운영한다.(완료)

2) 이전하면서 보안 패치도 하면 좋겠다. - OS나 Apache, PHP등 최선버전으로 재설치한다.(완료)

3) 비용은 많이 들지 않는선에 이전하고 싶다. - AWS로 이전 또는 백업으로 사용(완료)

4) 장애시 자동으로 백업서버로 서비스하고 싶다. - AWS Route53을 이용해 자동백업되도록 한다.(예정)

5) 가급적 무중단으로  이전하고 싶다. -  테스트필요 . AWS Route53 설정만 빨리하면 될듯  (예정)





<2> 개선방향


클라우드 시스템으로 이전하여 이중화 한다.

아마존 클라우드나 구글, MS클라우드를 사용하여 이중화한다.





<3> 실행


이전 선행조건 =>  클라우드 서비스 가입과 기술이해


1) 아마존 클라우드 가입 - AWS가입


AWS  가입 https://brunch.co.kr/@topasvga/77

AWS  네트워크 설정하기 https://brunch.co.kr/@topasvga/79

AWS 서버다운시 모니터링 하기 https://brunch.co.kr/@topasvga/88

AWS   DNS Route53 설정법 https://brunch.co.kr/@topasvga/86

AWS 소프트웨어 MFA로 로그인 보안 강화 설정하기 https://brunch.co.kr/@topasvga/95

계정 요금에 대해 메일로 받기 설정하기 https://brunch.co.kr/@topasvga/96




2) 구글 클라우드 가입과 DNS설정


구글클라우드 가입 https://brunch.co.kr/@topasvga/168

구글에 DNS설정법 https://brunch.co.kr/@topasvga/169




3) MS 클라우드 가입과 DNS설정 - Azure가입


MS클라우드 가입 https://brunch.co.kr/@topasvga/172

MS에 DNS설정법 https://brunch.co.kr/@topasvga/173




<4> 이중화 대상 사이트


www.it-pro1.com

toy1.mattzip.com

www.serverchk.com





<5>  이전 순서


1) 기존 서버에서 소스  압축하기

2)  AWS에서 네트워크, 서버 만들기

3) AWS서버에  Apache 설치하기

4) 기존 서버에서 소스를   AWS 서버에 복사하기

5) PC host 파일로 테스트

6) DNS에서 이전 하고자 하는 웹서버 IP를 AWS로 변경하기.

7) AWS서버로 웹사이트 이전 정상확인






<6> 이전 상세



1) 기존 서버에서 소스를  압축하기


htdocs# tar cvfp www.it-pro1.com.tar www.it-pro1.com/

htdocs# tar cvfp toy1.mattzip.com.tar toy1.mattzip.com/

htdocs# tar cvfp www.serverchk.com.tar www.serverchk.com/




2)  AWS에서 네트워크, 서버 만들기



로그인 https://console.aws.amazon.com/console/home


AWS 네트워크 , 서버 만들기 https://brunch.co.kr/@topasvga/79

테스트 서버 접속  

ssh -i "topasvga33.pem" ec2-user@ec2-52-79-36-74.ap-northeast-2.compute.amazonaws.com





3) AWS서버에  Apache  설치하기



웹서버 설치법 https://brunch.co.kr/@topasvga/18

AWS 공인IP로 웹접속 확인

AWS공인IP로 테스트 http://52.79.36.74/

안됩니다.

왜냐면  80포트 안열었거든요.

AWS - 보안그룹 - 작업 - 인바운드 규칙편집에서 80을 허용하면 됩니다.

http://52.79.36.74/    접속 성공

공인IP는 임시적인거라, AWS에서 고정공인IP를 받아야 한다.




VPC에서 EIP할당받고 서버(EC2)와 매칭한다.

탄력적 IP로 접속 성공  http://13.209.45.229/














4) 기존 서버에서 소스를   AWS 서버에 복사하기



tmp]# cp www.it-pro1.com.tar /usr/local/apache/htdocs/

tmp]# cp toy1.mattzip.com.tar /usr/local/apache/htdocs/

tmp]# cp www.serverchk.com.tar





5) PC host 파일로 테스트


이전하고자 하는 사이트를 AWS 서버 IP로 지정해 사전 테스트한다.




6) DNS에서 이전 하고자 하는 웹서버 IP를 AWS로 변경하기.





7) AWS서버로 웹사이트 이전 정상확인



정상확인

HTML상에  글씨 home을 home2로 변경한것이 AWS임.

http://www.it-pro1.com/

http://toy1.mattzip.com/

 


기타 사이트도 이전

http://power.mattzip.com/

http://www.mattzip.com

http://html.it-pro1.com/





다음 예정 작업 ~~~~~~~~~~~




1. DNS 설정변경(AWS Route53)하여  사이트 이중화 하기


참고 사이트


AWS 서버다운시 모니터링 하기 https://brunch.co.kr/@topasvga/88

Route53으로 Act-Act구성하기 https://brunch.co.kr/@topasvga/89




2. http://www.serverchk.com/  이전


1. PHP 사용하므로   PHP설치해야함.

# wget http://jp2.php.net/get/php-7.2.6.tar.gz/from/this/mirroryum install libxml2*

./configure --with-apxs2=/usr/local/apache/bin/apxs --with-config-file-path=/usr/local/apache/conf



감사합니다.




브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari