Opennebula. Têbiniyên kurt

Opennebula. Têbiniyên kurt

Silav hemû. Ev gotar ji bo kesên ku hîn jî di navbera hilbijartina platformên virtualîzasyonê de diqewime û piştî xwendina gotara ji rêzenivîsê hate nivîsandin "Me proxmox saz kir û bi gelemperî her tişt baş e, 6 sal domdarî bêyî yek navberê." Lê piştî sazkirina yek an çareseriyek derveyî-çarçoveyê, pirs derdikeve holê: ez çawa dikarim vê li vir rast bikim, da ku çavdêrî bêtir têgihîştin, û li vir, ji bo kontrolkirina hilanînê…. Dûv re dem tê û hûn pê dihesin ku hûn tiştek bikêrtir dixwazin, an hûn dixwazin her tişt di hundurê pergala we de zelal bibe, û ne ev qutiya reş, an hûn dixwazin ji hypervisor û komek makîneyên virtual zêdetir tiştek bikar bînin. Ev gotar dê hin raman û pratîkê li ser bingeha platforma Opennebula-yê bigire - Min ew hilbijart ji ber ku. ew li ser çavkaniyan ne daxwazkar e û mîmarî ne ewqas tevlihev e.

Ji ber vê yekê, wekî ku em dibînin, gelek pêşkêşkerên ewr li ser kvm dixebitin û ji bo kontrolkirina makîneyan girêdanên derveyî çêdikin. Eşkere ye ku mêvandarên mezin çarçoveyên xwe yên ji bo binesaziya ewr dinivîsin, mînakî heman YANDEX. Kesek openstack bikar tîne û li ser vê bingehê têkiliyek çêdike - SELECTEL, MAIL.RU. Lê heke hûn hardware û karmendek piçûk a pisporan hebin, wê hingê hûn bi gelemperî tiştek amade hilbijêrin - VMWARE, HYPER-V, lîsansên belaş û drav hene, lê ew ne ya ku em niha li ser diaxivin ev e. Ka em li ser dilxwazan bipeyivin - ev ew in yên ku natirsin ku tiştek nû pêşkêş bikin û biceribînin, tevî vê yekê ku pargîdanî bi eşkere eşkere kir, "Kî dê piştî we vê xizmetê bike," "Gelo em ê paşê vê yekê bixin nav hilberînê? ? Ditirsin." Lê hûn dikarin pêşî li van çareseriyan di qonaxek ceribandinê de bicîh bikin, û heke her kes jê hez bike, wê hingê hûn dikarin pirsa pêşkeftina pêşdetir bikin û di hawîrdorên ciddî de bikar bînin.

Li vir jî lînka raporê heye www.youtube.com/watch?v=47Mht_uoX3A ji beşdarek çalak a pêşveçûna vê platformê.

Dibe ku di vê gotarê de tiştek ji pisporek pispor re zêde û jixwe tê fêm kirin, û di hin rewşan de ez ê her tiştî nebêjim ji ber ku emr û danasînên wekhev li ser Înternetê hene. Ev tenê ezmûna min bi vê platformê re ye. Ez hêvî dikim ku beşdarên çalak dê di şîroveyan de zêde bikin ka çi çêtir dibe û min çi xeletî kir. Hemû çalakî di standa malê de ku ji 3 PC-yên xwedî taybetmendiyên cuda pêk dihat pêk hatin. Di heman demê de, min bi taybetî destnîşan nekir ku ev nermalavê çawa dixebite û meriv wê çawa saz dike. Na, tenê ezmûna rêveberiyê û pirsgirêkên ku ez pê re rû bi rû bûm. Dibe ku ev ê di hilbijartina xwe de ji kesek re kêrhatî be.

Ji ber vê yekê, em dest pê bikin. Wekî rêveberê pergalê, xalên jêrîn ji min re girîng in, bêyî ku ez ne mimkûn e ku ez vê çareseriyê bikar bînim.

1. Dubarebûna sazkirinê

Ji bo sazkirina opennebula gelek rêwerz hene, divê tu pirsgirêk tunebin. Ji guhertoyek berbi guhertoyê, taybetmendiyên nû xuya dibin ku dema ku ji guhertoyek berbi guhertoyê diçin dê her gav nexebitin.

