Инструменты пользователя

Инструменты сайта


openvz

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
openvz [2013/09/21 12:05]
192.168.1.1 создано
openvz [2013/10/26 23:47] (текущий)
Строка 5: Строка 5:
 В статье дано только практическое руководство. Охвата теоретических основ не будет. Гугл в помощь. Также не дается никаких гарантий что у вас не будет никаких проблем и все что описано тут, заработает правильно. В статье дано только практическое руководство. Охвата теоретических основ не будет. Гугл в помощь. Также не дается никаких гарантий что у вас не будет никаких проблем и все что описано тут, заработает правильно.
  
-Установка OpenVZ+====== Установка OpenVZ ====== 
  
 Для того чтобы установить OpenVZ, нужно добавить репозиторий: Для того чтобы установить OpenVZ, нужно добавить репозиторий:
  
-cd /etc/yum.repos.d +  cd /etc/yum.repos.d 
-wget http://download.openvz.org/openvz.repo +  wget http://download.openvz.org/openvz.repo 
-rpm --import http://download.openvz.org/RPM-GPG-Key-OpenVZ+  rpm --import http://download.openvz.org/RPM-GPG-Key-OpenVZ
  
  
  
-Откроем openvz.repo:+  Откроем openvz.repo:
  
-vi openvz.repo+   vi openvz.repo
  
  
  
-Отключим [openvz-kernel-rhel5] выставив (enabled=0) и включим [openvz-kernel-rhel6] выставив (enabled=1):+    Отключим [openvz-kernel-rhel5] выставив (enabled=0) и включим [openvz-kernel-rhel6] выставив (enabled=1):
  
-[openvz-kernel-rhel6] +''[openvz-kernel-rhel6]\\ 
-name=OpenVZ RHEL6-based kernel +name=OpenVZ RHEL6-based kernel\\ 
-#baseurl=http://download.openvz.org/kernel/branches/rhel6-2.6.32/current/ +#baseurl=http://download.openvz.org/kernel/branches/rhel6-2.6.32/current/\\ 
-mirrorlist=http://download.openvz.org/kernel/mirrors-rhel6-2.6.32 +mirrorlist=http://download.openvz.org/kernel/mirrors-rhel6-2.6.32\\ 
-enabled=1 +enabled=1\\ 
-gpgcheck=1 +gpgcheck=1\\ 
-gpgkey=http://download.openvz.org/RPM-GPG-Key-OpenVZ+gpgkey=http://download.openvz.org/RPM-GPG-Key-OpenVZ\\
  
-[openvz-kernel-rhel5] +[openvz-kernel-rhel5]\\ 
-name=OpenVZ RHEL5-based kernel +name=OpenVZ RHEL5-based kernel\\ 
-#baseurl=http://download.openvz.org/kernel/branches/rhel5-2.6.18/current/ +#baseurl=http://download.openvz.org/kernel/branches/rhel5-2.6.18/current/\\ 
-mirrorlist=http://download.openvz.org/kernel/mirrors-rhel5-2.6.18 +mirrorlist=http://download.openvz.org/kernel/mirrors-rhel5-2.6.18\\ 
-enabled=0 +enabled=0\\ 
-gpgcheck=1 +gpgcheck=1\\ 
-gpgkey=http://download.openvz.org/RPM-GPG-Key-OpenVZ+gpgkey=http://download.openvz.org/RPM-GPG-Key-OpenVZ''
  
  
Строка 43: Строка 44:
 Репозиторий содержит несколько различных ядер с патчем OpenVZ (подробности). Посмотреть можно командой: Репозиторий содержит несколько различных ядер с патчем OpenVZ (подробности). Посмотреть можно командой:
  
-yum search vzkernel+    yum search vzkernel
  
  
Строка 49: Строка 50:
 Вывод вышеприведенной команды: Вывод вышеприведенной команды:
  
-[root@server yum.repos.d]# yum search vzkernel+    [root@server yum.repos.d]# yum search vzkernel
 ... ...
