Soʻo se tasi e manaʻomia le tuʻuina atu o se pusa OpenVZ i se 'auʻaunaga ma le KVM virtualization atoatoa ia le itiiti ifo ma le tasi i lo latou olaga ua feagai ma ni faʻafitauli:
- O le tele o fa'amatalaga e matua'i tuai lava ma e talafeagai mo OS ua leva ona pasia le taamilosaga EOL
- O fa'amatalaga 'ese'ese e tu'uina atu i taimi uma mo faiga fa'agaioiga 'ese'ese, ma e le'i mafaufauina fo'i fa'aletonu i le taimi o femalaga'iga
- O nisi taimi e tatau ona e feagai ma faʻasalalauga e le manaʻo i le taimi nei ma le taimi e galue pe a maeʻa femalagaiga
A e faʻafeiloaʻi le 1 server, e mafai ona e faʻaleleia se mea i luga o le lele, ae a e faʻafeiloaʻi se fuifui atoa?
I totonu o lenei tusiga o le a ou taumafai e taʻu atu ia te oe pe faʻafefea ona faʻafeiloaʻi saʻo se pusa OpenVZ i KVM ma sina taimi malolo ma se fofo vave i faʻafitauli uma.
O se polokalame faʻaleaʻoaʻoga laiti: o le a le OpenVZ ma o le a le KVM?
O le a tatou le alu loloto i faaupuga, ae o le a tatou fai atu i faaupuga lautele:
OpenVZ - virtualization i le tulaga o loʻo faʻaogaina, e mafai foʻi ona e faʻapipiʻiina i luga o se microwave, talu ai e leai se manaʻoga mo faʻatonuga o le CPU ma tekinolosi faʻaogaina i luga o le masini talimalo.
KVM - faʻaogaina atoatoa, faʻaogaina uma le mana o le PPU ma mafai ona faʻamaonia soʻo se mea, soʻo se auala, tipiina le umi ma faʻasaga.
E feteenai ma talitonuga lauiloa, i le siosiomaga kamupani talimalo Ua ova le fa'atauina atu o le OpenVZ, ae leai. O le mea e laki ai mo le mulimuli, ua ova le fa'atauina atu o le KVM e pei lava o lona uso.
O le a le mea o le a tatou tauaveina?
В качестве подопытных для переноса пришлось использовать весь лес операционных систем, которые доступны на OpenVZ: CentOS (6 и 7 версии), Ubuntu (14, 16 и 18 LTS), Debian 7.
Na fa'apea o le tele o pusa OpenVZ o lo'o fa'aogaina se ituaiga LAMP, ma o nisi na i ai ni polokalama fa'apitoa. O le tele o taimi, o fa'atonuga nei ma le ISPmanager, VestaCP control panel (ma o le tele o taimi, e le'i fa'afouina mo le tele o tausaga). E tatau foi ona amanaia a latou talosaga mo le fesiitaiga.
O femalagaiga e faia ma le fa'asaoina tuatusi IP Mo se koneteina feaveaʻi, matou te manatu o loʻo teuina le tuatusi IP a le koneteina i le VM ma o le a galue e aunoa ma ni faʻafitauli.
Aʻo leʻi faʻafeiloaʻi, ia tatou mautinoa o loʻo ia i tatou mea uma:
- OpenVZ server, avanoa atoatoa a'a i le masini talimalo, mafai ona taofi / mauga / amata / tape pusa
- KVM server, avanoa atoatoa aʻa i le masini talimalo, ma mea uma e faʻaalia. E fa'apea ua uma ona fa'atulaga mea uma ma sauni e alu.
Tatou amata fa'aliliu
Ae tatou te leʻi amataina le fesiitaiga, seʻi o tatou faʻamalamalamaina upu e fesoasoani ia te oe e aloese ai mai le fenumiai:
KVM_NODE - KVM talimalo masini
VZ_NODE - OpenVZ masini talimalo
CTID - pusa OpenVZ
VM - KVM virtual server
Sauniuniga mo femalagaiga ma le fatuina o masini masini.
laa 1
Talu ai e manaʻomia le faʻanofoina o le atigipusa i se mea, matou te fatuina VM faatasi ai ma se faatulagaga tutusa i KVM_NODE.
Taua! Создавать VM нужно именно на той операционной системе, которая сейчас крутится на CTID. Например, если на CTID установлена Ubuntu 14, то и на VM нужно ставить Ubuntu 14. Минорные версии не важны и их несовпадение не столь критично, а вот мажорные — должны быть одинаковыми.
A maeʻa ona fatuina le VM, matou te faʻafouina afifi i luga o le CTID ma luga o le VM (aua le fenumiai ma le faʻafouina o le OS - matou te le faʻafouina, matou te faʻafouina afifi ma, afai e oʻo mai, o le OS version i totonu o le autu autu. version).
mo CentOS этот процесс выглядит безобидно:
# yum clean all
# yum update -yИ не менее безобидно для Ubuntu, Debian:
# apt-get update
# apt-get upgradelaa 2
Fa'apipi'i i luga CTID, VZ_NODE и VM aoga rsync:
CentOS:
# yum install rsync -yDebian, Ubuntu:
# apt-get install rsync -yMatou te le faʻapipiʻiina se isi mea iina poʻo iina.
laa 3
Matou te taofi CTID i VZ_NODE 'au
vzctl stop CTIDFa'amauina o le ata CTID:
vzctl mount CTIDAlu i le /vz/root/ folderCTID ma faatino
mount --bind /dev dev && mount --bind /sys sys && mount --bind /proc proc && chroot .I lalo o le aʻa, fatuina se faila /root/exclude.txt - o le a aofia ai se lisi o tuusaunoaga e le oʻo i le server fou
/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-ens3Feso'ota'i i KVM_NODE ma fa'alauiloa a tatou VMina ia aoga ma mafai ona maua i luga o le upega tafailagi.
O lea ua sauni mea uma mo le fesiitaiga. Alu!
laa 4
Ae i lalo o le sipela, matou te faia
rsync --exclude-from="/root/exclude.txt" --numeric-ids -avpogtStlHz --progress -e "ssh -T -o Compression=no -x" / root@KVM_NODE:/O le rsync poloaiga o le a faia le fesiitaiga, matou te faʻamoemoe o loʻo manino ki - o le fesiitaiga o loʻo faʻatinoina ma le faʻasaoina o symlinks, aia tatau, tagata e ona ma vaega, ma faʻamalamalamaga e le atoatoa mo le saoasaoa tele (e mafai ona e faʻaogaina se sipi vave, ae e le taua tele lenei mea mo lenei galuega), faʻapea foʻi ma le faʻamalosi e le atoatoa.
A maeʻa le rsync, alu ese mai le chroot (e ala i le oomi ctrl+d) ma faʻatino
umount dev && umount proc && umount sys && cd .. && vzctl umount CTIDlaa 5
Sei o tatou faia ni laasaga e fesoasoani ia i tatou e faʻalauiloa le VM pe a uma ona faʻafeiloaʻi mai OpenVZ.
I luga o sapalai ma Faigaluega sei o tatou faia se poloaiga e fesoasoani ia i tatou e saini i totonu o se faʻamafanafanaga masani, mo se faʻataʻitaʻiga, e ala i le VNC server screen
mv /etc/systemd/system/getty.target.wants/getty@tty2.service /etc/systemd/system/getty.target.wants/getty@tty1.serviceI luga o sapalai CentOS 6 и CentOS 7 Ia mautinoa e faʻapipiʻi se fatu fou:
yum install kernel-$(uname -r)O le server e mafai ona utaina mai ai, ae a maeʻa le fesiitaiga e ono le toe galue pe tape.
I luga o le server CentOS 7 e mana'omia le fa'aogaina o se mea la'ititi mo PolkitD, a leai o le a pa'u le server e fa'avavau:
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; }I luga o 'auʻaunaga uma, afai na faʻapipiʻi le mod_fcgid mo Apache, o le a matou faia se laʻititi laʻititi ma aia tatau, a leai o nofoaga e faʻaoga mod_fcgid o le a paʻu i le sese 500:
chmod +s `which suexec` && apachectl restartИ последнее, пригодится для Ubuntu, Debian дистрибутивов. Эта ОС может упасть в вечный бут с ошибкой
fa'asao vave. fa'atosina le fa'atinoina o sina mea
le manaia, ae faigofie ona faʻaleleia, faʻalagolago i le OS version.
i Debian 9 e fa'apea le fa'aleleia:
matou te faia
dbus-uuidgenpe a tatou maua se mea sese
/usr/local/lib/libdbus-1.so.3: version `LIBDBUS_PRIVATE_1.10.8′ e le o maua
siaki le iai ole 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.16afai e lelei mea uma, matou te faia
cd /lib/x86_64-linux-gnu
rm -rf libdbus-1.so.3
ln -s libdbus-1.so.3.14.15 libdbus-1.so.3Afai e le fesoasoani, taumafai le filifiliga lona lua.
Ole fofo lona lua ile fa'afitauli ile fa'atosina le fa'atinoina o sina mea подходит практически для всех Ubuntu и Debian дистрибутивов.
Matou te faia
bash -x /var/lib/dpkg/info/dbus.postinst configureMa mo Ubuntu 14, Debian 7 E le gata i lea, matou te faia:
adduser --system --home /nonexistent --no-create-home --disabled-password --group messagebus
rm -rf /etc/init.d/modules_dep.sh Что мы сделали? Восстановили messagebus, которого не хватало для запуска Debian/Ubuntu и удалили modules_dep, который пришел от OpenVZ и мешал загрузки многих модулей ядра.
laa 6
Matou te toe faʻafouina le VM, siaki i le VNC pe faʻafefea ona faʻagasolo le utaina ma, lelei, o mea uma o le a utaina e aunoa ma ni faʻafitauli. E ui lava e ono iai nisi faʻafitauli faʻapitoa o le a aliaʻe pe a maeʻa le femalagaiga, ae o loʻo i tua atu o le lautele o lenei tusiga ma o le a faʻasaʻo pe a tulaʻi mai.
Ou te faʻamoemoe e aoga lenei faʻamatalaga! 🙂
puna: www.habr.com
