Ahoana ny famindrana ny kaontenera OpenVZ 6 amin'ny mpizara KVM tsy misy aretin'andoha

Na iza na iza mila mamindra kaontenera OpenVZ mankany amin'ny mpizara manana virtoaly KVM feno farafaharatsiny indray mandeha teo amin'ny fiainany dia nisedra olana:

  • Ny ankamaroan'ny fampahalalam-baovao dia lany andro tsotra izao ary mifandraika amin'ny OS izay efa nandalo ela ny tsingerin'ny EOL
  • Ny fampahalalana samihafa dia omena foana ho an'ny rafitra fiasana samihafa, ary tsy heverina velively ny fahadisoana mety hitranga mandritra ny fifindra-monina
  • Indraindray ianao dia tsy maintsy miatrika fanamafisam-peo izay matetika tsy te hiasa aorian'ny fifindra-monina

Rehefa mamindra mpizara 1 ianao dia afaka manamboatra zavatra foana amin'ny lalitra, fa rehefa mamindra cluster iray manontolo ianao?

Amin'ity lahatsoratra ity dia hiezaka aho hilaza aminao ny fomba hamindrana tsara ny container OpenVZ mankany KVM miaraka amin'ny fotoana fitsaharana kely sy vahaolana haingana amin'ny olana rehetra.

Fandaharana fanabeazana kely: inona ny OpenVZ ary inona ny KVM?

Tsy hiditra lalina amin'ny voambolana isika fa hilaza amin'ny teny ankapobeny hoe:

OpenVZ - virtoaly amin'ny ambaratongan'ny rafitra miasa, azonao atao mihitsy aza ny mametraka azy amin'ny microwave, satria tsy ilaina ny torolΓ lana CPU sy ny teknolojia virtoaly amin'ny milina mpampiantrano.

KVM - virtoaly feno, mampiasa ny herin'ny CPU rehetra ary afaka manao virtoaly na inona na inona, amin'ny fomba rehetra, manapaka azy amin'ny halavany sy ny crosswise.

Mifanohitra amin'ny finoan'ny besinimaro fa ho lasa oversold ny OpenVZ mpanome fampiantranoana, saingy tsy hanao izany ny KVM - soa ihany ho an'ity farany, ny KVM dia efa be loatra noho ny rahalahiny.

Inona no ho entinay?

Amin'ny maha lohahevitra fitsapana amin'ny famindrana, dia tsy maintsy nampiasa ny ala manontolo amin'ny rafitra miasa izahay izay hita ao amin'ny OpenVZ: CentOS (dika 6 sy 7), Ubuntu (14, 16 ary 18 LTS), Debian 7.

Noheverina fa ny ankamaroan'ny kaontenera OpenVZ dia efa mandeha karazana LAMP, ary ny sasany aza dia manana rindrambaiko manokana. Matetika indrindra, ireo dia fanamafisam-peo miaraka amin'ny ISPmanager, VestaCP control panel (ary matetika, tsy nohavaozina nandritra ny taona maro). Tsy maintsy raisina ihany koa ny fangatahan’izy ireo famindram-pahefana.

Ny fifindra-monina dia atao amin'ny fitehirizana ny adiresy IP an'ny kaontenera nafindra; Heverintsika fa ny IP izay nananan'ilay container dia voatahiry ao amin'ny VM ary hiasa tsy misy olana.

Alohan'ny hamindrana, andao ho azo antoka fa manana ny zava-drehetra eo am-pelatanantsika isika:

  • Mpizara OpenVZ, fidirana amin'ny fakany feno amin'ny milina mpampiantrano, fahafahana manakana / mametaka / manomboka / mamafa ny kaontenera
  • Mpizara KVM, fidirana amin'ny faka feno amin'ny milina mpampiantrano, miaraka amin'izay rehetra ambarany. Heverina fa efa voarindra avokoa ny zava-drehetra ary vonona ny handeha.

Andao hanomboka hamindra

Alohan'ny hanombohantsika ny famindrana, andeha hofaritana ny teny hanampy anao hisoroka ny fisafotofotoana:

KVM_NODE - milina fampiantranoana KVM
VZ_NODE - milina fampiantranoana OpenVZ
CTID - kaontenera OpenVZ
VM - mpizara virtoaly KVM

Miomana amin'ny fifindra-monina sy mamorona milina virtoaly.

dingana 1

Satria mila mamindra ny kaontenera any amin'ny toerana iray isika dia hamorona VM miaraka amin'ny fanamafisana mitovy amin'ny KVM_NODE.
Zava-dehibe! Mila mamorona VM ianao amin'ny rafitra miasa izay mandeha amin'ny CTID amin'izao fotoana izao. Ohatra, raha napetraka ao amin'ny CTID ny Ubuntu 14 dia tsy maintsy apetraka amin'ny VM ny Ubuntu 14. Tsy zava-dehibe ny dikan-teny madinika ary tsy dia manakiana loatra ny tsy fitovizan'izy ireo, fa ny dikan-teny lehibe dia tokony hitovy.

