Opennebula. Cathetan cekak

Opennebula. Cathetan cekak

Halo kabeh. Artikel iki ditulis kanggo wong-wong sing isih bingung milih platform virtualisasi lan sawise maca artikel saka seri "We nginstal proxmox lan umume kabeh apik, 6 taun uptime tanpa istirahat siji." Nanging sawise nginstal siji utawa liyane solusi metu-saka-ing-kothak, pitakonan muncul: carane aku bisa mbenerake iki kene, supaya ngawasi luwih dingerteni, lan kene, kanggo ngontrol serep…. Banjur wektu teka lan sampeyan ngerti sing pengin soko liyane fungsi, utawa sampeyan pengin kabeh nang sistem dadi cetha, lan ora kothak ireng iki, utawa sampeyan pengin nggunakake soko luwih saka hypervisor lan Bunch saka mesin virtual. Artikel iki bakal ngemot sawetara pikirane lan laku adhedhasar platform Opennebula - Aku milih amarga. iku ora nuntut ing sumber lan arsitektur ora dadi Komplek.

Dadi, kaya sing kita deleng, akeh panyedhiya awan nggarap kvm lan nggawe sambungan eksternal kanggo ngontrol mesin. Cetha manawa hoster gedhe nulis kerangka kerja dhewe kanggo infrastruktur awan, contone YANDEX sing padha. Wong nggunakake openstack lan nggawe sambungan ing basis iki - SELECTEL, MAIL.RU. Nanging yen sampeyan duwe hardware dhewe lan Staff cilik spesialis, sampeyan biasane milih soko siap-digawe - VMWARE, HYPER-V, ana lisensi gratis lan mbayar, nanging dudu apa sing kita ngomong saiki. Ayo dadi pirembagan babagan para penggemar - iki yaiku wong-wong sing ora wedi nawarake lan nyoba sing anyar, sanajan perusahaan kasebut kanthi jelas nerangake, "Sapa sing bakal nglayani iki sawise sampeyan," "Apa kita bakal ngluncurake iki menyang produksi mengko? ? Medeni." Nanging luwih dhisik sampeyan bisa nggunakake solusi kasebut ing bangku tes, lan yen kabeh wong seneng, mula sampeyan bisa takon babagan pangembangan luwih lanjut lan digunakake ing lingkungan sing luwih serius.

Uga kene link kanggo laporan www.youtube.com/watch?v=47Mht_uoX3A saka peserta aktif ing pangembangan platform iki.

Mungkin ing artikel iki ana sing ora perlu lan bisa dingerteni dening spesialis sing berpengalaman, lan ing sawetara kasus aku ora bakal nerangake kabeh amarga prentah lan katrangan sing padha kasedhiya ing Internet. Iki mung pengalamanku karo platform iki. Mugi sing peserta aktif bakal nambah ing komentar apa bisa rampung luwih apik lan apa kesalahan aku digawe. Kabeh tumindak njupuk Panggonan ing ngadeg ngarep dumadi saka 3 PC karo karakteristik beda. Uga, aku khusus ora nuduhake carane piranti lunak iki bisa digunakake lan carane nginstal. Ora, mung pengalaman administrasi lan masalah sing daktemoni. Mbok menawa iki bakal migunani kanggo wong sing dipilih.

Dadi, ayo miwiti. Minangka administrator sistem, titik-titik ing ngisor iki penting kanggo aku, tanpa aku ora mungkin nggunakake solusi iki.

1. Instalasi repeatability

Ana akeh instruksi kanggo nginstal opennebula, mesthine ora ana masalah. Saka versi menyang versi, fitur-fitur anyar katon sing ora bakal bisa digunakake nalika pindhah saka versi menyang versi.

2. Ngawasi

Kita bakal ngawasi simpul dhewe, kvm lan opennebula. Untunge, wis siyap. Ana akeh pilihan babagan ngawasi host Linux, Zabbix utawa eksportir simpul sing padha - sapa wae sing luwih seneng - saiki aku nemtokake minangka metrik sistem ngawasi (suhu sing bisa diukur, konsistensi susunan disk), liwat zabbix , lan kanggo aplikasi liwat eksportir Prometheus. Kanggo ngawasi kvm, contone, sampeyan bisa njupuk proyek github.com/zhangjianweibj/prometheus-libvirt-exporter.git lan disetel kanggo mbukak liwat systemd, kerjane cukup apik lan nuduhake metrik kvm, uga ana dashboard sing wis siap. grafana.com/grafana/dashboards/12538.

