CentOS 에 Xen 설치 및 설정

가상화/Xen 2010. 7. 18. 00:32 Posted by Relipmoc
※ 이 문서는 /hosting/xen 에 작업한다는 가정 하에 작성된 문서입니다. 유의하시기 바립니다.

.. 먼저 Xen 을 설치하기 전에 OpenVZ 를 설치할려고 했지만 꼭 Windows 를 올릴필요가 있어서 할 수 없이 Xen 을 선택했다.
Xen 은 가상화 하이퍼바이저로서 적어도 VMWare(-_-)보다는 높은 효율을 뽑아낸다. 우분투에서는 실패했지만 CentOS 에서는 강력한(?) 패키지가 있어서 컴파일 한번 없이 간단하게 설치할 수 있었다.

# yum install kernel-xen xen xen-libs xen-devel libvirt
# reboot

이 두 명령어 하나로 충분하다 -_-

리붓후 다행히 커널패닉이 안났다면 바로 VM 을 만들어 준다.
Vm 을 만들기 전에 network 부분도 설정을 해야 하지만 다른 블로그나, 웹 문서에 자세히 설명이 되어 있기 때문에, 굳이 여기서 길게 설명할 필요가 없을것 같아서 넘어가도록 하겠다.

덧. 서버 말고 노트북에 깔았을때 GRUB 의 root device 설정문제로 한번 패닉이 난적이 있었다.
일단은 제일 쉬운 CentOS 를 올려보도록 하겠다.

# wget http://centos.mirror.cdnetworks.com/5.5/os/x86_64/images/xen/initrd.img -O /hosting/xen/boot/initrd.img
# wget http://centos.mirror.cdnetworks.com/5.5/os/x86_64/images/xen/vmlinuz -O /hosting/xen/boot/vmlinuz
이 두 파일을 받은 후 에,
# dd if=/dev/zero of=xen-test.disk bs=100M count=10
dd 명령어로(↑) 디스크를 만들어준 뒤, /etc/xen/xen-test 에 아래와 같은 내용을 작성한다.

kernel = "/hosting/xen/boot/vmlinuz"
ramdisk = "/hosting/xen/boot/initrd.img"
#bootloader = "/usr/bin/pygrub"
name = "test"
memory = "256"
disk = [ 'tap:aio:/hosting/xen/xen-test.disk,xvda,w']
vif = [ 'bridge=virbr0', ]
vcpus=1
on_crash = 'destroy'

대충 읽어도 아실거라 믿지만, 혹시 모르니 설명을 하도록 하겠다.
kernel : 커널 바이너리다.
ramdisk : ... kernel 과 ramdisk 는 설치할 때만 필요하고, 설치가 끝나면 주석처리 해줘야 하는 부분이다.
bootloader : 이 부분은 설치가 끝나면 주석을 풀고 kernel, ramdisk 를 주석처리 해준다. 정확히 뭔지는 모르겠지만 아마 vm 에 설치된 커널을 올리기위한 도구 같다. 일종의 GRUB 삘.
name : 이름.
memory : RAM.
disk : dd 명령어로 만든 디스크 파일을 넣어주면 된다
vif : 네트워크.
vcpus : CPU 코어 할당 개수
on_crash : 크래쉬가 낫을때 어떻게 처리해야 하는지 명시해 주는 부분이다. 이외에 on_reboot on_shutdown 등이 있다.

다 됬으면

# xm create xen-test

로 vm 을 생성하고 바로 콘솔에 들어가서 설치를 진행한다.

# xm console xen-test

설치가 완료되면, 위에도 써놨듯이 kernel, ramdisk 부분을 주석처리하고, bootloader 를 주석해제 하면된다.
그리고 다시

# xm create xen-test
로 Vm 을 생성하여, 삽질하시면 된다.

===============================

수고 하셨습니다.



댓글을 달아 주세요