Aorian'ny famoronana ny VM dia havaozinay ny fonosana amin'ny CTID sy amin'ny VM (tsy tokony hafangaro amin'ny fanavaozana ny OS - tsy manavao izany izahay, manavao ny fonosana fotsiny izahay ary, raha tonga izany, ny dikan-teny OS ao anatin'ny maintany. version).

Ho an'ny CentOS dia toa tsy mampidi-doza ity dingana ity:

# yum clean all
# yum update -y

Ary tsy latsa-danja amin'ny Ubuntu sy Debian:

# apt-get update
# apt-get upgrade

dingana 2

Apetraka eo CTID, VZ_NODE ΠΈ VM utility rsync:

CentOS:

# yum install rsync -y

Debian, Ubuntu:

# apt-get install rsync -y

Tsy mametraka zavatra hafa izahay na any na any.

dingana 3

Mijanona izahay CTID amin'ny VZ_NODE ny ekipa

vzctl stop CTID

Fametrahana ny sary CTID:

vzctl mount CTID

Mandehana any amin'ny folder /vz/root/CTID ary manatanteraka

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

Eo ambanin'ny fakany, mamorona rakitra /root/exclude.txt - misy lisitry ny maningana izay tsy ho tonga amin'ny mpizara vaovao.

/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

Mifandray amin'ny KVM_NODE ary manomboka ny antsika VMmba miasa sy azo idirana amin'ny tambajotra.

Ankehitriny dia vonona ny hamindra ny zava-drehetra. Mandehana!

dingana 4

Mbola eo ambanin'ny ody, dia manao fampisehoana

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

Ny baiko rsync dia hanao ny famindrana, manantena izahay fa mazava ny fanalahidy - ny famindrana dia atao miaraka amin'ny fitehirizana ny symlinks, ny zo fidirana, ny tompony ary ny vondrona, ary ny encryption dia kilemaina noho ny hafainganam-pandeha kokoa (afaka mampiasa cipher haingana kokoa ianao, fa tsy dia zava-dehibe amin'ity asa ity izany), ary koa ny famatrarana dia kilemaina.

Rehefa vita ny rsync dia mialΓ  amin'ny chroot (amin'ny fanindriana ny ctrl+d) ary tanteraho.

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

dingana 5

Andeha isika hanao dingana maromaro izay hanampy antsika hanomboka ny VM aorian'ny famindrana avy amin'ny OpenVZ.
Amin'ny mpizara misy Systemd andao hanatanteraka baiko izay hanampy antsika hiditra amin'ny console mahazatra, ohatra, amin'ny alΓ lan'ny efijery mpizara VNC

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

Amin'ny mpizara CentOS 6 ΠΈ CentOS 7 Aza hadino ny mametraka kernel vaovao:

yum install kernel-$(uname -r)

Ny mpizara dia azo alaina avy ao, fa aorian'ny famindrana dia mety hijanona na ho voafafa.

Amin'ny mpizara CentOS 7 mila mampihatra famahana kely ho an'ny PolkitD ianao, raha tsy izany dia hianjera mandrakizay ny mpizara:

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; }

Amin'ny lohamilina rehetra, raha napetraka ny mod_fcgid ho an'ny Apache, dia hanao fanitsiana kely misy zo isika, raha tsy izany dia hidona amin'ny hadisoana 500 ny tranokala mampiasa mod_fcgid:

chmod +s `which suexec` && apachectl restart

Ary ny zavatra farany dia ilaina amin'ny fizarana Ubuntu sy Debian. Ity OS ity dia mety hianjera amin'ny baoty mandrakizay miaraka amin'ny fahadisoana

miverimberina haingana loatra. throttling execution kely

tsy mahafinaritra, fa mora raikitra, arakaraka ny OS dikan.

amin'ny Debian 9 toy izao ny fanamboarana:

ataontsika

dbus-uuidgen

raha mahazo fahadisoana isika

/usr/local/lib/libdbus-1.so.3: version `LIBDBUS_PRIVATE_1.10.8β€² tsy hita

jereo ny fisian'ny 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

raha milamina ny zava-drehetra dia ataontsika izany

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

Raha tsy manampy izany, andramo ny safidy faharoa.

Ny vahaolana faharoa amin'ny olana amin'ny throttling execution kely Mety amin'ny fizarana Ubuntu sy Debian saika rehetra.

Izahay dia manatanteraka

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

And for Ubuntu 14, Debian 7 Ankoatra izany dia manao:

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

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

Inona no nataontsika? Naverinay tamin'ny laoniny ny messagebus, izay tsy hita tamin'ny fampandehanana ny Debian/Ubuntu, ary nesorina ny modules_dep, izay avy amin'ny OpenVZ ary nanelingelina ny fampidinana ireo maody kernel maro.

dingana 6

Averinay indray ny VM, jereo ao amin'ny VNC ny fivoaran'ny entana ary, raha ny tokony ho izy, dia hidina tsy misy olana ny zava-drehetra. Na dia mety hisy olana manokana aza hipoitra aorian'ny fifindra-monina, dia tsy voafehin'ity lahatsoratra ity izy ireo ary ahitsy rehefa mipoitra.

Manantena aho fa mahasoa ity fampahalalana ity! πŸ™‚

Source: www.habr.com

Add a comment