Yuav ua li cas hloov OpenVZ 6 thawv rau KVM server yam tsis muaj mob taub hau

Txhua tus neeg uas xav tau hloov lub thawv OpenVZ rau lub server nrog KVM virtualization tag nrho tsawg kawg ib zaug hauv lawv lub neej tau ntsib qee qhov teeb meem:

  • Feem ntau ntawm cov ntaub ntawv tsuas yog outdated thiab muaj feem xyuam rau OSes uas tau ntev dhau lub voj voog EOL
  • Cov ntaub ntawv sib txawv yeej ib txwm muab rau cov kev khiav hauj lwm sib txawv, thiab qhov ua tau yuam kev thaum tsiv teb tsaws tsis tau txiav txim siab
  • Qee lub sij hawm koj yuav tsum tau nrog kev teeb tsa uas txhua lub sijhawm tam sim no thiab tom qab ntawd tsis xav ua haujlwm tom qab tsiv teb tsaws

Thaum koj hloov 1 tus neeg rau zaub mov, koj tuaj yeem kho qee yam ntawm ya, tab sis thaum koj hloov tag nrho pawg?

Hauv tsab xov xwm no kuv yuav sim qhia koj yuav ua li cas thiaj li hloov pauv lub thawv OpenVZ mus rau KVM nrog tsawg kawg downtime thiab daws sai rau txhua yam teeb meem.

Ib qho kev kawm me me: OpenVZ yog dab tsi thiab KVM yog dab tsi?

Peb yuav tsis nkag mus tob rau hauv terminology, tab sis yuav hais nyob rau hauv cov ntsiab lus:

OpenVZ - virtualization ntawm qib kev ua haujlwm, koj tuaj yeem xa nws mus rau lub microwave, vim tsis tas yuav muaj cov lus qhia CPU thiab cov thev naus laus zis virtualization ntawm lub tshuab tswv tsev.

KVM - tag nrho-fledged virtualization, siv tag nrho lub zog ntawm CPU thiab muaj peev xwm ntawm virtualizing txhua yam, txhua txoj kev, txiav nws lengthwise thiab crosswise.

Contrary to popular kev ntseeg hais tias ntawm hosting muab kev pab cuam OpenVZ yuav dhau los ua oversold, tab sis KVM yuav tsis - hmoov zoo rau tom kawg, KVM yog tam sim no oversold tsis phem tshaj nws cov kwv tij.

Peb yuav nqa dab tsi?

Raws li kev xeem rau kev hloov pauv, peb yuav tsum siv tag nrho cov hav zoov ntawm kev ua haujlwm uas muaj nyob rau ntawm OpenVZ: CentOS (6 thiab 7 versions), Ubuntu (14, 16 thiab 18 LTS), Debian 7.

Nws tau xav tias feem ntau ntawm OpenVZ ntim twb tau khiav qee yam teeb, thiab qee qhov txawm tias muaj qee qhov tshwj xeeb software. Feem ntau, cov no tau teeb tsa nrog ISPmanager, VestaCP tswj vaj huam sib luag (thiab feem ntau, tsis hloov kho rau xyoo). Lawv qhov kev thov hloov pauv yuav tsum raug coj mus rau hauv tus account.

Kev tsiv teb tsaws yog ua tiav thaum khaws tus IP chaw nyob ntawm lub thawv hloov pauv; peb yuav xav tias tus IP uas lub thawv tau khaws cia rau ntawm VM thiab yuav ua haujlwm yam tsis muaj teeb meem.

Ua ntej hloov, cia peb nco ntsoov tias peb muaj txhua yam ntawm tes:

  • OpenVZ neeg rau zaub mov, tag nrho cov hauv paus nkag mus rau lub tshuab hosting, muaj peev xwm nres / mount / pib / rho tawm ntim
  • KVM neeg rau zaub mov, tag nrho cov hauv paus nkag mus rau lub tshuab host, nrog txhua yam uas nws cuam tshuam. Nws yog assumed tias txhua yam twb configured thiab npaj mus.

Cia peb pib hloov

Ua ntej peb pib hloov pauv, cia peb txhais cov ntsiab lus uas yuav pab koj kom tsis txhob muaj kev ntxhov siab:

KVM_NODE - KVM tshuab
VZ_NODE - OpenVZ host tshuab
CTID - OpenVZ thawv
VM - KVM virtual server

Npaj rau kev tsiv teb tsaws thiab tsim cov tshuab virtual.

kauj ruam 1