2. Şopandin

Em ê node bixwe, kvm û opennebula bişopînin. Xwezî, ew jixwe amade ye. Di derbarê çavdêriya mêvandarên Linux-ê de, heman Zabbix an hinardekarê girêk - yê ku çi çêtir jê hez dike - gelek vebijark hene - di vê gavê de ez wê wekî pîvanên pergala şopandinê (germahiya ku lê were pîvandin, domdariya rêzika dîskê), bi navgîniya zabbix pênase dikim. , û ji bo serîlêdanên bi navgîniya derhênerê Prometheus. Ji bo çavdêriya kvm, ji bo nimûne, hûn dikarin projeyê bigirin github.com/zhangjianweibj/prometheus-libvirt-exporter.git û wê saz bikin ku bi riya systemd-ê ve were xebitandin, ew pir baş dixebite û metrîkên kvm-ê destnîşan dike, di heman demê de dashboardek amade jî heye grafana.com/grafana/dashboards/12538.

Ji bo nimûne, li vir pelê min e:

/etc/systemd/system/libvirtd_exporter.service
[Unit]
Description=Node Exporter

[Service]
User=node_exporter
ExecStart=/usr/sbin/prometheus-libvirt-exporter --web.listen-address=":9101"

[Install]
WantedBy=multi-user.target

Û ji ber vê yekê me 1 hinardekar heye, ji me re yekî duyemîn hewce ye ku ji bo çavdêriya opennebula xwe bixwe, min ev bikar anî github.com/kvaps/opennebula-exporter/blob/master/opennebula_exporter

Dikare li normal were zêdekirin node_exporter ji bo çavdêriya pergala jêrîn.

Di pelê node_exporter de em destpêkê bi vî rengî diguherînin:

ExecStart=/usr/sbin/node_exporter --web.listen-address=":9102" --collector.textfile.directory=/var/lib/opennebula_exporter/textfile_collector

Pelrêçek mkdir -p /var/lib/opennebula_exporter biafirîne

skrîpta bash ku li jor hatî pêşkêş kirin, pêşî em xebatê bi navgîniya konsolê ve kontrol dikin, ger ew hewcedariya me nîşan dide (heke ew xeletiyek bide, wê hingê xmlstarlet saz bikin), wê kopî bikin /usr/local/bin/opennebula_exporter.sh

Ji bo her hûrdem karekî kron lê zêde bikin:

*/1 * * * * (/usr/local/bin/opennebula_exporter.sh > /var/lib/opennebula_exporter/textfile_collector/opennebula.prom)

Metrics dest pê kir ku xuya bibin, hûn dikarin wan wekî prometheus bigirin û grafîkan ava bikin û hişyar bikin. Di Grafana de hûn dikarin, mînakî, tabloyek wusa hêsan xêz bikin.

Opennebula. Têbiniyên kurt

(Eşkere ye ku li vir ez cpu, ram zêde dikim)

Ji bo kesên ku Zabbix hez dikin û bikar tînin, heye github.com/OpenNebula/addon-zabbix

Bi qasî çavdêriyê, ya sereke ew e ku ew li wir e. Bê guman, hûn dikarin, wekî din, amûrên çavdêriya makîneya virtual ya çêkirî bikar bînin û daneyan li fatureyê bar bikin, li vir her kes dîtina xwe heye, min hîna ji nêz ve dest bi xebatê nekiriye.

Min hîna bi rastî dest bi têketinê nekiriye. Vebijarka herî hêsan ev e ku meriv td-agent zêde bike da ku pelrêça /var/lib/one bi vegotinên rêkûpêk parsek bike. Mînakî, pelê sunstone.log bi nginx regexp û pelên din ên ku dîroka gihîştina platformê nîşan didin li hev dike - feydeya vê çi ye? Welê, mînakî, em dikarin bi eşkere hejmara "Çewtî, xeletî" bişopînin û zû bişopînin ka li ku û di kîjan astê de xeletiyek heye.

3. Backups

