Opennebula. Vidokezo vifupi

Opennebula. Vidokezo vifupi

Salaam wote. Nakala hii iliandikwa kwa wale ambao bado wamevunjwa kati ya kuchagua majukwaa ya uvumbuzi na baada ya kusoma nakala kutoka kwa safu "Tulisakinisha proxmox na kwa ujumla kila kitu kiko sawa, miaka 6 ya uptime bila mapumziko hata moja." Lakini baada ya kusanikisha suluhisho moja au lingine la nje ya sanduku, swali linatokea: ninawezaje kusahihisha hii hapa, ili ufuatiliaji ueleweke zaidi, na hapa, kudhibiti nakala rudufu…. Na kisha wakati unakuja na unagundua kuwa unataka kitu kinachofanya kazi zaidi, au unataka kila kitu ndani ya mfumo wako kiwe wazi, na sio sanduku hili nyeusi, au unataka kutumia kitu zaidi ya hypervisor na rundo la mashine za kawaida. Nakala hii itakuwa na mawazo na mazoezi kulingana na jukwaa la Opennebula - niliichagua kwa sababu. haihitaji rasilimali na usanifu sio ngumu sana.

Na kwa hivyo, kama tunavyoona, watoa huduma wengi wa wingu hufanya kazi kwenye kvm na kutengeneza miunganisho ya nje ili kudhibiti mashine. Ni wazi kwamba wahudumu wakubwa huandika mifumo yao wenyewe ya miundombinu ya wingu, YANDEX sawa kwa mfano. Mtu hutumia openstack na hufanya uunganisho kwa msingi huu - SELECTEL, MAIL.RU. Lakini ikiwa una vifaa vyako mwenyewe na wafanyakazi wadogo wa wataalam, basi kawaida huchagua kitu kilichopangwa tayari - VMWARE, HYPER-V, kuna leseni za bure na za kulipwa, lakini sivyo tunazungumzia sasa. Wacha tuzungumze juu ya wanaopenda - hawa ni wale ambao hawaogopi kutoa na kujaribu kitu kipya, licha ya ukweli kwamba kampuni iliweka wazi, "Nani atatoa huduma hii baada yako," "Je, tutatoa hii katika uzalishaji baadaye. ? Inatisha." Lakini unaweza kwanza kutumia ufumbuzi huu katika benchi ya mtihani, na ikiwa kila mtu anapenda, basi unaweza kuinua swali la maendeleo zaidi na kutumia katika mazingira makubwa zaidi.

Pia hapa kuna kiunga cha ripoti hiyo www.youtube.com/watch?v=47Mht_uoX3A kutoka kwa mshiriki hai katika ukuzaji wa jukwaa hili.

Pengine katika makala hii kitu kitakuwa kisichozidi na tayari kinaeleweka kwa mtaalamu mwenye ujuzi, na katika baadhi ya matukio sitaelezea kila kitu kwa sababu amri na maelezo sawa yanapatikana kwenye mtandao. Huu ni uzoefu wangu tu na jukwaa hili. Natumai kuwa washiriki wanaohusika wataongeza kwenye maoni kile kinachoweza kufanywa vizuri zaidi na makosa gani niliyofanya. Vitendo vyote vilifanyika katika msimamo wa nyumbani unaojumuisha PC 3 na sifa tofauti. Pia, sikuonyesha hasa jinsi programu hii inavyofanya kazi na jinsi ya kuiweka. Hapana, uzoefu wa utawala tu na matatizo niliyokumbana nayo. Labda hii itakuwa na manufaa kwa mtu katika uchaguzi wao.

Kwa hiyo, hebu tuanze. Kama msimamizi wa mfumo, vidokezo vifuatavyo ni muhimu kwangu, bila ambayo hakuna uwezekano wa kutumia suluhisho hili.

1. Usanikishaji kurudiwa

Kuna maagizo mengi ya kufunga opennebula, haipaswi kuwa na shida yoyote. Kutoka toleo hadi toleo, vipengele vipya vinaonekana ambavyo havitafanya kazi kila wakati wakati wa kuhama kutoka toleo hadi toleo.

