OpenVZ 설치 · 3 min read · Dec 08, 2025

CentOS 6.0에 OpenVZ 설치 및 사용

CentOS 6.0에 OpenVZ 설치 및 사용

버전 1.0
저자: Falko Timme
Twitter에서 나를 팔로우하세요

이 HowTo에서는 OpenVZ를 위해 CentOS 6.0 서버를 준비하는 방법을 설명합니다. OpenVZ를 사용하면 Xen 및 Linux Vserver 프로젝트와 유사하게 동일한 하드웨어에서 여러 개의 가상 사설 서버(VPS)를 생성할 수 있습니다. OpenVZ는 많은 공급자가 제공하는 가상 서버에 사용되는 상업적 가상화 솔루션인 Virtuozzo의 오픈 소스 분기입니다. OpenVZ 커널 패치는 GPL 라이센스 하에 라이센스가 부여되며, 사용자 수준 도구는 QPL 라이센스 하에 있습니다.

이 문서는 실용적인 가이드를 목적으로 하며, 이론적 배경은 다루지 않습니다. 이론적 배경은 웹의 다른 많은 문서에서 다루어집니다.

이 문서는 어떤 종류의 보증 없이 제공됩니다! 이는 이러한 시스템을 설정하는 유일한 방법이 아님을 말씀드리고 싶습니다. 이 목표를 달성하는 방법은 여러 가지가 있지만, 이것이 제가 선택한 방법입니다. 이것이 귀하에게 작동할 것이라는 보증을 제공하지 않습니다!

1 OpenVZ 설치하기

OpenVZ를 설치하기 위해서는 yum에 OpenVZ 저장소를 추가해야 합니다:

cd /etc/yum.repos.d
wget http://download.openvz.org/openvz.repo
rpm –import http://download.openvz.org/RPM-GPG-Key-OpenVZ

이제 openvz.repo를 열어보세요…

vi openvz.repo

… 그리고 [openvz-kernel-rhel5] 저장소를 비활성화하고 (enabled=0) 대신 [openvz-kernel-rhel6] 저장소를 활성화하세요 (enabled=1):

| [...] [openvz-kernel-rhel5] name=OpenVZ RHEL5 기반 커널 #baseurl=http://download.openvz.org/kernel/branches/rhel5-2.6.18/current/ mirrorlist=http://download.openvz.org/kernel/mirrors-rhel5-2.6.18 enabled=0 gpgcheck=1 gpgkey=http://download.openvz.org/RPM-GPG-Key-OpenVZ [...] [openvz-kernel-rhel6] name=OpenVZ RHEL6 기반 커널 #baseurl=http://download.openvz.org/kernel/branches/rhel6-2.6.32/current/ mirrorlist=http://download.openvz.org/kernel/mirrors-rhel6-2.6.32 enabled=1 gpgcheck=1 gpgkey=http://download.openvz.org/RPM-GPG-Key-OpenVZ [...] |