Txij li thaum peb yuav tsum tau txav lub thawv rau qhov chaw, peb yuav tsim VM nrog ib tug zoo xws li configuration rau KVM_NODE.
Tseem ceeb! Koj yuav tsum tsim VM ntawm lub operating system uas tam sim no khiav ntawm CTID. Piv txwv li, yog tias Ubuntu 14 tau nruab rau ntawm CTID, ces Ubuntu 14 yuav tsum tau nruab rau ntawm VM. Cov ntawv me me tsis tseem ceeb thiab lawv qhov tsis sib xws tsis yog qhov tseem ceeb, tab sis cov qauv loj yuav tsum zoo ib yam.

Tom qab tsim VM, peb yuav hloov kho cov pob khoom ntawm CTID thiab ntawm VM (tsis yog yuav tsum tsis meej pem nrog kev hloov kho OS - peb tsis hloov kho nws, peb tsuas yog hloov kho cov pob khoom thiab, yog tias nws tuaj txog, OS version hauv lub ntsiab. version).

Rau CentOS cov txheej txheem no zoo li tsis muaj mob:

# yum clean all
# yum update -y

Thiab tsis muaj teeb meem tsawg dua rau Ubuntu thiab Debian:

# apt-get update
# apt-get upgrade

kauj ruam 2

Nruab rau CTID, VZ_NODE и VM khoom siv rsync:

CentOS:

# yum install rsync -y

Debian, Ubuntu:

# apt-get install rsync -y

Peb tsis txhim kho lwm yam txawm nyob ntawd lossis nyob ntawd.

kauj ruam 3

Peb ua qhov nres CTID rau VZ_NODE pab

vzctl stop CTID

Mounting daim duab CTID:

vzctl mount CTID

Mus rau /vz/root/ folderCTID thiab ua

mount --bind /dev dev && mount --bind /sys sys && mount --bind /proc proc && chroot .

Nyob rau hauv lub hauv paus, tsim ib cov ntaub ntawv /root/exclude.txt - nws yuav muaj ib daim ntawv teev cov kev zam uas yuav tsis tau mus rau lub tshiab server

/boot
/proc
/sys
/tmp
/dev
/var/lock
/etc/fstab
/etc/mtab
/etc/resolv.conf
/etc/conf.d/net
/etc/network/interfaces
/etc/networks
/etc/sysconfig/network*
/etc/sysconfig/hwconf
/etc/sysconfig/ip6tables-config
/etc/sysconfig/kernel
/etc/hostname
/etc/HOSTNAME
/etc/hosts
/etc/modprobe*
/etc/modules
/net
/lib/modules
/etc/rc.conf
/usr/share/nova-agent*
/usr/sbin/nova-agent*
/etc/init.d/nova-agent*
/etc/ips
/etc/ipaddrpool
/etc/ips.dnsmaster
/etc/resolv.conf
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/sysconfig/network-scripts/ifcfg-ens3

Txuas rau KVM_NODE thiab tso tawm peb VMkom nws ua haujlwm thiab nkag mus tau hauv lub network.

Tam sim no txhua yam yog npaj rau kev hloov mus. Mus!

kauj ruam 4

Tseem nyob rau hauv lub spell, peb ua

rsync --exclude-from="/root/exclude.txt" --numeric-ids -avpogtStlHz --progress -e "ssh -T -o Compression=no -x" / root@KVM_NODE:/

Cov lus txib rsync yuav ua qhov kev hloov pauv, peb cia siab tias cov yuam sij yog qhov tseeb - kev hloov pauv tau ua nrog kev khaws cia ntawm symlinks, kev nkag mus rau cov cai, cov tswv thiab pab pawg, thiab kev encryption yog neeg xiam oob qhab kom ceev dua (koj tuaj yeem siv qee qhov cipher sai dua, tab sis. qhov no tsis yog qhov tseem ceeb rau txoj haujlwm no), nrog rau compression yog neeg xiam.

Tom qab ua tiav rsync, tawm ntawm chroot (los ntawm nias ctrl + d) thiab ua tiav

umount dev && umount proc && umount sys && cd .. && vzctl umount CTID

kauj ruam 5

Cia peb ua ob peb kauj ruam uas yuav pab peb tso VM tom qab hloov los ntawm OpenVZ.
Hauv servers nrog Systemd cia peb ua tiav cov lus txib uas yuav pab peb nkag mus rau lub console tsis tu ncua, piv txwv li, los ntawm VNC server screen

mv /etc/systemd/system/getty.target.wants/[email protected] /etc/systemd/system/getty.target.wants/[email protected]