2. Ufuatiliaji

Tutafuatilia nodi yenyewe, kvm na opennebula. Kwa bahati nzuri, tayari iko tayari. Kuna chaguzi nyingi juu ya ufuatiliaji wa majeshi ya Linux, Zabbix sawa au msafirishaji wa nodi - yeyote anayependa bora zaidi - kwa sasa ninaifafanua kama vipimo vya mfumo wa ufuatiliaji (joto ambapo inaweza kupimwa, uthabiti wa safu ya diski), kupitia zabbix. , na kuhusu maombi kupitia msafirishaji wa Prometheus. Kwa ufuatiliaji wa kvm, kwa mfano, unaweza kuchukua mradi github.com/zhangjianweibj/prometheus-libvirt-exporter.git na kuiweka iendeshe kupitia systemd, inafanya kazi vizuri na inaonyesha metriki za kvm, pia kuna dashibodi iliyotengenezwa tayari. grafana.com/grafana/dashboards/12538.

Kwa mfano, hapa kuna faili yangu:

/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

Na kwa hivyo tuna muuzaji nje 1, tunahitaji ya pili kufuatilia opennebula yenyewe, nilitumia hii github.com/kvaps/opennebula-exporter/blob/master/opennebula_exporter

Inaweza kuongezwa kwa kawaida nodi_nje kufuatilia mfumo zifuatazo.

Katika node_exporter faili tunabadilisha kuanza kama hii:

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

Unda saraka mkdir -p /var/lib/opennebula_exporter

bash iliyowasilishwa hapo juu, kwanza tunaangalia kazi kupitia koni, ikiwa inaonyesha kile tunachohitaji (ikiwa inatoa kosa, kisha usakinishe xmlstarlet), nakala kwa /usr/local/bin/opennebula_exporter.sh

Ongeza kazi ya cron kwa kila dakika:

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

Vipimo vilianza kuonekana, unaweza kuzichukua kama prometheus na kuunda grafu na kutoa arifa. Katika Grafana unaweza kuchora, kwa mfano, dashibodi rahisi kama hiyo.

Opennebula. Vidokezo vifupi

(ni wazi kuwa hapa ninashinda cpu, kondoo mume)

Kwa wale wanaopenda na kutumia Zabbix, kuna github.com/OpenNebula/addon-zabbix

Kwa upande wa ufuatiliaji, jambo kuu ni kwamba iko. Bila shaka, unaweza, kwa kuongeza, kutumia zana za ufuatiliaji wa mashine za kujengwa ndani na kupakia data kwa bili, hapa kila mtu ana maono yake mwenyewe, sijaanza kufanya kazi kwa karibu zaidi.

Bado sijaanza kukata miti. Chaguo rahisi zaidi ni kuongeza td-agent ili kuchanganua saraka /var/lib/one na misemo ya kawaida. Kwa mfano, faili ya sunstone.log inalingana na nginx regexp na faili zingine zinazoonyesha historia ya ufikiaji wa jukwaa - ni faida gani ya hii? Naam, kwa mfano, tunaweza kufuatilia kwa uwazi idadi ya "Hitilafu, kosa" na kufuatilia haraka wapi na kwa kiwango gani kuna malfunction.

3. Hifadhi rudufu

Pia kuna miradi iliyokamilishwa inayolipwa - kwa mfano sep wiki.sepsoftware.com/wiki/index.php/4_4_3_Tigon:FunguaNebula_Chelezo. Hapa lazima tuelewe kwamba kuhifadhi nakala ya picha ya mashine sio sawa kabisa katika kesi hii, kwa sababu mashine zetu za mtandaoni lazima zifanye kazi kwa ushirikiano kamili (faili sawa ya muktadha inayoelezea mipangilio ya mtandao, jina la vm na mipangilio maalum ya programu zako) . Kwa hivyo, hapa tunaamua nini na jinsi tutakavyounga mkono. Katika baadhi ya matukio ni bora kufanya nakala za kile kilicho katika vm yenyewe. Na labda unahitaji tu kuhifadhi diski moja kutoka kwa mashine fulani.