-vzkernel.i686 : The Linux kernel +    vzkernel.i686 : The Linux kernel 
-vzkernel.x86_64 : The Linux kernel +    vzkernel.x86_64 : The Linux kernel 
-vzkernel-devel.i686 : Development package for building kernel modules to match the kernel +    vzkernel-devel.i686 : Development package for building kernel modules to match the kernel 
-vzkernel-devel.x86_64 : Development package for building kernel modules to match the kernel +    vzkernel-devel.x86_64 : Development package for building kernel modules to match the kernel 
-vzkernel-firmware.noarch : Firmware files used by the Linux kernel +    vzkernel-firmware.noarch : Firmware files used by the Linux kernel 
-vzkernel-headers.i686 : Header files for the Linux kernel for use by glibc +    vzkernel-headers.i686 : Header files for the Linux kernel for use by glibc 
-vzkernel-headers.x86_64 : Header files for the Linux kernel for use by glibc+    vzkernel-headers.x86_64 : Header files for the Linux kernel for use by glibc
 ... ...
 [root@server yum.repos.d]# [root@server yum.repos.d]#
Строка 71: Строка 72:
 Установщик должен автоматически обновить загрузчик GRUB. Лучше проверить. Для этого открываем /boot/grub/menu.lst. Установщик должен автоматически обновить загрузчик GRUB. Лучше проверить. Для этого открываем /boot/grub/menu.lst.
  
-vi /boot/grub/menu.lst+     vi /boot/grub/menu.lst
  
  
  
 Первая строка должна быть указана на новое ядро ​с ​OpenVZ. Значение по умолчанию должно стоять на 0 (ноль), чтобы новое ядро загружалось автоматически, вместо тех что были в CentOS: Первая строка должна быть указана на новое ядро ​с ​OpenVZ. Значение по умолчанию должно стоять на 0 (ноль), чтобы новое ядро загружалось автоматически, вместо тех что были в CentOS:
- +'' 
-# grub.conf generated by anaconda+# grub.conf generated by anaconda\\
 # #
-# Note that you do not have to rerun grub after making changes to this file +# Note that you do not have to rerun grub after making changes to this file\\ 
-# NOTICE:  You have a /boot partition.  This means that +# NOTICE:  You have a /boot partition.  This means that\\ 
-#          all kernel and initrd paths are relative to /boot/, eg. +#          all kernel and initrd paths are relative to /boot/, eg.\\ 
-#          root (hd0,0) +#          root (hd0,0)\\ 
-#          kernel /vmlinuz-version ro root=/dev/mapper/vg_server-lv_root +#          kernel /vmlinuz-version ro root=/dev/mapper/vg_server-lv_root\\ 
-#          initrd /initrd-[generic-]version.img +#          initrd /initrd-[generic-]version.img\\ 
-#boot=/dev/sda +#boot=/dev/sda\\ 
-default=0 +default=0\\ 
-timeout=5 +timeout=5\\ 
-splashimage=(hd0,0)/grub/splash.xpm.gz +splashimage=(hd0,0)/grub/splash.xpm.gz\\ 
-hiddenmenu +hiddenmenu\\ 
-title OpenVZ (2.6.32-042stab057.1) +title OpenVZ (2.6.32-042stab057.1)\\ 
-        root (hd0,0) +        root (hd0,0)\\ 
-        kernel /vmlinuz-2.6.32-042stab057.1 ro root=/dev/mapper/vg_server-lv_root rd_LVM_LV=vg_server/lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=de rd_LVM_LV=vg_server/lv_swap rd_NO_DM rhgb quiet +        kernel /vmlinuz-2.6.32-042stab057.1 ro root=/dev/mapper/vg_server-lv_root rd_LVM_LV=vg_server/lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=de rd_LVM_LV=vg_server/lv_swap rd_NO_DM rhgb quiet\\ 
-        initrd /initramfs-2.6.32-042stab057.1.img +        initrd /initramfs-2.6.32-042stab057.1.img\\ 
-title CentOS (2.6.32-279.el6.x86_64) +title CentOS (2.6.32-279.el6.x86_64)\\ 
-        root (hd0,0) +        root (hd0,0)\\ 
-        kernel /vmlinuz-2.6.32-279.el6.x86_64 ro root=/dev/mapper/vg_server-lv_root rd_LVM_LV=vg_server/lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=de rd_LVM_LV=vg_server/lv_swap rd_NO_DM rhgb quiet +        kernel /vmlinuz-2.6.32-279.el6.x86_64 ro root=/dev/mapper/vg_server-lv_root rd_LVM_LV=vg_server/lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=de rd_LVM_LV=vg_server/lv_swap rd_NO_DM rhgb quiet\\ 
-        initrd /initramfs-2.6.32-279.el6.x86_64.img+        initrd /initramfs-2.6.32-279.el6.x86_64.img''
  
  
Строка 103: Строка 104:
 Теперь можно установить инструменты для управления OpenVZ: Теперь можно установить инструменты для управления OpenVZ:
  