Di heman demê de projeyên qedandî yên dravî jî hene - mînakî sep wiki.sepsoftware.com/wiki/index.php/4_4_3_Tigon:OpenNebula_Backup. Li vir divê em fêhm bikin ku di vê rewşê de bi tenê paşvekişandina wêneyek makîneyê ne yek e, ji ber ku makîneyên meya virtual divê bi tevheviyek tevahî bixebitin (heman pelê çarçoveyê ku mîhengên torê, navê vm û mîhengên xwerû yên ji bo serîlêdanên we diyar dike) . Ji ber vê yekê, li vir em biryar didin ku em ê çi û çawa pişta xwe bidin. Di hin rewşan de çêtir e ku meriv kopiyên tiştê ku di vm-ê de bixwe de heye were çêkirin. Û dibe ku hûn tenê hewce ne ku yek dîskek ji makîneyek diyarkirî paşve bikin.

Mînakî, me destnîşan kir ku hemî makîneyên bi wêneyên domdar dest pê dikin, ji ber vê yekê, piştî xwendinê docs.opennebula.io/5.12/operation/vm_management/img_guide.html

Ev tê vê wateyê ku pêşî em dikarin wêneyê ji vm-ya xwe bar bikin:

onevm disk-saveas 74 3 prom.qcow2
Image ID: 77

Смотрим, под каким именем он сохранился

oneimage show 77
/var/lib/one//datastores/100/f9503161fe180658125a9b32433bf6e8
   
И далее копируем куда нам необходимо. Конечно, так себе способ. Просто хотел показать, что используя инструменты opennebula можно строить подобные решения.

Min li Înternetê jî dît rapora balkêş û bêtir heye projeyek wisa vekirî, lê tenê ji bo qcow2 hilanînê heye.

Lê wekî ku em hemî pê dizanin, zû an dereng demek tê ku hûn paşvekişandinên zêde dixwazin, li vir dijwartir e û dibe ku rêveberî ji bo çareseriyek drav drav veqetîne, an jî bi rêyek din ve biçin û fêm bikin ku li vir em tenê çavkaniyan qut dikin, û çêkirina paşgiran di asta serîlêdanê de û lê zêdekirina hejmarek girêkên nû û makîneyên virtual - erê, li vir, ez dibêjim ku ewr bi tenê ji bo destpêkirina komikên serîlêdanê, û destpêkirina databasê li ser platformek din an girtina yekek amade ye. ji dabînkerê, heke gengaz be.

4. Bikaranîna hêsan

Di vê paragrafê de ez ê pirsgirêkên ku ez pê re rû bi rû binivîsim. Mînakî, li gorî wêneyan, wekî ku em dizanin, domdar heye - dema ku ev wêne li vm-ê were danîn, hemî dane li ser vê wêneyê têne nivîsandin. Û heke ne domdar be, wê hingê wêne li hilanînê tê kopî kirin û dane li tiştê ku ji wêneya çavkaniyê hatî kopî kirin tê nivîsandin - bi vî rengî şablonên şablonê dixebitin. Min gelek caran ji xwe re pirsgirêk derxist ku ji bîr kir ku domdar diyar bikim û wêneya 200 GB hate kopî kirin, pirsgirêk ev e ku ev pêvajo bê guman nayê betal kirin, divê hûn biçin nodê û pêvajoya "cp" ya heyî bikujin.

Yek ji dezawantajên girîng ev e ku hûn nekarin çalakiyan bi tenê bi karanîna gui betal bikin. An jî, hûn ê wan betal bikin û bibînin ku tiştek çênabe û hûn ê wan ji nû ve dest pê bikin, wan betal bikin û bi rastî dê jixwe pêvajoyên 2 cp hebin ku wêneyê kopî dikin.

Û dûv re tê fêm kirin ka çima opennebula her mînakek nû bi id-ya nû re jimare dike, mînakî, di heman proxmoxê de vmek bi id 101 afirand, jê bir, dûv re hûn dîsa û id 101 diafirînin. Di opennebula de ev ê nebe, her mînakek nû dê bi nasnameyek nû were afirandin û ev jî mantiqa xwe heye - mînakî, paqijkirina daneyên kevn an sazkirinên neserkeftî.

