레드햇 엔터브라이즈 리눅스 (RHEL6) 환경에서 KVM을 이용하여 가상화를 구성할경우 NAT 보다는 Bridge를 이용하여
TCP/IP를 통신할수 있도로 구성한다. virt-manager는 VM에 대한 환경구성에 대한 부분만 지원하기 때문에 하이퍼바이저 환경
구성은 지원하지 않는다. 아래의 절차대로 구성을 진행한다.
1. KVM의 기본구성은 NAT로 구성된다.
초기 가상화 구성시 아래와 같이 virtbr0로 나타나게 되면 NAT로 구성되어 있다고 판단해도 무방하다.
# ifconfig virbr0 virbr0 Link encap:Ethernet HWaddr 00:00:00:00:00:00 inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.255.0 inet6 addr: fe80::200:ff:fe00:0/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:39 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 b) TX bytes:7921 (7.7 KiB) |
위와 같이 NAT가 확인되었으면 아래의 절차대로 Bridge로 변경하는 작업을 진행해 준다.
1. virtbr0를 지운다. (물론 Ethernet Interface가 많으면 상관없다.)
2. /etc/sysconfig/network-script/ifcfg-eth0의 스크립트 파일에 dhcp 기능을 지우고 br0로 변경
3. br0를 만드는데 BOOTPROTO는 네트워크 환경에 따라 설정해 준다. (DHCP 환경이라면 DHCP로 지정)
DEVICE=br0
TYPE=Bridge
BOOTPROTO=static
BROADCAST=192.168.1.255
IPADDR=192.168.1.10
NETMASK=255.255.255.0
NETWORK=192.168.1.0
ONBOOT=yes
USERCTL=no
IPV6INIT=no
PEERDNS=no
ONBOOT=yes
2. NAT 네트워크 제거
위와 같이 인터페이스 파일에 브릿지 설정이 정상적으로 설정이 되었으면 기존의 NAT로 설정된 인터페이스를 제거해 준다.
2.1 virsh list를 이용하여 NAT 인터페이스 확인한다.
# virsh net-list Name State Autostart ----------------------------------------- default active yes
2.2 버추얼 네트워크 이름이 'default'로 되어있는 것을 Destory 한다.
# virsh net-destroy default # virsh net-undefine default # service libvirtd restart
eth0 의 dhcp 를 지우고 br0 로 Bridged 한다.
다음과 같이 합니다.
cat > ifcfg-eth0 <
DEVICE=eth0
HWADDR=00:16:76:D6:C9:45
ONBOOT=yes
BRIDGE=br0
NM_CONTROLLED=no
EOF
br0를 만든다.
다음과 같이 합니다.
# cat > ifcfg-br0 <
DEVICE=br0
TYPE=Bridge
BOOTPROTO=dhcp
ONBOOT=yes
DELAY=0
NM_CONTROLLED=no
EOF
위과정을 거치면 설정은 끝납니다. 한가지 더 있는데, 리눅스의 NetworkManager 데몬을 꺼주고 network 서비스를 다시 올려줍니다.
# chkconfig NetworkManager off
# chkconfig network on
# service NetworkManager stop
# service network restart
이제 virt-manager 로 KVM 게스트를 설치할 다음과 같이 이더넷을 설정해 주면 됩니다.
'Linux 이야기. > LInux Article.' 카테고리의 다른 글
Linux Bonding ARP option (0) | 2012.11.06 |
---|---|
dmidecode를 이용한 시스템 상태확인 (0) | 2012.11.02 |
Linux System Hang을 잡아라 NMI_Watchdog (0) | 2012.06.11 |
Linux CFS로 다중 프로세스 관리하기.. (0) | 2012.05.25 |
Linux Shared Memory에 대한 Handling (0) | 2012.05.25 |