-yum install vzctl vzquota+   yum install vzctl vzquota
  
  
Строка 109: Строка 110:
 Открываем sysctl.conf: Открываем sysctl.conf:
  
-vi /etc/sysctl.conf+    vi /etc/sysctl.conf
  
  
  
 Смотрим чтобы были настройки: Смотрим чтобы были настройки:
- +'' 
-net.ipv4.ip_forward = 1 +net.ipv4.ip_forward = 1\\ 
-net.ipv4.conf.default.proxy_arp = 0 +net.ipv4.conf.default.proxy_arp = 0\\ 
-net.ipv4.conf.all.rp_filter = 1 +net.ipv4.conf.all.rp_filter = 1\\ 
-kernel.sysrq = 1 +kernel.sysrq = 1\\ 
-net.ipv4.conf.default.send_redirects = 1 +net.ipv4.conf.default.send_redirects = 1\\ 
-net.ipv4.conf.all.send_redirects = 0 +net.ipv4.conf.all.send_redirects = 0\\ 
-net.ipv4.icmp_echo_ignore_broadcasts=1 +net.ipv4.icmp_echo_ignore_broadcasts=1\\ 
-net.ipv4.conf.default.forwarding=1+net.ipv4.conf.default.forwarding=1''
  
  
Строка 128: Строка 129:
 Если нужно изменить sysctl.conf. Запускаем: Если нужно изменить sysctl.conf. Запускаем:
  
-sysctl -p+    sysctl -p
  
  
Строка 136: Строка 137:
 Открываем vz.conf: Открываем vz.conf:
  
-vi /etc/vz/vz.conf+    vi /etc/vz/vz.conf
  
  
Строка 142: Строка 143:
 и ставим настройку у NEIGHBOUR_DEVS на all: и ставим настройку у NEIGHBOUR_DEVS на all:
  
-NEIGHBOUR_DEVS=all+   NEIGHBOUR_DEVS=all
  
  
Строка 148: Строка 149:
 Также нужно не забыть про SELinux. Его можно отключить совсем. Открываем /etc/sysconfig/selinux: Также нужно не забыть про SELinux. Его можно отключить совсем. Открываем /etc/sysconfig/selinux:
  
-vi /etc/sysconfig/selinux+    vi /etc/sysconfig/selinux
  
  
  
 и выставляем значение disabled: и выставляем значение disabled:
- +'' 
-# This file controls the state of SELinux on the system. +# This file controls the state of SELinux on the system.\\ 
-# SELINUX= can take one of these three values: +# SELINUX= can take one of these three values:\\ 
-#     enforcing - SELinux security policy is enforced. +#     enforcing - SELinux security policy is enforced.\\ 
-#     permissive - SELinux prints warnings instead of enforcing. +#     permissive - SELinux prints warnings instead of enforcing.\\ 
-#     disabled - No SELinux policy is loaded. +#     disabled - No SELinux policy is loaded.\\ 
-SELINUX=disabled +SELINUX=disabled\\ 
-# SELINUXTYPE= can take one of these two values: +# SELINUXTYPE= can take one of these two values:\\ 
-#     targeted - Targeted processes are protected, +#     targeted - Targeted processes are protected,\\ 
-#     mls - Multi Level Security protection. +#     mls - Multi Level Security protection.\\ 
-SELINUXTYPE=targeted +SELINUXTYPE=targeted\\ 
 +''
  
  
 Теперь нужно перезагрузить систему: Теперь нужно перезагрузить систему:
  
-reboot+   reboot
  
  
Строка 175: Строка 176:
 Если при этом не возникло проблем, то все отлично! Проверим ядро: Если при этом не возникло проблем, то все отлично! Проверим ядро:
  
-uname -r +    uname -r
  
  
 Как видим загружено: Как видим загружено:
  
-[root@server ~]# uname -r +    [root@server ~]# uname -r 
-2.6.32-042stab057.1 +    2.6.32-042stab057.1 
-[root@server ~]#+    [root@server ~]# 
  
  
 +====== Использование OpenVZ ======
  
