2012년 12월 10일 월요일

노트북에 분산환경을 위한 가상머신 구축하기 #3

새로운 가상머신 추가
지금까지 가상머신을 이용하여 노트북에 분산환경을 구축하기 위한 노드 하나에 대한 작업을 끝냈다. 3개의 노드를 만들겠다면 지금까지 했던 과정을 2번 반복하고 4개 만들겠다면 3번 반복하면 된다. 끝~
.
.
.
.
.
.
다시 하려니 막막하다. 다른 방법은 없을까? 있다!! VirtualBox에 복제라는 기능이 있다. 양이랑 개만 복제하는 줄 알았는데 가상머신도 복제할 수 있다. 이 기능을 이용하여 다른 노드는 쉽게 추가할 수 있다.
복제하고자 하는 가상머신을 선택하고 오른쪽 버튼을 누르면 "복제" 메뉴가 보인다. 과감히 선택하자. 다음과 같은 화면을 볼 수 있다.
복제해서 만들어질 가상머신의 이름을 입력하고 MAC 주소 초기화 옵션을 체크하자. "다음" 버튼을 누르면 복제방식을 선택하는 화면이 나타난다.
Deep하게 Copy하는 "완전한 복제"를 선택하고 복제를 시작하자.
복제 진행정도를 나타내는 프로그레스 바가 나오는데 전혀 믿을 수 없다. 10시간 넘게 기다리라고 하기도 한다. 취소하지 말고 기다리자. 수십분 안에 끝난다. 복제가 끝나면 이전에 없던 새로운 가상머신(beta.centos)이 만들어져 있다.
새로운 가상머신 네트워크 설정
만들어진 가상머신을 똑같이 복제하여 생성했기 때문에 두 가상머신의 시스템 설정이 똑같다. IP주소도 똑 같고, 호스트 명도 똑같고 모든 것이 다 똑같다. 이러한 설정들을 복제된 가상머신에 맞게 바꿔 줄 필요가 있다. 바꿀 설정값은 다음과 같다.
설정 작업
포트 포워딩 복제한 가상머신의 포트 포워딩 값을 그대로 가지고 있으므로 복제된 가상머신에 맞게 변경하기.
호스트명 변경 복제한 가상머신의 호스트 이름을 그대로 가지고 있으므로 이것도 변경해 주자.
MAC 주소 변경 복제된 가상머신의 네트워크 설정 파일의 MAC 주소를 새로 부여된 MAC 주소로 변경하기.
포트 포워딩
VirtualBox 관리자에서 가상머신의 설정 버튼을 누르고 네트워크 설정탭에 들어가 변경하면 된다. (노트북에 분산환경을 위한 가상머신 구축하기 #2 참고.)
호스트명 변경
이제 복제된 가상머신을 시작하자. 시작하면 다음 화면과 같이 가상머신의 호스트 이름이 복제한 가상머신과 같게 나오는 걸 볼 수 있다.
다음 명령을 이용하여 호스트 명을 변경하자.
[root@alpha ~]# hostname beta.centos
"/etc/sysconfig/network" 파일에서 HOSTNAME도 변경하자. 다시 로그인하면 바뀐 호스트명을 볼 수 있다.
MAC 주소 변경
내/외부 접속을 위하여 가상머신의 ifcfg-eth0, ifcfg-eth1 파일 내 MAC 주소를 변경해야 한다. VirtualBox의 가상머신 네트워크 설정화면에서 각 네트워크 어댑터의 MAC 주소를 보고 각 파일을 변경하자. 변경할 부분은 다음과 같다.
[root@beta ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
BOOTPROTO="dhcp"
NM_CONTROLLED="yes"
ONBOOT=yes
TYPE="Ethernet"
HWADDR=08:00:27:79:0A:FB    <- 변경할 부분
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
NAME="System eth0"


[root@beta ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE="eth1"
BOOTPROTO="none"
NM_CONTROLLED="yes"
ONBOOT=yes
TYPE="Ethernet"
HWADDR=08:00:27:46:1B:5B    <- 변경할 부분
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
NAME="System eth1"
NETMASK=255.255.255.255
IPADDR=192.168.70.12        <- 변경할 부분
GATEWAY=192.168.70.1
마지막으로
이런식으로 만들어 놓은 가상머신을 복제하고 설정을 변경함으로써 가상머신을 계속 만들 수 있다. 호스트 PC의 성능에 따라 만들 수 있는 가상머신의 개수는 차이가 있겠지만 3개 정도는 돌릴 수 있지 않을까 생각한다. 난 내 PC에 가상머신을 3개 만들어 테스트를 위한 분산환경을 구축해 놓았으며 다음과 같이 설정하였다.
번호 호스트 명 내부 IP
1 alpha.centos 192.168.70.11
2 beta.centos 192.168.70.12
3 gamma.centos 192.168.70.13
가상머신들을 이용항 Hadoop Cluster를 구성해서 사용 중이다. 조금 느린 듯 해도 분산환경에서 이것 저것 해 보기에 꽤 괜찮다.
저작자: Yes, 상업적 이용: No, 컨텐츠 변경: No

댓글 없음:

댓글 쓰기