Kwa mfano, tuliamua kwamba mashine zote zinaanza na picha zinazoendelea, kwa hiyo, baada ya kusoma docs.opennebula.io/5.12/operation/vm_management/img_guide.html

Hii inamaanisha kuwa kwanza tunaweza kupakia picha kutoka kwa vm yetu:

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

Π‘ΠΌΠΎΡ‚Ρ€ΠΈΠΌ, ΠΏΠΎΠ΄ ΠΊΠ°ΠΊΠΈΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΎΠ½ сохранился

oneimage show 77
/var/lib/one//datastores/100/f9503161fe180658125a9b32433bf6e8
   
И Π΄Π°Π»Π΅Π΅ ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅ΠΌ ΠΊΡƒΠ΄Π° Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Ρ‚Π°ΠΊ сСбС способ. ΠŸΡ€ΠΎΡΡ‚ΠΎ Ρ…ΠΎΡ‚Π΅Π» ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ инструмСнты opennebula ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ.

Pia nilipata kwenye mtandao ripoti ya kuvutia na kuna zaidi mradi wazi kama huo, lakini kuna hifadhi ya qcow2 pekee.

Lakini kama sisi sote tunajua, mapema au baadaye inakuja wakati ambapo unataka nakala za ziada, ni ngumu zaidi hapa na labda usimamizi utatenga pesa kwa suluhisho la kulipwa, au kwenda kwa njia nyingine na kuelewa kuwa hapa tunakata rasilimali tu, na kutengeneza chelezo katika kiwango cha programu na kuongeza idadi ya nodi mpya na mashine za kawaida - ndio, hapa, ninasema kwamba kutumia wingu kuzindua vikundi vya programu, na kuzindua hifadhidata kwenye jukwaa lingine au kuchukua iliyotengenezwa tayari. kutoka kwa muuzaji, ikiwezekana.

4. Urahisi wa kutumia

Katika aya hii nitaelezea matatizo niliyokumbana nayo. Kwa mfano, kulingana na picha, kama tunavyojua, kuna kuendelea - wakati picha hii imewekwa kwa vm, data yote imeandikwa kwa picha hii. Na ikiwa haiendelei, basi picha inakiliwa kwenye hifadhi na data imeandikwa kwa kile kilichonakiliwa kutoka kwa picha ya chanzo - hii ni jinsi templates za templates zinavyofanya kazi. Nilijisababishia matatizo mara kwa mara kwa kusahau kutaja kuendelea na picha ya GB 200 ilinakiliwa, tatizo ni kwamba utaratibu huu hakika hauwezi kufutwa, unapaswa kwenda kwenye node na kuua mchakato wa sasa wa "cp".

Moja ya hasara muhimu ni kwamba huwezi kughairi vitendo kwa kutumia tu gui. Au tuseme, utazifuta na kuona kwamba hakuna kinachotokea na utazianzisha tena, kuzifuta na kwa kweli kutakuwa na michakato 2 ya cp inayoiga picha.

Na kisha inakuja kuelewa kwa nini nambari za opennebula kila mfano mpya na kitambulisho kipya, kwa mfano, katika proxmox sawa iliunda vm na id 101, iliifuta, kisha uiunda tena na id 101. Katika opennebula hii haitatokea, kila tukio jipya litaundwa kwa kitambulisho kipya na hii ina mantiki yake - kwa mfano, kufuta data ya zamani au usakinishaji ambao haujafaulu.

Vile vile huenda kwa uhifadhi; zaidi ya yote, jukwaa hili linalenga uhifadhi wa kati. Kuna nyongeza za kutumia ndani, lakini sio hivyo tunazungumza katika kesi hii. Nadhani katika siku zijazo mtu ataandika makala kuhusu jinsi walivyoweza kutumia hifadhi ya ndani kwenye nodes na kuitumia kwa ufanisi katika uzalishaji.

