Tha duilgheadasan air a bhith aig neach sam bith a dh’ fheumadh inneal OpenVZ a ghluasad gu frithealaiche le làn-shealladh KVM co-dhiù aon uair nam beatha:
- Tha a’ mhòr-chuid den fhiosrachadh dìreach seann-fhasanta agus bha e buntainneach dha OSes a bha air a dhol seachad air cearcall EOL o chionn fhada
- Tha fiosrachadh eadar-dhealaichte an-còmhnaidh air a thoirt seachad airson diofar shiostaman obrachaidh, agus cha tèid beachdachadh air mearachdan a dh’ fhaodadh a bhith ann rè imrich
- Aig amannan feumaidh tu dèiligeadh ri rèiteachaidhean nach eil a-nis agus an uairsin ag iarraidh a bhith ag obair às deidh imrich
Nuair a ghluaiseas tu frithealaiche 1, faodaidh tu an-còmhnaidh rudeigin a chàradh air an itealan, ach nuair a ghluaiseas tu brabhsair slàn?
San artaigil seo feuchaidh mi ri innse dhut mar as urrainn dhut inneal OpenVZ a ghluasad gu KVM gu ceart le glè bheag de ùine downt agus fuasgladh sgiobalta air a h-uile duilgheadas.
Prògram foghlaim beag: dè a th ’ann an OpenVZ agus dè a th’ ann an KVM?
Cha tèid sinn gu domhainn a-steach do bhriathrachas, ach canaidh sinn san fharsaingeachd:
OpenVZ - virtualization aig ìre an t-siostaim obrachaidh, faodaidh tu eadhon a chuir a-steach air microwave, leis nach eil feum air stiùireadh CPU agus teicneòlasan virtualization air an inneal aoigheachd.
KVM - virtualization làn-chuimseach, a’ cleachdadh cumhachd an CPU gu lèir agus comasach air rud sam bith a dhèanamh mas fhìor, dòigh sam bith, ga ghearradh fad is farsaing.
A dh ’aindeoin creideas mòr-chòrdte gum bi OpenVZ am measg solaraichean aoigheachd a’ faighinn cus reic, ach nach dèan KVM - gu fortanach airson an fheadhainn mu dheireadh, tha KVM a-nis air a reic nas miosa na a bhràthair.
Dè a bheir sinn thairis?
Mar chuspairean deuchainn airson an gluasad, bha againn ri cleachdadh na coille iomlan de shiostaman obrachaidh a tha rim faighinn air OpenVZ: CentOS (dreachan 6 agus 7), Ubuntu (14, 16 agus 18 LTS), Debian 7.
Bhathar a 'gabhail ris gu robh a' mhòr-chuid de na soithichean OpenVZ mu thràth a 'ruith seòrsa de LAMP, agus bha eadhon bathar-bog sònraichte aig cuid. Mar as trice, b 'e rèiteachadh a bh' annta leis an ISPmanager, pannal smachd VestaCP (agus mar as trice, gun ùrachadh airson bliadhnaichean). Feumar aire a thoirt do na h-iarrtasan gluasaid aca cuideachd.
Bithear a’ dèanamh imrich fhad ‘s a tha sinn a’ gleidheadh seòladh IP an t-soithich a chaidh a ghluasad; gabhaidh sinn ris gu bheil an IP a bha aig a’ ghobhar air a shàbhaladh air an VM agus obraichidh e gun duilgheadas sam bith.
Mus gluais sinn, dèan cinnteach gu bheil a h-uile càil againn ri làimh:
- Frithealaiche OpenVZ, ruigsinneachd làn freumh air an inneal aoigheachd, comas stad / cur suas / tòiseachadh / cuir às do shoithichean
- Frithealaiche KVM, ruigsinneachd làn freumh air an inneal aoigheachd, leis a h-uile càil a tha e a’ ciallachadh. Thathas den bheachd gu bheil a h-uile dad air a rèiteachadh mu thràth agus deiseil airson a dhol.
Feuch an tòisich sinn air gluasad
Mus tòisich sinn air a’ ghluasad, mìnichidh sinn teirmean a chuidicheas tu gus troimh-chèile a sheachnadh:
KVM_NODE - inneal aoigheachd KVM
VZ_NODE - Inneal aoigheachd OpenVZ
CTID - OpenVZ container
VM - frithealaiche brìgheil KVM
Ag ullachadh airson imrich agus a 'cruthachadh innealan mas-fhìor.
ceum 1
Leis gu feum sinn an soitheach a ghluasad an àiteigin, cruthaichidh sinn VM le rèiteachadh coltach ris KVM_NODE.
Cudromach! Feumaidh tu VM a chruthachadh air an t-siostam obrachaidh a tha a’ ruith air CTID an-dràsta. Mar eisimpleir, ma tha Ubuntu 14 air a chuir a-steach air an CTID, feumaidh Ubuntu 14 a bhith air a chuir a-steach air an VM.
Às deidh dhuinn an VM a chruthachadh, bheir sinn ùrachadh air na pacaidean air an CTID agus air an VM (gun a bhith troimh-chèile le bhith ag ùrachadh an OS - cha bhith sinn ga ùrachadh, cha bhith sinn ag ùrachadh ach na pacaidean agus, ma ruigeas e, an dreach OS taobh a-staigh a’ phrìomh dreach).
Airson CentOS tha am pròiseas seo a’ coimhead gun chron:
# yum clean all
# yum update -y
Agus gun a bhith cho neo-chinnteach airson Ubuntu agus Debian:
# apt-get update
# apt-get upgrade
ceum 2
Stàlaich air CTID, VZ_NODE и VM goireasachd rsync:
CentOS:
# yum install rsync -y
Debian, Ubuntu:
# apt-get install rsync -y
Chan eil sinn a 'stàladh rud sam bith eile an sin no an sin.
ceum 3
Bidh sinn a 'dèanamh stad CTID air VZ_NODE sgioba
vzctl stop CTID
A 'stàladh an ìomhaigh CTID:
vzctl mount CTID
Rach don phasgan /vz/root/CTID agus a chur an gnìomh
mount --bind /dev dev && mount --bind /sys sys && mount --bind /proc proc && chroot .
Fon fhreumh, cruthaich faidhle /root/exclude.txt - bidh liosta ann de dh'eisgeachdan nach fhaigh chun an fhrithealaiche ùr
/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
Ceangail ri KVM_NODE agus cuir air bhog ar VMgus am bi e ag obair agus gu bheil e ruigsinneach thairis air an lìonra.
A-nis tha a h-uile dad deiseil airson gluasad. Rach!
ceum 4
Fhathast fo gheasaibh, bidh sinn a 'coileanadh
rsync --exclude-from="/root/exclude.txt" --numeric-ids -avpogtStlHz --progress -e "ssh -T -o Compression=no -x" / root@KVM_NODE:/
Nì an àithne rsync an gluasad, tha sinn an dòchas gu bheil na h-iuchraichean soilleir - thèid an gluasad a dhèanamh le bhith a’ gleidheadh symlinks, còraichean-slighe, sealbhadairean agus buidhnean, agus tha crioptachadh à comas airson astar nas luaithe (dh’ fhaodadh tu cipher nas luaithe a chleachdadh, ach chan eil seo cho cudromach airson na h-obrach seo), a bharrachd air teannachadh ciorramach.
Às deidh dhut rsync a chrìochnachadh, fàg bho chroot (le putadh ctrl + d) agus cuir an gnìomh
umount dev && umount proc && umount sys && cd .. && vzctl umount CTID
ceum 5
Nach dèan sinn grunn cheumannan a chuidicheas sinn a 'cur air bhog an VM an dèidh gluasad bho OpenVZ.
Air frithealaichean le Siostam leig dhuinn òrdugh a chuir an gnìomh a chuidicheas sinn gus logadh a-steach gu consol àbhaisteach, mar eisimpleir, tro scrion frithealaiche VNC
mv /etc/systemd/system/getty.target.wants/[email protected] /etc/systemd/system/getty.target.wants/[email protected]
Air frithealaichean CentOS 6 и CentOS 7 Dèan cinnteach gun stàlaich thu kernel ùr:
yum install kernel-$(uname -r)
Faodar am frithealaiche a luchdachadh bhuaithe, ach às deidh an gluasad faodaidh e stad a bhith ag obair no a dhubhadh às.
Air frithealaiche CentOS 7 feumaidh tu fuasgladh beag a chuir an sàs airson PolkitD, air neo tuitidh am frithealaiche gu bràth:
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; }
Air a h-uile frithealaiche, ma chaidh mod_fcgid airson Apache a chuir a-steach, nì sinn fuasgladh beag le còraichean, air neo ma thuislich làraichean a chleachdas mod_fcgid le mearachd 500:
chmod +s `which suexec` && apachectl restart
Agus tha an rud mu dheireadh feumail airson sgaoilidhean Ubuntu agus Debian. Faodaidh an OS seo tuiteam a-steach do bhròg shìorraidh le mearachd
a’ lùbadh ro luath. cur gu bàs beagan
mì-thlachdmhor, ach furasta a shuidheachadh, a rèir an dreach OS.
air a ' Debian 9 tha an rèiteachadh a’ coimhead mar seo:
tha sinn a' coileanadh
dbus-uuidgen
ma gheibh sinn mearachd
/usr/local/lib/libdbus-1.so.3: dreach `LIBDBUS_PRIVATE_1.10.8′ cha deach a lorg
thoir sùil air làthaireachd 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
ma tha a h-uile càil ann an òrdugh, bidh sinn ga dhèanamh
cd /lib/x86_64-linux-gnu
rm -rf libdbus-1.so.3
ln -s libdbus-1.so.3.14.15 libdbus-1.so.3
Mura cuidich e, feuch an dàrna roghainn.
Tha an dàrna fuasgladh air an duilgheadas le cur gu bàs beagan Freagarrach airson cha mhòr a h-uile sgaoileadh Ubuntu agus Debian.
Bidh sinn a 'coileanadh
bash -x /var/lib/dpkg/info/dbus.postinst configure
Agus airson Ubuntu 14, Debian 7 A bharrachd air an sin, bidh sinn a’ coileanadh:
adduser --system --home /nonexistent --no-create-home --disabled-password --group messagebus
rm -rf /etc/init.d/modules_dep.sh
Dè a rinn sinn? Rinn sinn ath-nuadhachadh air messagebus, a bha a dhìth gus Debian/Ubuntu a ruith, agus thug sinn air falbh modalan_dep, a thàinig bho OpenVZ agus a chuir bacadh air luchdachadh mòran mhodalan kernel.
ceum 6
Bidh sinn ag ath-thòiseachadh an VM, thoir sùil air VNC mar a tha an luchdachadh a’ dol air adhart agus, na b’ fheàrr, thèid a h-uile càil a luchdachadh gun duilgheadas. Ged a tha e comasach gun nochd cuid de dhuilgheadasan sònraichte às deidh an imrich, tha iad taobh a-muigh raon an artaigil seo agus thèid an ceartachadh mar a thig iad am bàrr.
Tha mi an dòchas gu bheil am fiosrachadh seo feumail! 🙂
Source: www.habr.com