09-5. 네임 서버 설치 및 운영
- 라운드 로빈 방식의 네임 서버 구축
대형 웹사이트에서 웹 서버를 운영할 때, 동시에 수백, 수천이나 그 이상의 접속이 있을 것이다.
그래서 대형 웹 사이트에서는 1대의 웹 서버만을 운영하지 않을 것이다.
아마도 여러 대의 웹 서버를 운영해서, 웹 클라이언트가 서비스를 요청할 경우에 교대로 서비스를 실시하게 될 것이다.
그렇게 되면 웹 서버의 부하를 공평하게 여러 대가 나눌 수 있다.
이러한 방식을 라운드 로빈(Round Robin) 방식이라고 부른다.
예를 들어, www.john.com에 해당하는 웹 서버를 3대 운영한다고 가정하자.
각각의 IP가 1.1.1.1, 1.1.1.2, 1.1.1.3이라면 외부의 사용자는 결국 john.com 네임 서버에 www.john.com의 IP주소를 질의하게 될 것이다.
이때, john.com 네임 서버는 물어오는 순서대로 1.1.1.1, 1.1.1.2, 1.1.1.3을 차례로 알려주면 된다.
그렇게 되면 3대의 웹 서버에 부하가 공평하게 나눠지는 것이다.
[라운드 로빈 방식의 네임 서버]
호스트OS의 명령 프롬프트에서 다음과 같이 입력을 하면, 다음(DAUM)과 같은 웹 사이트도
여러 대의 웹 서버를 운영하는 것을 확인해 볼 수 있다.
[Daum에서 운영하는 웹 서버들]
이번 실습을 위해서는 여러 대의 웹 서버를 설치해서 운영해야 한다.
그러기에는 우리의 환경이 여의치 않을 것이므로, 이미 인터넷에 구현된 다른 웹 사이트를
우리가 구현한 웹 서버라고 간주하고 실습을 진행하도록 하자.
그렇게 하면 라운드 로빈 방식이 더욱 확실히 눈에 보일 것이다.
즉, A, B, C 세 개의 웹 사이트를 www.john.com으로 접속할 때 차례로 보여주는 방식으로 하자.
잘 이해가 가지 않아도 걱정하지 말자. 실습을 따라 하면 쉽게 이해가 갈 것이다.
[실습]
라운드 로빈 방식의 네임 서버를 구현하자.
0.
앞 <실습 3>을 이어서 한다.
1. [ Fedora Server ]
Fedora Server를 라운드 로빈 방식의 네임 서버로 설정하자.
1-1 기존에 구축된 웹 서버의 IP를 몇 개 확인해 보도록 하자.
이번 예에서는 www.yes24.com, www.danawa.com, www.nate.com 세 개의 IP를 확인하겠다.
(접속이 되는 거라면 아무 웹 사이트의 IP주소를 지정해도 관계없다)
[기존 웹 서버의 IP주소 확인]
이렇게 확인한 3개의 IP주소(61.111.13.51, 119.205.194.11, 211.234.241.164)를
[라운드 로빈 방식의 네임 서버]의 그림에 나온 www.john.com의 3대 웹 서버로 가정하자.
1-2 에디터로 /var/named/chroot/var/named/john.com.db를 다음과 같이 수정하고,
저장한 후 닫는다.
(기존에 있던 'www IN A 192.168.100.111' 행은 삭제하였고,
'werserver.john.com'의 제일 뒤에 "."이 있는 것에 주의하자)
[라운드 로빈 설정]
1-3 변경 사항을 적용하기 위해서 "service named restart" 명령으로 네임 서버를 재가동한다.
[service named restart]
1-4 "nslookup" 명령으로 확인해 본다.
[라운드 로빈 설정 확인]
2. [ Fedora Client ]
외부에서 라운드 로빈의 작동을 테스트한다.
2-0 Fedora Client를 선택하고, VMware 메뉴의
[VM] -> [Snapshot] -> [클라이언트 설정완료]를 선택해서 초기화한다.
(초기화하지 않으면 기존의 정보가 캐시에 남아서 잘 작동하지 않을 수도 있다)
부팅하고, root 사용자 말고 본인이 만든 일반 사용자로 접속한 후 터미널을 연다.
(나는 master 사용자를 만들었다)
2-1 "su -c 'vi /etc/resolv.conf' "명령으로 네임 서버를
Fedora Server인 '192.168.xxx.111'으로 변경한 후 저장하고 닫는다.
[/etc/resolv.conf 파일의 네임 서버 변경]
2-2 웹 브라우저를 열어서, www.john.com에 접속해 본다.
또, 웹 브라우저를 닫고 다시 실행해서 www.john.com에 접속해 본다.
이렇게 반복하면 3개의 사이트가 계속 돌아가면서 나타날 것이다.
[라운드 로빈의 작동 확인]
지금은 확인을 위해서 www.john.com에 접속했을 때
3가지 다른 사이트로 접속되는 것을 해 보았지만,
실제는 웹 서버의 IP가 다를 뿐 www.john.com에 접속하면
당연히 모두 같은 웹 페이지가 나와야만 한다.