- 하루에도 수많은 사람들이 인터넷을 통한다.
- 검색과 영상 시청까지 아주 다양한 서비스를 이용한다.
- 만약, 많은 서비스를 담당하는 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로 다시 접속하는 모습을 보여주었다.
'IT > ㄴ Linux' 카테고리의 다른 글
[CentOS] Linux Samba Server 공유 / 인증 디렉토리 생성 [smbpasswd / testparm] (0) | 2023.07.27 |
---|---|
[CentOS] Linux Samba Server 구축 및 사용 [smbclient / samba] (0) | 2023.07.27 |
[CentOS] Linux NFS Server 구축 및 설정 [exports / showmount] (0) | 2023.07.26 |
[CentOS] Linux FTP Server 보안 / 사용자 접속 제한 [vsftpd / ftpusers / user_list] (0) | 2023.07.26 |
[CentOS] Linux FTP Server 동일 디렉터리 공유 방법 [chmod / vsftpd] (0) | 2023.07.26 |