Heman tişt ji bo hilanînê jî; ya herî zêde, ev platform ji bo hilanîna navendî armanc e. Ji bo karanîna herêmî lêzêde hene, lê ya ku em di vê rewşê de behs dikin ne ev e. Ez difikirim ku di pêşerojê de kesek dê gotarek binivîsîne ka wan çawa kariye hilanîna herêmî li ser girêkan bikar bîne û bi serfirazî di hilberînê de bikar bîne.

5. Maximum sade

Bê guman, her ku hûn pêşve diçin, yên ku dê we fêm bikin kêmtir dibin.

Di bin şert û mercên standa min de - 3 nod bi hilanîna nfs - her tişt baş dixebite. Lê heke em ceribandinên bi qutbûna elektrîkê pêk bînin, mînakî, dema ku dîmenek dimeşînin û hêza girêkê qut dikin, em mîhengan di databasê de tomar dikin ku wêneyek heye, lê di rastiyê de tune ye (baş, em hemî fam dikin ku em di destpêkê de databasa li ser vê çalakiyê di sql de nivîsand, lê operasyon bixwe ne serketî bû). Feyde ev e ku dema ku wêneyek çêdibe, pelek veqetandî tê çêkirin û "dûbav"ek heye, ji ber vê yekê di rewşên pirsgirêkan de û heke ew bi gui nexebite jî, em dikarin pelê qcow2 hildin û wê ji hev cuda vegerînin. docs.opennebula.io/5.8/operation/vm_management/vm_instances.html

Li ser toran, mixabin, her tişt ne ew çend hêsan e. Welê, bi kêmanî ew ji openstack-ê hêsantir e, min tenê vlan (802.1Q) bikar anî - ew pir baş dixebite, lê heke hûn guheztinan li mîhengan ji tora şablonê bikin, wê hingê ev mîheng dê li ser makîneyên ku berê dixebitin neyên sepandin, yanî. divê hûn qerta torê jêbirin û lê zêde bikin, wê hingê mîhengên nû dê werin sepandin.

Heke hûn hîn jî dixwazin wê bi openstack re bidin hev, wê hingê hûn dikarin vê yekê bibêjin: di opennebula de pênaseyek zelal tune ku kîjan teknolojiyên ji bo hilanîna daneyan, birêvebirina torê, çavkaniyan bikar bînin - her rêveber bi xwe biryar dide ka ji bo wî çi hêsantir e.

6. Pêvek û sazkirinên din

Beriya her tiştî, wekî ku em jê fam dikin, platforma ewr dikare ne tenê kvm, lê di heman demê de vmware esxi jî birêve bibe. Mixabin, min hewzek bi Vcenter re tune bû, ger kesek ceribandibe, ji kerema xwe binivîse.

Piştgiriya ji bo pêşkêşkerên din ên ewr tê diyar kirin docs.opennebula.io/5.12/advanced_components/cloud_bursting/index.html
AWS, AZURE.

Min di heman demê de hewl da ku Vmware Cloud ji Selectel ve girêbidim, lê tiştek nexebitî - bi gelemperî, ew hate asteng kirin ji ber ku gelek faktor hene, û ti wateya nivîsandinê ji piştgiriya teknîkî ya pêşkêşvanê mêvandariyê re tune.

Di heman demê de, naha guhertoya nû xwedan firingî ye - ev destpêkirina microvm-ê ye, celebek kvm-ê li ser dokerê, ku hê pirtirkêmtir, ewlehî û hilberdariya zêde dide ji ber ku ne hewce ye ku çavkaniyan li ser alavan emûl bikin. Yekane avantaja ku ez li ser Docker dibînim ev e ku ew hejmarek pêvajoyek zêde digire û dema ku vê emûlasyonê bikar tîne tu soketên dagirkirî tune ne, yanî. Pir mimkun e ku meriv wê wekî balansek barkirinê bikar bîne (lê belkî hêja ye ku di derbarê vê de gotarek cûda binivîsim heya ku ez hemî ceribandinan bi tevahî nekim).

7. Tecrûbeya erênî ya karanîna û xeletiya çewtiyê

