Conas coimeádán OpenVZ 6 a aistriú chuig freastalaí KVM gan tinneas cinn

Bhí roinnt fadhbanna ag aon duine ar ghá dó coimeádán OpenVZ a aistriú chuig freastalaí le fíorúlú KVM iomlán uair amháin ina saol:

  • Tá an chuid is mó den fhaisnéis as dáta go simplí agus bhí sé ábhartha do OSes a chuaigh thar an timthriall EOL le fada
  • Cuirtear faisnéis éagsúil ar fáil i gcónaí maidir le córais oibriúcháin éagsúla, agus ní chuirtear san áireamh earráidí a d’fhéadfadh a bheith ann le linn imirce
  • Uaireanta caithfidh tú déileáil le cumraíochtaí nach bhfuil anois agus arís ag iarraidh oibriú tar éis imirce

Nuair a aistríonn tú freastalaí 1, is féidir leat rud éigin a shocrú ar an eitilt i gcónaí, ach nuair a aistríonn tú braisle iomlán?

San Airteagal seo déanfaidh mé iarracht a insint duit conas coimeádán OpenVZ a aistriú go KVM i gceart le ham aga íosta agus réiteach tapa ar gach fadhb.

Clár oideachais beag: cad é OpenVZ agus cad é KVM?

Ní rachaimid go domhain i dtéarmaíocht, ach déarfaimid i dtéarmaí ginearálta:

OpenVZ - fíorúlú ag leibhéal an chórais oibriúcháin, is féidir leat é a imscaradh fiú ar mhicreathonn, ós rud é nach bhfuil gá le treoracha LAP agus teicneolaíochtaí fíorúlaithe ar an meaisín óstach.

KVM - fíorúlú iomlán, ag baint úsáide as cumhacht uile an LAP agus atá in ann rud ar bith a fhíorú, ar bhealach ar bith, é a ghearradh ar fhad agus trasna.

Murab ionann agus a chreideann an pobal, sa timpeallacht soláthraithe óstála Tá OpenVZ ró-dhíolta, ach níl KVM. Ar ámharaí an tsaoil don dara ceann, tá KVM ró-dhíolta anois chomh maith lena dheartháir.

Cad a thabharfaimid anonn?

B’éigean an fhoraois iomlán córas oibriúcháin atá ar fáil ar OpenVZ a úsáid mar ábhair tástála don aistriú: CentOS (6 agus 7 leagan), Ubuntu (14, 16 agus 18 LTS), Debian 7.

Glacadh leis go raibh an chuid is mó de na coimeádáin OpenVZ ag rith de chineál éigin LAMP cheana féin, agus bhí roinnt bogearraí an-sonrach ag cuid acu fiú. An chuid is mó go minic, bhí siad seo cumraíochtaí leis an ISPmanager, painéal rialaithe VestaCP (agus is minice, ní nuashonraithe le blianta). Ní mór a n-iarratais ar aistriú a chur san áireamh freisin.

Déantar imirce le caomhnú Seoltaí IP I gcás coimeádáin iniompartha, glacfaimid leis go bhfuil seoladh IP an choimeádáin coimeádta ar an Meaisín Fíorúil agus go n-oibreoidh sé gan fhadhbanna.

Sula n-aistrímid, déanaimis cinnte go bhfuil gach rud idir lámha againn:

  • Freastalaí OpenVZ, rochtain fhréamh iomlán ar an meaisín ósta, cumas coimeádáin a stopadh / a shuiteáil / a thosú / a scriosadh
  • Freastalaí KVM, rochtain fréimhe iomlán ar an meaisín ósta, le gach a thugann sé le tuiscint. Glactar leis go bhfuil gach rud cumraithe cheana féin agus réidh le dul.

Tosaímid ag aistriú

Sula dtosaímid ar an aistriú, déanaimis téarmaí a shainiú a chabhróidh leat mearbhall a sheachaint:

KVM_NODE - meaisín óstach KVM
VZ_NODE - Meaisín óstach OpenVZ
CTID - OpenVZ coimeádán
VM - Freastalaí fíorúil KVM

Ag ullmhú le haghaidh imirce agus ag cruthú meaisíní fíorúla.

Céim 1

Ós rud é go gcaithfimid an coimeádán a bhogadh áit éigin, cruthóimid VM le cumraíocht cosúil le KVM_NODE.
Tábhachtach! Ní mór duit Meaisín Fíorúil a chruthú ar an gcóras oibriúcháin céanna atá ag rith faoi láthair ar an CTID. Mar shampla, má tá an CTID ag rith Ubuntu 14, ansin ní mór duit é a shuiteáil ar VM freisin Ubuntu 14. Níl leaganacha beaga tábhachtach agus níl a n-easaontas chomh ríthábhachtach sin, ach ní mór go mbeadh na leaganacha móra mar a chéile.

Tar éis an VM a chruthú, déanfaimid na pacáistí a nuashonrú ar an CTID agus ar an VM (gan a mheascadh leis an OS a nuashonrú - ní dhéanaimid é a nuashonrú, ní dhéanaimid ach na pacáistí a nuashonrú agus, má thagann sé, an leagan OS laistigh den phríomh leagan).