Contone, iki fileku:

/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

Lan supaya kita duwe 1 eksportir, kita kudu liya kanggo ngawasi opennebula dhewe, Aku digunakake iki github.com/kvaps/opennebula-exporter/blob/master/opennebula_exporter

Bisa ditambahake kanthi normal node_exporter kanggo ngawasi sistem ing ngisor iki.

Ing file node_exporter kita ngganti wiwitan kaya iki:

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

Nggawe direktori mkdir -p /var/lib/opennebula_exporter

bash script presented ndhuwur, pisanan kita mriksa karya liwat console, yen nuduhake apa kita kudu (yen menehi kesalahan, banjur nginstal xmlstarlet), nyalin menyang /usr/local/bin/opennebula_exporter.sh

Tambah tugas cron saben menit:

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

Metrik wiwit katon, sampeyan bisa njupuk kaya prometheus lan nggawe grafik lan nggawe tandha. Ing Grafana sampeyan bisa nggambar, contone, dashboard sing prasaja.

Opennebula. Cathetan cekak

(jelas kene aku overcommit cpu, ram)

Kanggo sing tresna lan nggunakake Zabbix, ana github.com/OpenNebula/addon-zabbix

Minangka kanggo ngawasi, sing utama yaiku ana. Mesthi wae, sampeyan bisa uga nggunakake alat ngawasi mesin virtual sing dibangun lan ngunggah data menyang tagihan, ing kene saben wong duwe visi dhewe, aku durung miwiti nggarap iki kanthi luwih rapet.

Aku durung miwiti logging. Pilihan sing paling gampang yaiku nambah td-agent kanggo ngurai direktori /var/lib/siji kanthi ekspresi reguler. Contone, file sunstone.log cocog karo nginx regexp lan file liyane sing nuduhake riwayat akses menyang platform - apa kauntungan saka iki? Contone, kita bisa kanthi jelas nglacak nomer "Kesalahan, kesalahan" lan kanthi cepet nglacak ing ngendi lan ing tingkat apa ana kerusakan.

3. Serep

Ana uga mbayar proyek rampung - contone sep wiki.sepsoftware.com/wiki/index.php/4_4_3_Tigon:OpenNebula_Backup. Ing kene kita kudu ngerti manawa mung nggawe serep gambar mesin ora padha ing kasus iki, amarga mesin virtual kita kudu bisa digunakake kanthi integrasi lengkap (file konteks sing padha sing nggambarake setelan jaringan, jeneng vm lan setelan khusus kanggo aplikasi sampeyan). . Mulane, ing kene kita mutusake apa lan kepiye carane gawe serep. Ing sawetara kasus, luwih apik kanggo nggawe salinan apa sing ana ing vm dhewe. Lan mbok menawa sampeyan mung kudu serep siji disk saka mesin tartamtu.

Contone, kita nemtokake manawa kabeh mesin diwiwiti kanthi gambar sing terus-terusan, mula, sawise maca docs.opennebula.io/5.12/operation/vm_management/img_guide.html

Iki tegese pisanan kita bisa ngunggah gambar saka vm kita:

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

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

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

Aku uga ketemu ing Internet laporan menarik lan ana liyane proyek mbukak kuwi, nanging mung ana panyimpenan kanggo qcow2.

Nanging kita kabeh ngerti, cepet utawa mengko ana teka wektu nalika sampeyan pengin serep incremental, iku luwih angel kene lan mbok menawa Manajemen bakal nyedhiakke dhuwit kanggo solusi mbayar, utawa pindhah cara liyane lan ngerti sing kene kita mung nglereni sumber daya. lan nggawe serep ing tingkat aplikasi lan nambah sawetara simpul anyar lan mesin virtual - ya, ing kene, aku ujar manawa nggunakake awan murni kanggo miwiti klompok aplikasi, lan miwiti database ing platform liyane utawa njupuk sing wis siap. saka supplier, yen bisa.

4. Gampang nggunakake