5. Upeo wa unyenyekevu

Bila shaka, unapoendelea zaidi, wale ambao watakuelewa huwa wachache.

Chini ya masharti ya msimamo wangu - nodi 3 zilizo na uhifadhi wa nfs - kila kitu hufanya kazi vizuri. Lakini ikiwa tutafanya majaribio yanayohusisha kukatika kwa umeme, kwa mfano, wakati wa kuendesha picha na kuzima nguvu ya nodi, tunahifadhi mipangilio kwenye hifadhidata kwamba kuna picha, lakini kwa kweli hakuna (vizuri, sote tunaelewa kuwa hapo awali aliandika hifadhidata kuhusu hatua hii sql , lakini operesheni yenyewe haikufanikiwa). Faida ni kwamba wakati wa kuunda snapshot, faili tofauti huundwa na kuna "mzazi", kwa hiyo katika kesi ya matatizo na hata ikiwa haifanyi kazi kupitia gui, tunaweza kuchukua faili ya qcow2 na kurejesha tofauti. docs.opennebula.io/5.8/operation/vm_management/vm_instances.html

Kwenye mitandao, kwa bahati mbaya, sio kila kitu ni rahisi sana. Naam, angalau ni rahisi zaidi kuliko katika openstack, nilitumia tu vlan (802.1Q) - inafanya kazi vizuri kabisa, lakini ikiwa utafanya mabadiliko kwenye mipangilio kutoka kwenye mtandao wa template, basi mipangilio hii haitatumika kwa mashine tayari zinazoendesha, i.e. unahitaji kufuta na kuongeza kadi ya mtandao, kisha mipangilio mipya itatumika.

Ikiwa bado unataka kulinganisha na openstack, basi unaweza kusema hivi: katika opennebula hakuna ufafanuzi wazi wa teknolojia gani za kutumia kuhifadhi data, kusimamia mtandao, rasilimali - kila msimamizi anaamua mwenyewe ni nini kinachofaa zaidi kwake.

6. Plugins ziada na mitambo

Baada ya yote, kama tunavyoelewa, jukwaa la wingu linaweza kusimamia sio kvm tu, bali pia vmware esxi. Kwa bahati mbaya, sikuwa na bwawa na Vcenter, ikiwa kuna mtu amejaribu, tafadhali andika.

Usaidizi kwa watoa huduma wengine wa wingu umeelezwa docs.opennebula.io/5.12/advanced_components/cloud_bursting/index.html
AWS, AZURE.

Nilijaribu pia kuunganisha Vmware Cloud kutoka kwa Selectel, lakini hakuna kitu kilichofanya kazi - kwa ujumla, ilizuiwa kwa sababu kuna mambo mengi, na hakuna maana ya kuandika kwa msaada wa kiufundi wa mtoa huduma mwenyeji.

Pia, sasa toleo jipya lina firecracker - hii ni uzinduzi wa microvm, aina ya kvm kuunganisha juu ya docker, ambayo inatoa hata versatility zaidi, usalama na kuongezeka kwa tija kwa sababu hakuna haja ya kupoteza rasilimali kwenye vifaa vya kuiga. Faida pekee ninayoona juu ya Docker ni kwamba haichukui idadi ya ziada ya michakato na hakuna soketi zilizochukuliwa wakati wa kutumia uigaji huu, n.k. Inawezekana kabisa kuitumia kama usawazishaji wa mzigo (lakini labda inafaa kuandika nakala tofauti kuhusu hili hadi nitakapomaliza majaribio yote kikamilifu).

7. Uzoefu mzuri wa utumiaji na utatuzi wa makosa

Nilitaka kushiriki uchunguzi wangu kuhusu kazi, nilielezea baadhi yake hapo juu, ningependa kuandika zaidi. Kwa kweli, labda sio mimi pekee ambaye mwanzoni anafikiria kuwa huu sio mfumo sahihi na kwa ujumla kila kitu hapa ni mkongojo - wanafanyaje kazi na hii? Lakini basi uelewa unakuja kwamba kila kitu ni mantiki kabisa. Bila shaka, huwezi kumfurahisha kila mtu na baadhi ya vipengele vinahitaji uboreshaji.