Chun CentOS Breathnaíonn an próiseas seo neamhdhíobhálach:

# yum clean all
# yum update -y

Agus ní lú neamhdhíobhálach do Ubuntu, Debian:

# apt-get update
# apt-get upgrade

Céim 2

Suiteáil ar CTID, VZ_NODE и VM fóntais rsync:

CentOS:

# yum install rsync -y

Debian, Ubuntu:

# apt-get install rsync -y

Níl aon rud eile á shuiteáil againn ann nó ann.

Céim 3

Déanaimid stad CTID ar VZ_NODE an fhoireann

vzctl stop CTID

Suiteáil an íomhá CTID:

vzctl mount CTID

Téigh go dtí an fillteán /vz/root/CTID agus a fhorghníomhú

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

Faoin bhfréamh, cruthaigh comhad /root/exclude.txt - beidh liosta eisceachtaí ann nach sroichfidh an freastalaí nua

/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

Ceanglaímid le KVM_NODE agus seoladh ár VMionas go n-oibríonn sé agus go bhfuil rochtain air thar an líonra.

Anois tá gach rud réidh le haistriú. Téigh!

Céim 4

Fós faoi gheasa, táimid ag feidhmiú

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

Déanfaidh an t-ordú rsync an t-aistriú, tá súil againn go bhfuil na heochracha soiléir - déantar an t-aistriú le caomhnú simplíinks, cearta rochtana, úinéirí agus grúpaí, agus tá criptiú díchumasaithe ar luas níos mó (d'fhéadfá roinnt cipher níos tapúla a úsáid, ach níl sé seo chomh tábhachtach don tasc seo) , chomh maith le comhbhrú faoi mhíchumas .

Tar éis duit rsync a chríochnú, scoir ó chroot (trí ctrl + d a bhrú) agus rith

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

Céim 5

Déanaimis roinnt céimeanna a chabhróidh linn an VM a sheoladh tar éis aistriú ó OpenVZ.
Ar fhreastalaithe le Córasáilte déanaimis ordú a fhorghníomhú a chabhróidh linn logáil isteach ar chonsól rialta, mar shampla, trí scáileán freastalaí VNC

mv /etc/systemd/system/getty.target.wants/getty@tty2.service /etc/systemd/system/getty.target.wants/getty@tty1.service

Ar fhreastalaithe CentOS 6 и CentOS 7 Bí cinnte a shuiteáil eithne úr:

yum install kernel-$(uname -r)

Is féidir an freastalaí a luchtú uaidh, ach tar éis an aistrithe féadfaidh sé stop a bheith ag obair nó scriosfar é.

Ar fhreastalaí CentOS 7 ní mór duit socrú beag a chur i bhfeidhm do PolkitD, nó beidh an freastalaí tuairteála go deo:

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

Ar gach freastalaí, má suiteáladh mod_fcgid le haghaidh Apache, déanfaimid socrú beag le cearta, nó ar shlí eile beidh suíomhanna a úsáideann mod_fcgid tuairteála le earráid 500:

chmod +s `which suexec` && apachectl restart

Agus ar deireadh, beidh sé úsáideach do Ubuntu, Debian dáiltí. Is féidir leis an gcóras oibriúcháin seo tuairteáil agus tosaithe buan a dhéanamh le hearráid

lúbadh ró-thapa. throttling fhorghníomhú beagán

míthaitneamhach, ach seasta go héasca, ag brath ar an leagan OS.

Ar Debian 9 Breathnaíonn an fix mar seo:

déanaimid

dbus-uuidgen

má fhaighimid earráid

/usr/local/lib/libdbus-1.so.3: níor aimsíodh an leagan `LIBDBUS_PRIVATE_1.10.8′

seiceáil láithreacht 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

má tá gach rud in ord, déanaimid é

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 gcuidíonn sé, bain triail as an dara rogha.

An dara réiteach ar an bhfadhb le throttling fhorghníomhú beagán oiriúnach do bheagnach gach duine Ubuntu и Debian dáiltí.

Déanaimid

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

Agus le haghaidh Ubuntu 14, Debian 7 Ina theannta sin déanaimid:

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

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

Cad a rinneamar? D’athchóirigh muid an bus teachtaireachtaí, a bhí ar iarraidh le haghaidh tosaithe. Debian/Ubuntu agus baineadh modules_dep, a tháinig ó OpenVZ agus a chuir cosc ​​ar go leor modúl eithne luchtú.

Céim 6

Déanaimid an VM a atosú, seiceáil i VNC conas atá an luchtú ag dul chun cinn agus, go hidéalach, lódálfar gach rud gan fadhbanna. Cé gur féidir go dtiocfaidh roinnt fadhbanna sonracha chun cinn tar éis an imirce, tá siad lasmuigh de raon feidhme an ailt seo agus ceartófar iad de réir mar a thagann siad chun cinn.

Tá súil agam go bhfuil an t-eolas seo úsáideach! 🙂

Foinse: will.com

Ceannaigh óstáil iontaofa do shuímh le cosaint DDoS, freastalaithe VPS VDS 🔥 Ceannaigh óstáil gréasáin iontaofa le cosaint DDoS, freastalaithe VPS VDS | ProHoster