Ing paragraf iki aku bakal njlèntrèhaké masalah sing aku ketemu. Contone, miturut gambar, kaya sing kita ngerteni, ana sing terus-terusan - nalika gambar iki dipasang ing vm, kabeh data ditulis ing gambar iki. Lan yen ora terus-terusan, banjur gambar kasebut disalin menyang panyimpenan lan data kasebut ditulis kanggo apa sing disalin saka gambar sumber - iki cara kerja template template. Aku bola-bali nyebabake masalah kanggo aku kanthi lali nemtokake persis lan gambar 200 GB disalin, masalahe prosedur iki mesthi ora bisa dibatalake, sampeyan kudu pindhah menyang simpul lan mateni proses "cp" saiki.

Salah sawijining kekurangan penting yaiku sampeyan ora bisa mbatalake tumindak mung nggunakake gui. Utawa, sampeyan bakal mbatalake lan ndeleng manawa ora ana sing kedadeyan lan sampeyan bakal miwiti maneh, mbatalake lan nyatane wis ana proses 2 cp sing nyalin gambar kasebut.

Lan banjur nerangake carane opennebula nomer saben conto anyar karo id anyar, contone, ing proxmox padha nggawe vm karo id 101, dibusak, banjur nggawe maneh lan id 101. Ing opennebula iki ora bakal kelakon. saben conto anyar bakal digawe nganggo id anyar lan iki duwe logika dhewe - contone, mbusak data lawas utawa instalasi sing ora sukses.

Sing padha kanggo panyimpenan; sing paling penting, platform iki ditujokake kanggo panyimpenan terpusat. Ana addons kanggo nggunakake lokal, nanging iku ora apa kita ngomong bab ing kasus iki. Aku mikir yen ing mangsa ngarep wong bakal nulis artikel babagan carane bisa nggunakake panyimpenan lokal ing simpul lan kasil digunakake ing produksi.

5. gamblang maksimum

Mesthine, luwih adoh, luwih sithik sing bakal ngerti sampeyan.

Ing kahanan sandi ngadeg - 3 kelenjar karo panyimpenan nfs - kabeh bisa mlaku. Nanging yen kita nindakake eksperimen nglibatake pemadaman listrik, contone, nalika mbukak snapshot lan mateni daya simpul, kita nyimpen setelan ing database sing ana gambar asline, nanging nyatane ora ana (uga, kita kabeh ngerti yen kita wiwitane nulis database babagan tumindak iki ing sql, nanging operasi kasebut ora sukses). Kauntungan kasebut yaiku nalika nggawe gambar asli, file sing kapisah dibentuk lan ana "wong tuwa", mula yen ana masalah lan sanajan ora bisa digunakake liwat gui, kita bisa njupuk file qcow2 lan mulihake kanthi kapisah. docs.opennebula.io/5.8/operation/vm_management/vm_instances.html

Ing jaringan, sayangé, ora kabeh gampang banget. Inggih, paling iku luwih gampang saka ing openstack, Aku digunakake mung vlan (802.1Q) - kerjane cukup apik, nanging yen sampeyan nggawe owahan ing setelan saka jaringan cithakan, banjur setelan iki ora bakal Applied kanggo mesin wis mlaku, i.e. sampeyan kudu mbusak lan nambah kertu jaringan, banjur setelan anyar bakal diterapake.

Yen sampeyan isih pengin mbandhingake karo openstack, sampeyan bisa ngomong iki: ing opennebula ora ana definisi sing jelas babagan teknologi sing digunakake kanggo nyimpen data, ngatur jaringan, sumber daya - saben administrator mutusake apa sing luwih trep kanggo dheweke.

6. Plugins lan panginstalan tambahan

Sawise kabeh, kaya sing dingerteni, platform maya ora mung bisa ngatur kvm, nanging uga vmware esxi. Sayange, aku ora duwe blumbang karo Vcenter, yen wong wis nyoba, nulis.

Dhukungan kanggo panyedhiya maya liyane nyatakake docs.opennebula.io/5.12/advanced_components/cloud_bursting/index.html
AWS, AZUR.

Aku uga nyoba nyambungake Vmware Cloud saka Selectel, nanging ora ana sing bisa digunakake - umume, diblokir amarga ana akeh faktor, lan ora ana gunane kanggo nulis dhukungan teknis saka panyedhiya hosting.

Uga, saiki versi anyar wis mercon - iki Bukak saka microvm, jinis kvm sabuk liwat docker, kang menehi malah liyane versatility, keamanan lan tambah produktivitas amarga ana ora perlu kanggo sampah sumber ing emulating peralatan. Mung kauntungan aku ndeleng liwat Docker iku ora njupuk munggah nomer pangolahan tambahan lan ora Sockets dikuwasani nalika nggunakake emulation iki, i.e. Iku cukup bisa kanggo nggunakake minangka load balancer (nanging mbokmenawa worth nulis artikel kapisah bab iki nganti aku wis kebak mbukak kabeh tes).