-Использование OpenVZ 
  
 Во второй части рассмотрим практическое руководство по использованию OpenVZ. Перед тем как как создавать виртуальные машины нужно сделать шаблоны в директории /vz/template/cache. Список шаблонов можно найти на странице http://wiki.openvz.org/Download/template/precreated. Во второй части рассмотрим практическое руководство по использованию OpenVZ. Перед тем как как создавать виртуальные машины нужно сделать шаблоны в директории /vz/template/cache. Список шаблонов можно найти на странице http://wiki.openvz.org/Download/template/precreated.
Строка 193: Строка 194:
 В руководстве будет использоваться для виртуальных машин операционная система CentOS 6, так что качаем шаблон для нее: В руководстве будет использоваться для виртуальных машин операционная система CentOS 6, так что качаем шаблон для нее:
  
-cd /vz/template/cache +    cd /vz/template/cache 
-wget http://download.openvz.org/template/precreated/centos-6-x86_64.tar.gz+    wget http://download.openvz.org/template/precreated/centos-6-x86_64.tar.gz
  
  
Строка 202: Строка 203:
 Чтобы настроить VPS с шаблоном CentOS 6, выполните: Чтобы настроить VPS с шаблоном CentOS 6, выполните:
  
-vzctl create 101 --ostemplate centos-6-x86_64 --config basic+    vzctl create 101 --ostemplate centos-6-x86_64 --config basic
  
  
Строка 210: Строка 211:
 Для автозапуска виртуальной машины при старте хостовой операционной системы, выполните: Для автозапуска виртуальной машины при старте хостовой операционной системы, выполните:
  
-vzctl set 101 --onboot yes --save+     vzctl set 101 --onboot yes --save
  
  
Строка 216: Строка 217:
 Чтобы установить имя_хоста и IP-адрес для виртуальной машины, выполните: Чтобы установить имя_хоста и IP-адрес для виртуальной машины, выполните:
  
-vzctl set 101 --hostname test.example.com --save +     vzctl set 101 --hostname test.example.com --save 
-vzctl set 101 --ipadd 192.168.0.101 --save+     vzctl set 101 --ipadd 192.168.0.101 --save
  
  
  
-Затем установим количество сокетов на 120 и назначим несколько нэйм-серверов в виртуальной машине:+      Затем установим количество сокетов на 120 и назначим несколько нэйм-серверов в виртуальной машине:
  
-vzctl set 101 --numothersock 120 --save +     vzctl set 101 --numothersock 120 --save 
-vzctl set 101 --nameserver 8.8.8.8 --nameserver 8.8.4.4 --nameserver 145.253.2.75 --save+     vzctl set 101 --nameserver 8.8.8.8 --nameserver 8.8.4.4 --nameserver 145.253.2.75 --save
  
  
Строка 232: Строка 233:
 Для старта виртуальной машины, выполните: Для старта виртуальной машины, выполните:
  
-vzctl start 101+    vzctl start 101
  
  
Строка 238: Строка 239:
 Чтобы назначить пароль root: Чтобы назначить пароль root:
  
-vzctl exec 101 passwd+     vzctl exec 101 passwd
  
  
Строка 244: Строка 245:
 Теперь можно подключиться к виртуальной машине с помощью SSH или следующим образом: Теперь можно подключиться к виртуальной машине с помощью SSH или следующим образом:
  
-vzctl enter 101+     vzctl enter 101
  
  
Строка 250: Строка 251:
 Чтобы оставить консоль виртуальной машины, выполните: Чтобы оставить консоль виртуальной машины, выполните:
  
-exit+     exit
  
  
Строка 256: Строка 257:
 Для остановки виртуальной машины, выполните: Для остановки виртуальной машины, выполните:
  
-vzctl stop 101+     vzctl stop 101
  
  
Строка 262: Строка 263:
 Для перезагрузки виртуальной машины, выполните: Для перезагрузки виртуальной машины, выполните:
  
-vzctl restart 101+     vzctl restart 101
  
  
Строка 268: Строка 269:
 Чтобы удалить виртуальную машину. Сначала останавливаем ее работу, затем выполняем: Чтобы удалить виртуальную машину. Сначала останавливаем ее работу, затем выполняем:
  
-vzctl destroy 101+     vzctl destroy 101
  
  
Строка 274: Строка 275:
 Чтобы получить список всех ваших виртуальных машин и их статусов работы, выполняем: Чтобы получить список всех ваших виртуальных машин и их статусов работы, выполняем:
  