Min xwest dîtinên xwe yên derbarê xebatê de parve bikim, min li jor hinek ji wan diyar kir, ez dixwazim bêtir binivîsim. Bi rastî, belkî ez ne tenê me ku di destpêkê de difikire ku ev ne pergalek rast e û bi gelemperî her tişt li vir xelekek e - ew çawa bi vê yekê re jî dixebitin? Lê paşê têgihîştin ku her tişt bi tevahî mentiqî ye. Bê guman, hûn nekarin her kesî xweş bikin û hin alî çêtirbûnê hewce dikin.

Mînakî, operasyonek hêsan a kopîkirina wêneyek dîskê ji datastorek din. Di doza min de, 2 nodên bi nfs hene, ez wêneyê dişînim - kopîkirin bi riya vekirînebula pêşiyê pêk tê, her çend em hemî bi vê yekê aciz in ku divê dane rasterast di navbera mêvandaran de bêne kopî kirin - di heman vmware, hyper-v de em in. bi vê yekê vexwendiye, lê li vir bi yekî din. Nêzîkatiyek cûda û îdeolojîyek cûda heye, û di guhertoya 5.12-an de wan bişkoja "koçkirina datastore" rakirin - tenê makîneya xwe tê veguheztin, lê ne hilanînê ji ber ku tê wateya hilanîna navendî.

Dûv re xeletiyek populer a bi sedemên cihêreng heye: "Çewtiya bi cîhkirina makîneya virtual: Nekarî domainê ji /var/lib/one//datastores/103/10/deployment biafirîne.5" Li jêr tiştê herî jor e ku meriv lê binêre.

  • Mafên wêneyê ji bo bikarhênerê yekadmin;
  • Destûrên ji bo bikarhênerê oneadmin ku libvirtd bimeşîne;
  • Ma datastore rast hatî danîn? Herin û riya li ser nodê bixwe kontrol bikin, dibe ku tiştek ji holê rabe;
  • Tora ku bi xeletî hatî mîheng kirin, an bêtir li pêşê ew di mîhengên torê de ye ku navbeynkariya sereke ji bo vlan br0 e, lê li ser nodê ew wekî bridge0 tête nivîsandin - divê ew yek be.

pergala datastore metadata ji bo vm-ya we hildide, heke hûn vm-yê bi wêneyek domdar dimeşînin, wê hingê pêdivî ye ku vm bigihîje veavakirina destpêkê ya hatî afirandin li ser hilanînê ku we vm lê afirandiye - ev pir girîng e. Ji ber vê yekê, dema veguheztina vm-ê ji danegehek din re, hûn hewce ne ku her tiştî ducarî kontrol bikin.

8. Belgekirin, civak. Pêşveçûna bêtir

Ya mayî, belgeyên baş, civak û ya sereke ev e ku proje di pêşerojê de bijî.

Bi gelemperî, her tişt pir baş tête belge kirin û tewra bi karanîna çavkaniyek fermî jî dê sazkirin û dîtina bersiva pirsan ne pirsgirêk be.

Civak, çalak. Gelek çareseriyên hazir ên ku hûn dikarin di sazkirinên xwe de bikar bînin diweşîne.

Heya nuha, hin polîtîkayên di pargîdaniyê de ji 5.12 ve hatine guhertin forum.opennebula.io/t/towards-a-stronger-opennebula-community/8506/14 Dê balkêş be ku hûn bibînin ka proje çawa pêş dikeve. Di destpêkê de, min bi taybetî hin firoşkarên ku çareseriyên xwe bikar tînin û ya ku pîşesaziyê pêşkêşî dike destnîşan kir. Bê guman, bersivek zelal tune ku meriv çi bikar bîne. Lê ji bo rêxistinên piçûk, domandina ewrê xweya piçûktir dibe ku ne ew qas biha be ku xuya dike. Ya sereke ev e ku hûn bi rastî zanibin ku hûn çi hewce ne.

Wekî encamek, bêyî ku hûn wekî pergala ewr hilbijêrin, divê hûn li yek hilberek rawestin. Ger wextê we hebe, hêja ye ku meriv li çareseriyên din ên vekirîtir binêre.

sohbeteke baş heye t.me/opennebula Ew bi awayekî çalak alîkarî dikin û we naşînin ku hûn li çareseriyek pirsgirêkê li Google bigerin. Tevlî me bibin.

Source: www.habr.com

Add a comment