7. Pengalaman positif saka nggunakake lan kesalahan debugging

Aku pengin nuduhake pengamatan babagan karya, aku njlèntrèhaké sawetara ing ndhuwur, aku pengin nulis liyane. Pancen, aku ora mung siji-sijine sing mikir yen iki dudu sistem sing bener lan umume kabeh ana ing kruk - kepiye carane bisa digunakake? Nanging banjur pangerten teka yen kabeh iku cukup logis. Mesthi, sampeyan ora bisa nyenengake kabeh wong lan sawetara aspek mbutuhake perbaikan.

Contone, operasi prasaja nyalin gambar disk saka siji datastore menyang liyane. Ing kasusku, ana 2 kelenjar karo nfs, aku ngirim gambar - nyalin ana liwat frontend opennebula, sanajan kita kabeh wis biasa kanggo kasunyatan sing data kudu disalin langsung antarane sarwa dumadi - ing vmware padha, hyper-v kita. rakulino kanggo iki, nanging kene kanggo liyane. Ana pendekatan sing beda lan ideologi sing beda, lan ing versi 5.12 dheweke ngilangi tombol "pindhah menyang datastore" - mung mesin kasebut dhewe ditransfer, nanging dudu panyimpenan amarga tegese panyimpenan terpusat.

Sabanjure kesalahan populer karo macem-macem alasan: "Kesalahan deploying mesin virtual: Ora bisa nggawe domain saka / var / lib / siji // datastores / 103/10 / penyebaran. 5 "Ing ngisor iki bab ndhuwur kanggo katon ing.

  • Hak gambar kanggo pangguna oneadmin;
  • Idin kanggo pangguna oneadmin kanggo mbukak libvirtd;
  • Apa datastore dipasang kanthi bener? Bukak lan mriksa dalan ing simpul dhewe, bisa uga ana sing tiba;
  • Jaringan sing ora dikonfigurasi kanthi bener, utawa luwih ing frontend ana ing setelan jaringan sing antarmuka utama kanggo vlan yaiku br0, nanging ing simpul kasebut ditulis minangka bridge0 - kudu padha.

sistem datastore nyimpen metadata kanggo vm Panjenengan, yen sampeyan mbukak vm karo gambar ngengkel, banjur vm kudu akses menyang konfigurasi wiwitan digawe ing panyimpenan ngendi sampeyan nggawe vm - iki penting banget. Mulane, nalika nransfer vm menyang datastore liyane, sampeyan kudu pindho mriksa kabeh.

8. Dokumentasi, masyarakat. Pangembangan luwih

Lan liyane, dokumentasi sing apik, komunitas lan sing utama yaiku proyek kasebut terus urip ing mangsa ngarep.

Umumé, kabeh wis didokumentasikake kanthi apik lan malah nggunakake sumber resmi ora bakal dadi masalah kanggo nginstal lan nemokake jawaban kanggo pitakonan.

Komunitas, aktif. Nerbitake akeh solusi sing bisa digunakake ing instalasi sampeyan.

Ing wayahe, sawetara kawicaksanan ing perusahaan wis diganti wiwit 5.12 forum.opennebula.io/t/towards-a-stronger-opennebula-community/8506/14 Iku bakal menarik kanggo ndeleng carane project develops. Ing wiwitan, aku khusus nuduhake sawetara vendor sing nggunakake solusi lan apa sing ditawakake industri. Mesthi, ora ana jawaban sing jelas babagan apa sing bakal digunakake. Nanging kanggo organisasi sing luwih cilik, njaga awan pribadi sing cilik bisa uga ora larang kaya sing katon. Sing utama yaiku ngerti persis apa sing sampeyan butuhake.

Akibaté, preduli saka apa sing sampeyan pilih minangka sistem maya, sampeyan ora kudu mandheg ing siji produk. Yen sampeyan duwe wektu, iku worth njupuk dipikir ing solusi liyane mbukak.

Ana chatting apik t.me/opennebula Dheweke aktif mbantu lan ora ngirim sampeyan nggoleki solusi kanggo masalah kasebut ing Google. Gabung karo kita.

Source: www.habr.com

Add a comment