-vzlist -a+     vzlist -a
  
  
  
 Вывод выше переведенной команды будет похожем на: Вывод выше переведенной команды будет похожем на:
- +'' 
-<code>[root@server cache]# vzlist -a +<code>[root@server cache]# vzlist -a\\ 
-      CTID      NPROC STATUS    IP_ADDR         HOSTNAME +      CTID      NPROC STATUS    IP_ADDR         HOSTNAME\\ 
-       101         14 running   192.168.0.101   test.example.com +       101         14 running   192.168.0.101   test.example.com\\ 
-[root@server cache]#+[root@server cache]#''
  
  
Строка 289: Строка 290:
 Для получения информации о ресурсах выделяемых на виртуальную машину, выполните: Для получения информации о ресурсах выделяемых на виртуальную машину, выполните:
  
-vzctl exec 101 cat /proc/user_beancounters+      vzctl exec 101 cat /proc/user_beancounters
  
  
Строка 295: Строка 296:
 Вывод вышеприведенной команды: Вывод вышеприведенной команды:
  
-[root@server cache]# vzctl exec 101 cat /proc/user_beancounters +''[root@server cache]# vzctl exec 101 cat /proc/user_beancounters\\ 
-Version: 2.5 +Version: 2.5\\ 
-       uid  resource           held    maxheld    barrier      limit    failcnt +       uid  resource           held    maxheld    barrier      limit    failcnt\\ 
-      101:  kmemsize        1508202    1661695   11055923   11377049          0 +      101:  kmemsize        1508202    1661695   11055923   11377049          0\\ 
-            lockedpages                    0        256        256          0 +            lockedpages                    0        256        256          0\\ 
-            privvmpages        5430       7102      65536      69632          0 +            privvmpages        5430       7102      65536      69632          0\\ 
-            shmpages            381        381      21504      21504          0 +            shmpages            381        381      21504      21504          0\\ 
-            dummy                          0          0          0          0 +            dummy                          0          0          0          0\\ 
-            numproc              19         21        240        240          0 +            numproc              19         21        240        240          0\\ 
-            physpages          2489       2775          0 2147483647          0 +            physpages          2489       2775          0 2147483647          0\\ 
-            vmguarpages                    0      33792 2147483647          0 +            vmguarpages                    0      33792 2147483647          0\\ 
-            oomguarpages       2489       2775      26112 2147483647          0 +            oomguarpages       2489       2775      26112 2147483647          0\\ 
-            numtcpsock            5          5        360        360          0 +            numtcpsock            5          5        360        360          0\\ 
-            numflock              3          4        188        206          0 +            numflock              3          4        188        206          0\\ 
-            numpty                0          1         16         16          0 +            numpty                0          1         16         16          0\\ 
-            numsiginfo            0          2        256        256          0 +            numsiginfo            0          2        256        256          0\\ 
-            tcpsndbuf         44720          0    1720320    2703360          0 +            tcpsndbuf         44720          0    1720320    2703360          0\\ 
-            tcprcvbuf         81920          0    1720320    2703360          0 +            tcprcvbuf         81920          0    1720320    2703360          0\\ 
-            othersockbuf      13144      14356    1126080    2097152          0 +            othersockbuf      13144      14356    1126080    2097152          0\\ 
-            dgramrcvbuf                 8380     262144     262144          0 +            dgramrcvbuf                 8380     262144     262144          0\\ 
-            numothersock         11         13        120        120          0 +            numothersock         11         13        120        120          0\\ 
-            dcachesize            0          0    3409920    3624960          0 +            dcachesize            0          0    3409920    3624960          0\\ 
-            numfile             503        531       9312       9312          0 +            numfile             503        531       9312       9312          0\\ 
-            dummy                          0          0          0          0 +            dummy                          0          0          0          0\\ 
-            dummy                          0          0          0          0 +            dummy                          0          0          0          0\\ 
-            dummy                          0          0          0          0 +            dummy                          0          0          0          0\\ 
-            numiptent            10         10        128        128          0+            numiptent            10         10        128        128          0\\
 [root@server cache]# [root@server cache]#
 +''
  
  
Строка 330: Строка 331:
 Подробнее о командах vzctl можно узнать в мане: Подробнее о командах vzctl можно узнать в мане:
  
-man vzctl+    man vzctl
openvz.1379765115.txt.gz · Последнее изменение: 2013/09/21 16:05 (внешнее изменение)

DokuWiki Appliance - Powered by TurnKey Linux