서버 설정 · 4 min read · Dec 05, 2025
우분투 하디 헤론 (8.04) 서버 시스템 (amd64)에서의 XEN - 고성능
우분투 하디 헤론 (8.04) 서버 시스템 (amd64)에서의 XEN - 고성능
이 튜토리얼은 디스크 I/O 및 네트워크 처리량을 손상시키지 않고 우분투 하디 헤론 (8.04) 서버 시스템 (amd64)에 XEN을 설치하는 방법에 대한 단계별 지침을 제공합니다. 여기에서 사용된 모든 소프트웨어는 우분투 저장소에서 찾을 수 있으므로 외부 파일이나 소스 컴파일이 필요하지 않습니다.
Xen은 x86 프로세서 아키텍처를 위한 오픈 소스 파라 가상화 가상 머신 모니터(VMM) 또는 ‘하이퍼바이저‘입니다. Xen은 단일 물리적 시스템에서 여러 가상 머신을 안전하게 실행할 수 있으며, 거의 네이티브 성능을 제공합니다. Xen은 다음과 같은 기업급 기능을 지원합니다:
- 네이티브 하드웨어에 가까운 성능을 가진 가상 머신.
- 물리적 호스트 간의 실행 중인 가상 머신의 라이브 마이그레이션.
- 게스트 가상 머신당 최대 32개의 가상 CPU, VCPU 핫플러그 지원.
- x86/32, x86/32 PAE 지원, x86/64 플랫폼 지원.
- 수정되지 않은 게스트 운영 체제(마이크로소프트 윈도우 포함)를 위한 인텔 가상화 기술(VT-x).
- AM2 및 F 스테핑 Opterons(2006H2)에서의 AMD 가상화 기술(SVM, 일명 Pacifica).
- 우수한 하드웨어 지원(거의 모든 리눅스 장치 드라이버 지원).
1. 파티션 및 기본 OS 설치
호스트 OS(dom0)와 게스트 운영 체제(domU) 모두에 대해 우분투 하디 헤론(x86_64)을 사용할 것입니다. 이를 위해 다음 예와 같이 파티션이 준비된 대상 시스템이 있어야 합니다:
예를 들어, 120GB의 디스크 공간이 있고 그 위에 2개의 게스트 운영 체제를 사용하고자 합니다:
- 호스트 OS(dom0)에 필요한 최소한의 공간을 차지하도록 10-12GB를 할당합니다 => 따라서 첫 번째 파티션을 그에 맞게 생성합니다.
- 나머지 여유 공간을 2개의 파티션으로 나누어 각 게스트 OS(domU)에 할당합니다 => 따라서 다음 두 개의 파티션을 그에 맞게 생성합니다.
우분투 하디 헤론(x86_64) 서버 에디션(http://www.ubuntu.com/products/whatisubuntu/serveredition)을 첫 번째 파티션에만 설치합니다. 이후 이 위에 Xen 관련 소프트웨어를 설치하고 이를 호스트 OS(dom0)로 사용합니다. 더 나은 관행에 따라, dom0는 게스트 OS를 제어하는 것 외에는 어떤 생산 용도로도 사용해서는 안 됩니다. 따라서 OS 설치 중 패키지 선택에서 “ssh”만 선택하십시오.
OS 설치 후 첫 번째 작업은 OS를 업데이트/업그레이드하는 것입니다. 루트로 시스템에 로그인하고 다음 명령을 입력합니다:
# apt-get update
# apt-get upgrade2. 호스트 OS 및 Xen 설치
Xen 및 모든 필요한 종속성을 설치하려면 다음 명령을 실행하면 됩니다:
# apt-get install ubuntu-xen-serverubuntu-xen-server 패키지는 우분투 커널 2.6.24-17-xen 및 기타 종속 xen 패키지를 설치합니다.
또한 vi 편집기를 다음과 같이 업그레이드합니다:
# apt-get install vim부팅할 때마다 커널에 루프 모듈을 추가해야 하므로 /etc/modules를 편집합니다. 이미 루프 라인이 있다면 다음과 같이 수정하고, 없다면 파일의 맨 아래에 추가합니다:
# vi /etc/modulesloop max_loop=64그게 전부입니다. 이제 시스템을 재부팅하십시오. 재부팅 후 OS 및 xen 서비스를 다음과 같이 확인합니다:
# uname -a
# xm list3. 게스트 OS(domU)를 위한 파일 시스템 생성
domU 생성을 위해 “debootstrap“를 사용할 것입니다. 여기서는 더 나은 디스크 I/O를 위해 직접 물리적 디스크 파티션을 사용하고 파일 시스템 이미지는 사용하지 않습니다. 따라서 파일 시스템 선택에 따라 파티션을 포맷합니다. xfs 파일 시스템에 관심이 있다면 dom0에 “xfsprogs” 패키지를 다음과 같이 설치해야 합니다:
# apt-get install xfsprogs두 번째 파티션에 파일 시스템을 생성하기 위해 다음 명령을 사용합니다:
ext3를 선택하는 경우:
# mkfs.ext3 /dev/sda2xfs를 선택하는 경우:
# mkfs.xfs /dev/sda2대상 파티션에 파일 시스템을 생성한 후 /mnt에 마운트합니다:
# mount /dev/sda2 /mnt4. 게스트 OS 설치
/mnt에 기본 OS를 “debootstrap”를 사용하여 설치합니다:
# debootstrap --arch amd64 hardy /mnt http://archive.ubuntu.com/ubuntu이는 인터넷 연결 속도에 따라 시간이 걸릴 수 있습니다.
완료되면 /mnt에 대한 chroot 환경을 준비합니다:
# mount --bind /dev /mnt/dev# mount proc /mnt/proc -t proc# chroot /mnt /bin/bash다른 터미널을 열고 dom0에서 /mnt의 해당 폴더로 몇 개의 파일을 복사합니다:
# cp /etc/resolv.conf /mnt/etc/resolv.conf# cp /etc/network/interface /mnt/etc/network/interface# cp /etc/apt/source.list /mnt/etc/apt/sources.list# cp -R /lib/modules/2.6.24-17-xen/* /mnt/lib/modules/2.6.24-17-xen/(해당 폴더가 존재하지 않으면 복사하기 전에 생성하십시오.)
이제 domU chroot 환경에서 다음 명령을 사용합니다:
# apt-get update# apt-get upgrade# apt-get install vim sshxfs 파일 시스템을 사용하는 경우 xfsprogs도 다음과 같이 설치합니다:
# apt-get install xfsprogs/etc/fstab을 다음과 같이 업데이트합니다:
ext3 파일 시스템을 사용하는 경우:
/dev/hda1 / ext3 defaults 1 2xfs 파일 시스템을 사용하는 경우:
/dev/hda1 / xfs defaults 1 2이것이 domU 환경의 최소 설정입니다. 이제 루트 비밀번호를 다음과 같이 설정합니다:
# passwd루트 비밀번호를 입력하라는 메시지가 표시되므로 비밀번호를 입력하십시오.
이제 chroot 환경에서 나옵니다:
# exit이제 모든 파티션을 언마운트합니다:
# umount /mnt/dev /mnt/proc /mnt5. Xen 구성 파일 생성
이제 /etc/xen/ 폴더에 첫 번째 게스트 OS의 xen 구성 파일을 domu1.cfg라는 이름으로 생성합니다:
vi /etc/xen/domu1.cfgkernel = '/boot/vmlinuz-2.6.24-17-xen'
ramdisk = '/boot/initrd.img-2.6.24-17-xen'
memory = '512'
#
# 디스크 장치들.
#
root = '/dev/hda1 ro'
disk = [
'phy:/dev/sda2,hda1,w',
]
#
# 호스트 이름
#
name = 'domu1'
#
# 네트워킹
#
vif = [ 'ip=192.168.1.102,mac=00:16:3E:62:DA:BB' ]
#
# 동작
#
on_poweroff = 'destroy'
on_reboot = 'restart'
on_crash = 'restart'
vcpus = '2'
extra = 'xencons=tty1'각 게스트 OS에 대해 무료이고 다른 IP를 사용해야 합니다.
그런 다음 첫 번째 domU를 다음과 같이 시작합니다:
# xm create /etc/xen/domu1.cfg -c루트로 로그인하면 됩니다. 이제 첫 번째 게스트 OS(domu1)가 준비되었습니다.
dom0에서 실행 중인 OS를 나열하려면 다음을 입력합니다:
# xm list/dev/sda3에 두 번째 가상 시스템을 만드는 단계는 유사합니다…
i386에 대해서도 동일한 단계를 따를 수 있습니다…
감사합니다.
새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.