Kwa mfano, operesheni rahisi ya kunakili picha ya diski kutoka kwa hifadhidata moja hadi nyingine. Kwa upande wangu, kuna nodi 2 zilizo na nfs, mimi hutuma picha - kunakili hufanyika kupitia opennebula ya mbele, ingawa sote tumezoea ukweli kwamba data inapaswa kunakiliwa moja kwa moja kati ya majeshi - katika vmware sawa, hyper-v sisi ni. wamezoea hii, lakini hapa kwa mwingine. Kuna mbinu tofauti na itikadi tofauti, na katika toleo la 5.12 waliondoa kitufe cha "hamia kwenye hifadhidata" - mashine yenyewe tu ndiyo inayohamishwa, lakini sio uhifadhi kwa sababu. inamaanisha uhifadhi wa kati.

Inayofuata ni hitilafu maarufu yenye sababu mbalimbali: "Hitilafu ya kupeleka mashine pepe: Haikuweza kuunda kikoa kutoka /var/lib/one//datastores/103/10/deployment.5" Hapa chini kuna jambo la juu la kutazama.

  • Haki za picha kwa mtumiaji wa msimamizi mmoja;
  • Ruhusa kwa mtumiaji wa oneadmin kuendesha libvirtd;
  • Je, hifadhidata imewekwa kwa usahihi? Nenda na uangalie njia kwenye node yenyewe, labda kitu kimeanguka;
  • Mtandao uliosanidiwa vibaya, au tuseme kwenye sehemu ya mbele iko kwenye mipangilio ya mtandao ambayo kiolesura kikuu cha vlan ni br0, lakini kwenye nodi imeandikwa kama bridge0 - lazima iwe sawa.

hifadhidata ya mfumo huhifadhi metadata ya vm yako, ikiwa unaendesha vm na picha inayoendelea, basi vm inahitaji kupata usanidi ulioundwa hapo awali kwenye hifadhi ambapo uliunda vm - hii ni muhimu sana. Kwa hiyo, wakati wa kuhamisha vm kwenye hifadhidata nyingine, unahitaji kuangalia kila kitu mara mbili.

8. Nyaraka, jumuiya. Maendeleo zaidi

Na wengine, nyaraka nzuri, jumuiya na jambo kuu ni kwamba mradi unaendelea kuishi katika siku zijazo.

Hapa, kwa ujumla, kila kitu kimeandikwa vizuri na hata kutoka kwa chanzo rasmi haitakuwa tatizo kufunga na kupata majibu ya maswali.

Jumuiya, hai. Huchapisha suluhu nyingi zilizotengenezwa tayari ambazo unaweza kutumia katika usakinishaji wako.

Kwa sasa, baadhi ya sera katika kampuni zimebadilika tangu 5.12 forum.opennebula.io/t/kuelekea-jamii-ya-nguvu-ya-kufungua-imara/8506/14 Itakuwa ya kuvutia kuona jinsi mradi unaendelea. Mwanzoni, nilielezea hasa baadhi ya wachuuzi wanaotumia ufumbuzi wao na kile ambacho sekta hutoa. Bila shaka, hakuna jibu wazi juu ya nini cha kutumia. Lakini kwa mashirika madogo, kudumisha wingu lao ndogo la kibinafsi kunaweza kuwa ghali kama inavyoonekana. Jambo kuu ni kujua nini hasa unahitaji.

Kama matokeo, bila kujali unachochagua kama mfumo wa wingu, haupaswi kuacha bidhaa moja. Ikiwa unayo wakati, inafaa kutazama suluhisho zingine zilizo wazi zaidi.

Kuna mazungumzo mazuri t.me/opennebula Wanasaidia kikamilifu na hawakutumi kutafuta suluhu la tatizo kwenye Google. Jiunge nasi.

Chanzo: mapenzi.com

Kuongeza maoni