Hauv servers CentOS 6 и CentOS 7 Nco ntsoov nruab lub kernel tshiab:

yum install kernel-$(uname -r)

Cov neeg rau zaub mov tuaj yeem thauj khoom los ntawm nws, tab sis tom qab hloov chaw nws yuav tsis ua haujlwm lossis raug tshem tawm.

Hauv server CentOS 7 Koj yuav tsum siv qhov kho me me rau PolkitD, txwv tsis pub lub server yuav poob mus ib txhis:

getent group polkitd >/dev/null && echo -e "e[1;32mpolkitd group already existse[0m" || { groupadd -r polkitd && echo -e "e[1;33mAdded missing polkitd groupe[0m" || echo -e "e[1;31mAdding polkitd group FAILEDe[0m"; }

getent passwd polkitd >/dev/null 
&& echo -e "e[1;32mpolkitd user already existse[0m" || { useradd -r -g polkitd -d / -s /sbin/nologin -c "User for polkitd" polkitd && echo -e "e[1;33mAdded missing polkitd usere[0m" || echo -e "e[1;31mAdding polkitd user FAILEDe[0m"; }

rpm -Va polkit* && echo -e "e[1;32mpolkit* rpm verification passede[0m" || { echo -e "e[1;33mResetting polkit* rpm user/group ownership & permse[0m"; rpm --setugids polkit polkit-pkla-compat; rpm --setperms polkit polkit-pkla-compat; }

Ntawm tag nrho cov servers, yog tias mod_fcgid rau Apache tau teeb tsa, peb yuav ua qhov kho me me nrog txoj cai, txwv tsis pub cov chaw siv mod_fcgid yuav poob nrog qhov yuam kev 500:

chmod +s `which suexec` && apachectl restart

Thiab qhov kawg yog qhov tseem ceeb rau Ubuntu thiab Debian kev faib tawm. Qhov OS no tuaj yeem tsoo rau hauv khau raj mus ib txhis nrog qhov yuam kev

looping ceev heev. throttling kev ua me ntsis

tsis kaj siab, tab sis kho tau yooj yim, nyob ntawm OS version.

rau Debian 9 lub fix zoo li no:

peb ua

dbus-uuidgen

yog tias peb tau txais qhov yuam kev

/usr/local/lib/libdbus-1.so.3: version `LIBDBUS_PRIVATE_1.10.8′ tsis pom

tshawb xyuas lub xub ntiag ntawm LIBDBUS

ls -la /lib/x86_64-linux-gnu | grep dbus
libdbus-1.so.3 -> libdbus-1.so.3.14.15 
libdbus-1.so.3.14.15 <-- нужен этот
libdbus-1.so.3.14.16

yog tias txhua yam nyob rau hauv kev txiav txim, peb ua nws

cd /lib/x86_64-linux-gnu
rm -rf libdbus-1.so.3
ln -s libdbus-1.so.3.14.15  libdbus-1.so.3

Yog tias nws tsis pab, sim qhov kev xaiv thib ob.

Qhov thib ob kev daws teeb meem nrog throttling kev ua me ntsis Haum rau yuav luag tag nrho Ubuntu thiab Debian kev faib tawm.

Peb ua

bash -x /var/lib/dpkg/info/dbus.postinst configure

Thiab rau Ubuntu 14, Debian 7 Tsis tas li ntawd peb ua:

adduser --system --home /nonexistent --no-create-home --disabled-password --group messagebus

rm -rf /etc/init.d/modules_dep.sh 

Peb tau ua dab tsi? Peb rov qab kho cov ntawv xa ntawv, uas ploj lawm los khiav Debian / Ubuntu, thiab tshem tawm modules_dep, uas tuaj ntawm OpenVZ thiab cuam tshuam nrog kev thauj khoom ntawm ntau lub ntsiav modules.

kauj ruam 6

Peb reboot VM, xyuas hauv VNC yuav ua li cas lub chaw thau khoom nce thiab, qhov tseeb, txhua yam yuav thauj khoom yam tsis muaj teeb meem. Txawm hais tias nws muaj peev xwm hais tias qee qhov teeb meem tshwj xeeb yuav tshwm sim tom qab kev tsiv teb tsaws chaw, lawv dhau ntawm cov kab lus no thiab yuav raug kho raws li lawv tshwm sim.

Kuv vam tias cov ntaub ntawv no muaj txiaj ntsig! 🙂

Tau qhov twg los: www.hab.com

Ntxiv ib saib