저장소에는 몇 가지 다른 OpenVZ 커널이 포함되어 있습니다 (자세한 내용은 여기에서 확인할 수 있습니다: http://wiki.openvz.org/Kernel_flavors). 명령어

yum search vzkernel

은 사용 가능한 커널을 보여줍니다:

[root@server1 yum.repos.d]# yum search vzkernel
[…]
vzkernel.i686 : 리눅스 커널
vzkernel.x86_64 : 리눅스 커널
vzkernel-debug.i686 : 추가 디버깅이 활성화된 리눅스 커널
vzkernel-debug.x86_64 : 추가 디버깅이 활성화된 리눅스 커널
vzkernel-debug-devel.i686 : 디버그 커널에 맞는 커널 모듈을 빌드하기 위한 개발 패키지
vzkernel-debug-devel.x86_64 : 디버그 커널에 맞는 커널 모듈을 빌드하기 위한 개발 패키지
vzkernel-devel.i686 : 커널에 맞는 커널 모듈을 빌드하기 위한 개발 패키지
vzkernel-devel.x86_64 : 커널에 맞는 커널 모듈을 빌드하기 위한 개발 패키지
vzkernel-firmware.noarch : 리눅스 커널에서 사용되는 펌웨어 파일
vzkernel-headers.i686 : glibc에서 사용하기 위한 리눅스 커널의 헤더 파일
vzkernel-headers.x86_64 : glibc에서 사용하기 위한 리눅스 커널의 헤더 파일
[root@server1 yum.repos.d]#

그 중 하나를 선택하고 다음과 같이 설치합니다:

yum install vzkernel

이것은 GRUB 부트로더를 자동으로 업데이트해야 합니다. 어쨌든, /boot/grub/menu.lst를 열어야 합니다; 첫 번째 커널 스탠자가 이제 새로운 OpenVZ 커널을 포함해야 합니다. 해당 커널의 제목은 “CentOS Linux “로 표시됩니다. 그 제목을 변경하고 “OpenVZ”라는 내용을 추가하는 것이 좋습니다. 이렇게 하면 OpenVZ 커널이라는 것을 알 수 있습니다. 또한 default의 값이 0인지 확인하여 첫 번째 커널(즉, OpenVZ 커널)이 기본 CentOS 커널 대신 자동으로 부팅되도록 해야 합니다.

vi /boot/grub/menu.lst

| # grub.conf는 anaconda에 의해 생성되었습니다 # # 이 파일을 변경한 후 grub를 다시 실행할 필요는 없습니다 # NOTICE: /boot 파티션이 있습니다. 이는 # 모든 커널 및 initrd 경로가 /boot/에 상대적임을 의미합니다, 예: # root (hd0,0) # kernel /vmlinuz-version ro root=/dev/mapper/vg_server1-lv_root # initrd /initrd-[generic-]version.img #boot=/dev/sda default=0 timeout=5 splashimage=(hd0,0)/grub/splash.xpm.gz hiddenmenu title CentOS Linux OpenVZ (2.6.32-042stab020.1) root (hd0,0) kernel /vmlinuz-2.6.32-042stab020.1 ro root=/dev/mapper/vg_server1-lv_root rd_LVM_LV=vg_server1/lv_root rd_LVM_LV=vg_server1/lv_swap rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYBOARDTYPE=pc KEYTABLE=de crashkernel=auto rhgb quiet initrd /initramfs-2.6.32-042stab020.1.img title CentOS (2.6.32-71.el6.x86_64) root (hd0,0) kernel /vmlinuz-2.6.32-71.el6.x86_64 ro root=/dev/mapper/vg_server1-lv_root rd_LVM_LV=vg_server1/lv_root rd_LVM_LV=vg_server1/lv_swap rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYBOARDTYPE=pc KEYTABLE=de crashkernel=auto rhgb quiet initrd /initramfs-2.6.32-71.el6.x86_64.img |

이제 OpenVZ 사용자 도구를 설치합니다:

yum install vzctl vzquota

/etc/sysctl.conf를 열고 다음 설정이 포함되어 있는지 확인합니다:

vi /etc/sysctl.conf

| [...] net.ipv4.ip_forward = 1 net.ipv4.conf.default.proxy_arp = 0 net.ipv4.conf.all.rp_filter = 1 kernel.sysrq = 1 net.ipv4.conf.default.send_redirects = 1 net.ipv4.conf.all.send_redirects = 0 net.ipv4.icmp_echo_ignore_broadcasts=1 net.ipv4.conf.default.forwarding=1 [...] |

/etc/sysctl.conf를 수정해야 하는 경우, 이후에

sysctl -p 

를 실행합니다.

다음 단계는 가상 머신의 IP 주소가 호스트 시스템의 IP 주소와 다른 서브넷에 있는 경우 중요합니다. 이를 수행하지 않으면 가상 머신에서 네트워킹이 작동하지 않습니다!

/etc/vz/vz.conf를 열고 NEIGHBOUR_DEVS를 all로 설정합니다:

vi /etc/vz/vz.conf

| [...] NEIGHBOUR_DEVS=all [...] |

OpenVZ를 사용하려면 SELinux를 비활성화해야 합니다. /etc/sysconfig/selinux를 열고 SELINUX의 값을 disabled로 설정합니다:

vi /etc/sysconfig/selinux

| # 이 파일은 시스템에서 SELinux의 상태를 제어합니다. # SELINUX=은 다음 세 가지 값 중 하나를 가질 수 있습니다: # enforcing - SELinux 보안 정책이 시행됩니다. # permissive - SELinux가 시행 대신 경고를 출력합니다. # disabled - SELinux 정책이 로드되지 않습니다. SELINUX=disabled # SELINUXTYPE=은 다음 두 가지 값 중 하나를 가질 수 있습니다: # targeted - 타겟 프로세스가 보호됩니다, # mls - 다중 수준 보안 보호. SELINUXTYPE=targeted |

마지막으로 시스템을 재부팅합니다:

reboot

시스템이 문제 없이 재부팅되면 모든 것이 잘 된 것입니다!

다음 명령어를 실행합니다:

uname -r

그리고 새로운 OpenVZ 커널이 나타나야 합니다:

[root@server1 ~]# uname -r
2.6.32-042stab020.1
[root@server1 ~]#

Share: X/Twitter LinkedIn

새 게시물을 받은 편지함에서 받기

스팸은 없습니다. 언제든지 구독 해지 가능합니다.