[CentOS] Linux DNS Server와 NFS Server를 사용한 Web Server 이중화
Nowhere 와 Now here 의 차이

IT/ㄴ Linux

[CentOS] Linux DNS Server와 NFS Server를 사용한 Web Server 이중화

TIENE 2023. 7. 27. 15:41
반응형

- 하루에도 수많은 사람들이 인터넷을 통한다.

- 검색과 영상 시청까지 아주 다양한 서비스를 이용한다.

- 만약, 많은 서비스를 담당하는 Server가 죽는다면 끔직한 일이다.

- 저번 카카오 데이터센터 화재 사고로 인하여 수많은 사람들이 불편을 겪었다.

- 그만큼 서비스 다중 백업은 중요한 일이다.

 

 

- 카카오의 사고 사례를 언급하고 네이버의 구축 상태를 언급하는 것에는 아무런 감정이 없다.

- 다음과 같이 nslookup에서 www.naver.com 으로 IP 주소를 알아오는데 다수의 IP를 잘 받아와서 naver의 예를 들었다.

- 1 대 1로 대입하며 모든 것을 설명할 수는 없지만, 적어도 Web Server가 다중으로 운영하고 있다는 것을 알 수 있다.

 

- 이처럼 Server를 다중화하여, 부하분산과 내결함성의 장점을 가져갈 수 있다.

- 이를 바탕으로 간단하게, Web Server의 다중화를 테스트해보려고 한다.

 

[DNS Server와 NFS Server를 사용한 Web Server 이중화 ]


 1. 구성도 및 개요

- 192.168.1.131의 Server는  Main Web Server가 구축된 Linux Server이며 NFS Server로서 Web 관련 파일을 NFS로 공유하고 있다.

- 192.168.1.132의 Server는 Web Server가 구축된 Linux Server이며, 192.168.1.131의 Backup Web Server이다. Main Web Server에서 공유하고 있는 Web 파일을 NFS로 끌어와서 Web Server를 운영 중이다.

- 192.168.1.140은 Window Server 2003 운영 체제의 DNS Server 다. www.tiene1.vm  이라는 도메인 영역을 서비스하고 있다.  www.tiene1.vm 에 대한 IP 192.168.1.131과 192.168.1.132를 DNS 서비스 사용자에게 알려준다.

- PC는  www.tiene1.vm  을 접속한다.

 

 

- 모든 것이 정상 동작하고 있을때, 불의의 사고로 Main Web Server가 죽었다.

- PC는 이런 상황을 알 수 없고 여전히 Web Server로 접속하려고 할때, Backup Web Server가 잘 동작하는지 확인해보는 테스트다.


1. NFS Server & Web Server 구축하기

- 자세한 내용은 [CentOS] Linux NFS Server 구축 및 설정 [exports / showmount] 을 참고하면 된다.

- NFS Server와 Web Server를 모두 설치하고, /etc/exports에 공유할 디렉토리를 지정한다.

- Backup Server IP를 넣고 Web 디렉토리를 지정한다.

 

- Web Page는 적당하게 만들었다.

 

- NFS Client는 NFS Server에서 공유한 디렉토리를 마운트하고, Web Server를 설치한다.

- 마운트 디렉토리는 Web Server 디렉토리인 /var/www/html으로 지정한다.

 

- NFS Client에서 생성하지 않았던 index.html 파일이 있고, 이러한 이유는 NFS Server에서 생성된 파일과 디렉토리를 NFS Client 내 디렉토리에 마운트했기 때문이다.

- 따라서, Main Web Server가 죽었을 경우, backup된 Web Server 파일에 접속 할 수 있을 것이다.

 

 


 2. DNS Server 구축하기

- 자세한 내용은 [Win2003] DNS 서버 구성하기 [GNS3 연동] 에서 확인 가능하다.

- 두 개의 Web Server IP를 도메인 이름과 매칭한다.

 

 


3. PC에서 접속하기

- PC에서 도메인을 입력하면, DNS Server가 IP를 알려주고, 그 IP로 접속한다.

- PC의 Web Browser 는 Web Server에 요청한 Web Page를 출력하는데 Main Web Server가 먼저 나왔다.

 

- 이제 Main Web Server에 장애가 난 상황을 가정하고 Web Server를 중지시켰다.

 

- 다시 접속해보니 다음과 같이, NFS Server의 공유된 디렉토리 /var/www/html를 NFS Client의 /var/www/html에 마운트하였기 때문에, Main Web Server의 index.html을 잘 불러왔다.

 

 

추가 - Wireshark에서 확인하기

- Wireshark에서 확인해보는 것을 깜빡했다.

- 다시 구축하여 확인해보았다. Main Web Server의 장애를 가정하고 Web Server를 중지했다.

- 그리고, Client 에서 다시 접속했을 때, Backup Web Server로 접속하는 모습을 확인했다.

- 그리고, Client 에서 DNS Cache를 지우고, Main Web Server를 다시 재기동하여 접속했고, Main Web Server로 다시 접속하는 모습을 보여주었다.


 

반응형