Karga orekatzea Openstack-en

Hodei sistema handietan, baliabide informatikoen karga automatikoki orekatzeko edo berdintzearen arazoa bereziki larria da. Tionix (hodeiko zerbitzuen garatzaile eta operadorea, Rostelecom enpresa taldekoa) ere arduratu da gai hau.

Eta, gure garapen-plataforma nagusia Openstack denez, eta gu, pertsona guztiak bezala, alferrak garenez, dagoeneko plataforman sartuta dagoen prest egindako moduluren bat hautatzea erabaki zen. Gure aukera Watcherrengan geratu zen, gure beharretarako erabiltzea erabaki genuen.
Karga orekatzea Openstack-en
Lehenik eta behin, ikus ditzagun terminoak eta definizioak.

Terminoak eta definizioak

Helburua gizakiek irakur daitekeen, behagarria eta neurgarria den azken emaitza da, lortu beharrekoa. Helburu bakoitza lortzeko estrategia bat edo gehiago daude. Estrategia helburu jakin bati irtenbide bat aurkitzeko gai den algoritmo baten ezarpena da.

Ekintza OpenStack klusterraren xede kudeatutako baliabidearen uneko egoera aldatzen duen oinarrizko zeregina da, hala nola: makina birtual bat migratzea (migrazioa), nodo baten potentzia-egoera aldatzea (change_node_power_state), nova zerbitzuaren egoera aldatzea (change_nova_service_state). ), zaporea aldatzea (tamaina aldatu), NOP mezuak erregistratzea (nop), ekintzarik eza denbora tarte jakin batean - pausa (loa), disko transferentzia (volume_migrate).

Ekintza Plana - Helburu zehatz bat lortzeko ordena jakin batean egindako ekintzen fluxu zehatza. Ekintza Planak errendimendu global neurtua ere jasotzen du, errendimendu-adierazle multzo batekin. Ekintza-plan bat sortzen du Watcher-ek auditoria arrakastatsu baten ondoren, eta, ondorioz, erabilitako estrategiak helburua lortzeko irtenbide bat aurkitzen du. Ekintza plan bat ekintza sekuentzialen zerrenda batek osatzen du.

Ikuskaritza kluster optimizatzeko eskaera da. Optimizazioa kluster jakin batean Helburu bat lortzeko egiten da. Ikuskaritza arrakastatsu bakoitzeko, Watcher-ek Ekintza Plan bat sortzen du.

Ikuskaritza-esparrua Auditoria egiten den baliabideen multzoa da (eskuragarritasun-zona(k), nodoen agregatzaileak, konputazio-nodo indibidualak edo biltegiratze-nodoak, etab.). Ikuskaritzaren esparrua txantiloi bakoitzean definitzen da. Ikuskaritza-esparru bat zehazten ez bada, kluster osoa ikuskatuko da.

Ikuskaritza Txantiloia β€” Ikuskaritza bat abiarazteko gordetako ezarpenen multzoa. Txantiloiak behar dira ezarpen berdinekin auditoriak hainbat aldiz egiteko. Txantiloiak nahitaez izan behar du auditoretzaren helburua; estrategiak zehazten ez badira, dauden estrategia egokienak aukeratzen dira.

Klusterra Kalkulatzeko, biltegiratzeko eta sareko baliabideak eskaintzen dituzten eta OpenStack kudeaketa-nodo berberak kudeatzen dituen makina fisikoen bilduma da.

Cluster Datu-eredua (CDM) klusterrak kudeatzen dituen baliabideen egungo egoeraren eta topologiaren irudikapen logikoa da.

Eraginkortasunaren adierazlea - estrategia hori erabiliz sortutako soluzioa nola gauzatzen den adierazten duen adierazlea. Errendimendu-adierazleak helburu jakin baterako espezifikoak dira eta, normalean, ondoriozko ekintza-planaren eraginkortasun globala kalkulatzeko erabiltzen dira.

Eraginkortasunaren zehaztapena Helburu bakoitzari lotutako ezaugarri espezifikoen multzoa da, dagokion Helburua lortzeko estrategiak bere konponbidean lortu behar dituen errendimendu-adierazle desberdinak definitzen dituena. Izan ere, estrategiak proposatutako soluzio bakoitza zehaztapenaren arabera egiaztatuko da bere eraginkortasun globala kalkulatu aurretik.

Puntuazio Motorra fitxategi exekutagarria da, ondo definitutako sarrerak, ondo zehaztutako irteerak dituena eta zeregin matematiko hutsa egiten duena. Horrela, kalkulua egiten den ingurunetik independentea da β€”emaitza bera emango du edozein lekutanβ€”.

Watcher Planifikatzailea - Watcher erabakiak hartzeko motorren parte. Modulu honek estrategia batek sortutako ekintza multzo bat hartzen du eta ekintza ezberdin horiek denboran nola programatu eta ekintza bakoitzerako, zeintzuk diren aurrebaldintzak zehazten duen lan-fluxuaren plan bat sortzen du.

Watcher helburuak eta estrategiak

Helburua
Estrategia

Helburu finkoa
Dummy Estrategia 

Dummy Strategy laginak Scoring Engine erabiliz

Estrategia finkoa tamaina aldatzearekin

Energia Aurrezteko
Energia Aurrezteko Estrategia

Zerbitzaria finkatzea
Lineaz kanpoko zerbitzariaren oinarrizko sendotzea

VM lan-karga finkatzeko estrategia

Lan-karga orekatzea
Laneko Balantzearen Migrazio Estrategia

Biltegiratze Ahalmenaren Oreka Estrategia

Lan-karga egonkortzea

Bizilagun zaratatsua
Bizilagun zaratatsua

Optimizazio termikoa
Irteera tenperaturan oinarritutako estrategia

Aire-fluxuaren optimizazioa
Aire-fluxuaren migrazio estrategia uniformea

Hardwarea mantentzea
Eremu migrazioa

Sailkatu
Aktibatzaileen

Helburu finkoa β€” Probetarako erabiltzen den helburu erreserbatua.

Erlazionatutako estrategiak: Dummy Strategy, Dummy Strategy laginak Scoring Engine erabiliz eta Dummy estrategia tamaina aldatzearekin. Dummy estrategia Tempest bidez integratzeko probak egiteko erabiltzen den estrategia finkoa da. Estrategia honek ez du inolako optimizazio baliagarririk ematen, bere helburu bakarra Tempest probak erabiltzea da.

Simulazio-estrategia laginen puntuazio-motorrak erabiliz - estrategia aurrekoaren antzekoa da, desberdintasun bakarra ikasketa automatikoko metodoak erabiliz kalkuluak egiten dituen lagin "puntuazio-motor" baten erabilera da.

Tamaina aldatzeko estrategia finkoa - estrategia aurrekoaren antzekoa da, desberdintasun bakarra zaporea aldatzearen erabilera da (migrazioa eta tamaina aldatzea).

Ez da ekoizpenean erabiltzen.

Energia Aurrezteko β€” Energia-kontsumoa murriztea. Helburu honen Energia Aurrezteko Estrategia, VM Workload Consolidation Strategy (Zerbitzariaren Consolidation) batera, energia aurrezteko (DPM) funtzioak egiteko gai da, lan-kargak dinamikoki finkatuz baliabideen erabilera baxuko aldietan ere: makina birtualak nodo gutxiagotara mugitzen dira. , eta beharrezkoak ez diren nodoak desgaituta daude. Finkatu ondoren, estrategiak nodoak aktibatzeko/desaktibatzeko erabakia eskaintzen du zehaztutako parametroen arabera: "min_free_hosts_num" - kargaren zain dauden doako gaitutako nodo kopurua, eta "free_used_percent" - doako gaitutako ostalarien ehunekoa. makinek okupatzen duten nodo kopurua. Estrategiak funtziona dezan egon behar du Ironic gaitu eta konfiguratu du nodoetako potentzia-zikloa kudeatzeko.

Estrategiaren parametroak

parametroa
mota
lehenespenez
описаниС

doan_erabiltzen_ehuneko
Zenbakia
10.0
Konputazio-nodo libreen kopurua eta makina birtualak dituzten konputazio-nodoen arteko erlazioa

min_free_hosts_num
Int
1
konputazio-nodo libreen gutxieneko kopurua

Hodeiak gutxienez bi nodo izan behar ditu. Erabilitako metodoa nodoaren potentzia-egoera aldatzea da (change_node_power_state). Estrategiak ez du neurriak biltzea eskatzen.

Server Consolidation - konputazio-nodoen kopurua minimizatzea (finkatzea). Bi estrategia ditu: Lineaz kanpoko zerbitzariaren oinarrizko sendotzea eta VM lan-karga finkatzeko estrategia.

Lineaz kanpoko oinarrizko zerbitzaria finkatzeko estrategiak erabilitako zerbitzarien kopurua murrizten du eta migrazio kopurua ere murrizten du.

Oinarrizko estrategiak honako neurri hauek behar ditu:

metrikak
zerbitzua
pluginak
duzu

kalkulatu.nodoa.cpu.ehuneko
zelometroa
none
 

cpu_util
zelometroa
none
 

Estrategiaren parametroak: migration_attempts - konbinazio kopurua itzaltzeko hautagai potentzialak bilatzeko (lehenetsia, 0, murrizketarik gabe), aldia - denbora-tartea segundotan datu metrikoen agregazio estatikoa lortzeko (lehenetsia, 700).

Erabilitako metodoak: migrazioa, nova zerbitzuaren egoera aldatzea (change_nova_service_state).

VM Workload Consolidation Strategy lehen egokitze heuristiko batean oinarritzen da, neurtutako PUZaren kargan zentratzen dena eta karga gehiegi edo txikiegia duten nodoak minimizatzen saiatzen dena baliabideen ahalmenaren mugak kontuan hartuta. Estrategia honek klusterreko baliabideak modu eraginkorragoan erabiltzeko irtenbide bat eskaintzen du lau urrats hauek erabiliz:

  1. Deskarga fasea - gehiegi erabilitako baliabideak prozesatzea;
  2. Finkatzeko fasea - gutxiegi erabilitako baliabideak maneiatzea;
  3. Irtenbidearen optimizazioa - migrazio kopurua murriztea;
  4. Erabiltzen ez diren kalkulu-nodoak desgaitzen.

Estrategiak honako neurri hauek behar ditu:

metrikak
zerbitzua
pluginak
duzu

memoria
zelometroa
none
 

disko.root.tamaina
zelometroa
none
 

Neurri hauek aukerakoak dira, baina estrategiaren zehaztasuna hobetuko dute eskuragarri egonez gero:

metrikak
zerbitzua
pluginak
duzu

memoria.egoiliarra
zelometroa
none
 

cpu_util
zelometroa
none
 

Estrategiaren parametroak: periodoa β€” segundotan dagoen denbora tartea datu metrikoen iturritik agregazio estatikoa lortzeko (lehenetsia, 3600).

Aurreko estrategiaren metodo berdinak erabiltzen ditu. Xehetasun gehiago Hemen.

Lan-karga orekatzea β€” Konputazio-nodoen arteko lan-karga orekatu. Helburuak hiru estrategia ditu: Lan-karga-balantzearen migrazio-estrategia, lan-karga egonkortzea, biltegiratze-gaitasunaren oreka-estrategia.

Workload Balance Migration Strategy-k makina birtualeko migrazioak exekutatzen ditu ostalariaren makina birtualeko lan-kargan oinarrituta. Migrazio-erabakia hartzen da nodo baten CPU edo RAM erabileraren % zehaztutako atalasea gainditzen duen bakoitzean. Kasu honetan, mugitutako makina birtualak nodoa nodo guztien batez besteko lan-kargara hurbildu beharko luke.

Baldintzak

  • Prozesadore fisikoen erabilera;
  • Gutxienez bi konputazio-nodo fisiko;
  • Ceilometer osagaia instalatu eta konfiguratu - ceilometer-agent-compute, kalkulu-nodo bakoitzean exekutatzen ari dena eta Ceilometer APIa, baita metrika hauek bildu ere:

metrikak
zerbitzua
pluginak
duzu

cpu_util
zelometroa
none
 

memoria.egoiliarra
zelometroa
none
 

Estrategiaren parametroak:

parametroa
mota
lehenespenez
описаниС

metrics
String
'cpu_util'
Oinarrizko neurketak hauek dira: 'cpu_util', 'memory.resident'.

atalase
Zenbakia
25.0
Migraziorako lan-kargaren atalasea.

epea
Zenbakia
300
Denbora-tarte metatua Ceilometroa.

Erabilitako metodoa migrazioa da.

Lan-karga egonkortzea zuzeneko migrazioa erabiliz lan-karga egonkortzera zuzendutako estrategia da. Estrategia desbideratze estandar algoritmo batean oinarritzen da eta klusterrean pilaketa dagoen ala ez zehazten du eta horri erantzuten dio makina-migrazioa abiaraziz kluster egonkortzeko.

Baldintzak

  • Prozesadore fisikoen erabilera;
  • Gutxienez bi konputazio-nodo fisiko;
  • Ceilometer osagaia instalatu eta konfiguratu - ceilometer-agent-compute, kalkulu-nodo bakoitzean exekutatzen ari dena eta Ceilometer APIa, baita metrika hauek bildu ere:

metrikak
zerbitzua
pluginak
duzu

cpu_util
zelometroa
none
 

memoria.egoiliarra
zelometroa
none
 

Biltegiratze Ahalmenaren Balantze Estrategia (Queens-ekin hasita inplementatutako estrategia) - estrategiak diskoak transferitzen ditu Cinder igerilekuen kargaren arabera. Transferentzien erabakia hartzen da igerilekuaren erabilera-tasa zehaztutako atalasea gainditzen duen bakoitzean. Mugitzen ari den diskoak igerilekua Cinder igerileku guztien batez besteko kargara hurbildu beharko luke.

Baldintzak eta murrizketak

  • Gutxienez bi Cinder igerileku;
  • Diskoa migratzeko aukera.
  • Cluster data model - Cinder cluster datu-ereduen biltzailea.

Estrategiaren parametroak:

parametroa
mota
lehenespenez
описаниС

bolumen_atalasea
Zenbakia
80.0
Bolumenak orekatzeko diskoen atalase-balioa.

Erabilitako metodoa disko-migrazioa da (volume_migrate).

Auzoko zaratatsua - Identifikatu eta migratu "bizilagun zaratatsua": lehentasun baxuko makina birtual bat, IPCri dagokionez lehentasun handiko makina birtual baten errendimenduari kalte negatiboa eragiten diona, Azken Mailako cachea gehiegi erabiliz. Estrategia propioa: Bizilagun zaratatsua (erabiltzen den estrategia-parametroa cache_threshold da (balio lehenetsia 35 da), errendimendua zehaztutako baliora jaisten denean, migrazioa hasten da. Estrategiak funtziona dezan, gaituta. LLC (Last Level Cache) neurketak, CMT euskarria duen Intel zerbitzari berriena, baita hurrengo neurriak biltzea ere:

metrikak
zerbitzua
pluginak
duzu

cpu_l3_cache
zelometroa
none
Intel behar da CMT.

Cluster datu-eredua (lehenetsia): Nova cluster datu-ereduen biltzailea. Erabilitako metodoa migrazioa da.

Helburu honekin Arbelaren bidez lan egitea ez dago guztiz inplementatu Queens-en.

Optimizazio termikoa β€” Tenperatura-erregimena optimizatzea. Irteera (irteerako airea) tenperatura zerbitzari baten egoera termiko/lan karga neurtzeko telemetria termikoko sistema garrantzitsuenetako bat da. Helburuak estrategia bat du, Irteera-tenperaturan oinarritutako estrategia, lan-kargak termikoki aldeko ostalarietara (irteerako tenperatura baxuena) migratzea erabakitzen duena iturburu-ostalarien irteera-tenperatura atalase konfiguragarri batera iristen denean.

Estrategiak funtziona dezan, Intel Power Node Manager instalatuta eta konfiguratuta duen zerbitzari bat behar duzu 3.0 edo geroago, baita hurrengo neurriak biltzea ere:

metrikak
zerbitzua
pluginak
duzu

hardware.ipmi.node.outlet_tenperatura
zelometroa
IPMI
 

Estrategiaren parametroak:

parametroa
mota
lehenespenez
описаниС

atalase
Zenbakia
35.0
Migraziorako tenperatura-atalasea.

epea
Zenbakia
30
Datu-iturri metrikotik agregazio estatistikoa lortzeko denbora-tartea, segundotan.

Erabilitako metodoa migrazioa da.

Aire-fluxuaren optimizazioa β€” optimizatu aireztapen modua. Estrategia propioa - Aire fluxu uniformea ​​zuzeneko migrazioa erabiliz. Estrategiak makina birtualaren migrazioa abiarazten du zerbitzariaren haizagailuaren aire-fluxuak zehaztutako atalase bat gainditzen duen bakoitzean.

Estrategiak funtziona dezan behar duzu:

  • Hardwarea: kalkulatzeko nodoak < NodeManager 3.0 onartzen duena;
  • Gutxienez bi konputazio-nodo;
  • Ceilometer-agent-compute eta Ceilometer API osagaia konputazio-nodo bakoitzean instalatuta eta konfiguratuta dagoena, zeinak ondo jakinarazi ditzakeen neurriak, hala nola aire-fluxua, sistemaren potentzia, sarrerako tenperatura:

metrikak
zerbitzua
pluginak
duzu

hardware.ipmi.node.airflow
zelometroa
IPMI
 

hardware.ipmi.nodoa.tenperatura
zelometroa
IPMI
 

hardware.ipmi.node.potentzia
zelometroa
IPMI
 

Estrategiak funtziona dezan, Intel Power Node Manager 3.0 edo berriagoa instalatuta eta konfiguratuta duen zerbitzari bat behar duzu.

Mugak: kontzeptua ez da ekoizpenerako pentsatuta.

Algoritmo hau etengabeko auditoriekin erabiltzea proposatzen da, iterazio bakoitzean makina birtual bakarra migratzea aurreikusten baita.

Zuzeneko migrazioak posible dira.

Estrategiaren parametroak:

parametroa
mota
lehenespenez
описаниС

atalase_aire-fluxua
Zenbakia
400.0
Migrazio-unitatearen aire-fluxuaren atalasea 0.1 CFM da

atalase_sarrera_t
Zenbakia
28.0
Migrazioa erabakitzeko sarrerako tenperatura-atalasea

atalase_potentzia
Zenbakia
350.0
Sistemaren potentzia-atalasea migrazioa erabakitzeko

epea
Zenbakia
30
Datu-iturri metrikotik agregazio estatistikoa lortzeko denbora-tartea, segundotan.

Erabilitako metodoa migrazioa da.

Hardware Mantentze β€” Hardwarearen mantentze-lanak. Helburu horrekin erlazionatutako estrategia Zonako migrazioa da. Estrategia makina birtualen eta diskoen migrazio automatiko eta minimo eraginkorra egiteko tresna da, hardwarearen mantentze-lanak behar izanez gero. Estrategiak pisuen araberako ekintza-plana eraikitzen du: pisu gehiago duen ekintza multzoa planifikatuko da besteen aurretik. Bi konfigurazio aukera daude: action_weights eta paralelizazioa.

Mugak: ekintza pisuak eta paralelizazioa konfiguratu behar dira.

Estrategiaren parametroak:

parametroa
mota
lehenespenez
описаниС

konputatu_nodoak
array
Bat ere ez
Migraziorako konputazio-nodoak.

biltegiratze_igerilekuak
array
Bat ere ez
Migraziorako biltegiratze-nodoak.

paralelo_guztira
zenbaki oso
6
Paraleloan gauzatu behar diren jardueren kopuru osoa.

paralelo_nodo bakoitzeko
zenbaki oso
2
Konputazio-nodo bakoitzeko paraleloan egindako ekintza kopurua.

igerilekuko_paraleloa
zenbaki oso
2
Biltegiratze-biltegi bakoitzeko paraleloan egindako ekintza kopurua.

lehentasuna
objektu
Bat ere ez
Makina birtualen eta diskoen lehentasunen zerrenda.

eranskin_bolumenarekin
boolean
False
Faltsua: makina birtualak migratuko dira disko guztiak migratu ondoren. Egia: makina birtualak migratuko dira konektatutako disko guztiak migratu ondoren.

Konputazio-nodoen arrayaren elementuak:

parametroa
mota
lehenespenez
описаниС

src_node
katea
Bat ere ez
Makina birtualak migratzen ari diren konputazio-nodoa (beharrezkoa).

dst_node
katea
Bat ere ez
Kalkulatu zein nodotara migratzen ari diren makina birtualak.

Biltegiratze-nodoen array-elementuak:

parametroa
mota
lehenespenez
описаниС

src_pool
katea
Bat ere ez
Diskoak migratzen ari diren biltegiratze-taldea (beharrezkoa).

dst_pool
katea
Bat ere ez
Diskoak migratzen diren biltegiratze-taldea.

src_type
katea
Bat ere ez
Jatorrizko disko mota (beharrezkoa).

dst_type
katea
Bat ere ez
Sortutako disko mota (beharrezkoa).

Objektuaren lehentasuneko elementuak:

parametroa
mota
lehenespenez
описаниС

proiektua
array
Bat ere ez
Proiektuen izenak.

konputatu_nodoa
array
Bat ere ez
Kalkulatu nodoen izenak.

biltegiratze_igerilekua
array
Bat ere ez
Biltegiratze-igerilekuen izenak.

kalkulatu
enum
Bat ere ez
Makina birtualeko parametroak [β€œvcpu_num”, β€œmem_size”, β€œdisk_size”, β€œcreated_at”].

biltegiratze
enum
Bat ere ez
Diskoaren parametroak [β€œtamaina”, β€œcreated_at”].

Erabilitako metodoak makina birtualaren migrazioa, diskoen migrazioa dira.

Sailkatu - estrategia garatzeko prozesua errazteko erabiltzen den helburu laguntzailea. Ez du zehaztapenik eta estrategia oraindik dagoen helburu batekin lotuta ez dagoen bakoitzean erabil daiteke. Helburu hau trantsizio puntu gisa ere erabil daiteke. Helburu horrekin erlazionatutako estrategia bat Actuator da.   

Helburu berri bat sortzea

Watcher Erabakien Motorra "Kanpoko helburua" plugin interfaze bat du, estrategia baten bidez lor daitekeen kanpoko helburu bat integratzea ahalbidetzen duena.

Helburu berri bat sortu baino lehen, ziurtatu behar duzu lehendik dauden helbururik ez duela betetzen zure beharrak.

Plugin berri bat sortzea

Helburu berri bat sortzeko, behar duzu: helburu-klasea zabaldu, klase-metodo bat inplementatu lortu_izena() sortu nahi duzun helburu berriaren ID bakarra itzultzeko. Identifikatzaile esklusibo honek bat etorri behar du geroago deklaratuko duzun sarrera-puntuaren izenarekin.

Ondoren klase metodoa ezarri behar duzu get_display_name() sortu nahi duzun xedearen itzulitako bistaratzeko izena itzultzeko (ez erabili aldagairik itzulitako katea itzultzeko, itzulpen tresnak automatikoki bil dezan).

Klase metodo bat inplementatu get_translatable_display_name()helburu berriaren itzulpen-gakoa (benetan ingelesezko bistaratze-izena) itzultzeko. Itzultzeko balioak get_display_name() bihurtutako katearekin bat etorri behar du.

Inplementatu bere metodoa lortu_eraginkortasuna_zehaztapena()zure helbururako eraginkortasun-zehaztapena itzultzeko. get_efficacy_specification() metodoak Watcher-ek emandako Unclassified() instantzia itzultzen du. Errendimendu-zehaztapen hau zure helburua garatzeko prozesuan erabilgarria da, zehaztapen hutsarekin bat datorrelako.

β†’ Irakurri gehiago hemen

Watcher arkitektura (xehetasun gehiago) Hemen).

Karga orekatzea Openstack-en

Osagaiak

Karga orekatzea Openstack-en

Watcher APIa - Watcher-ek emandako REST APIa inplementatzen duen osagaia. Interakzio-mekanismoak: CLI, Horizon plugina, Python SDK.

Watcher DB β€” Watcher datu-basea.

Watcher aplikazioa β€” Watcher Decision Engine osagaiak sortutako ekintza-plan baten exekuzioa ezartzen duen osagaia.

Watcher Erabakien Motorra - Auditoretzaren helburua lortzeko balizko optimizazio-ekintzen multzoa kalkulatzeaz arduratzen den osagaia. Estrategia zehazten ez bada, osagaiak modu independentean aukeratzen du egokiena.

Watcher Metrics argitaletxea - Zenbait metrika edo gertaera bildu eta kalkulatzen dituen eta CEP amaierako puntuan argitaratzen dituen osagaia. Osagaiaren funtzionaltasuna Ceilometer argitaletxeak ere eman dezake.

Gertaera konplexuen tratamendua (CEP) motorra β€” Gertaera konplexuak prozesatzeko motorra. Errendimendu-arrazoiak direla eta, baliteke CEP Enginearen hainbat instantzia aldi berean exekutatzen aritzea, bakoitzak metrika/gertaera mota zehatz bat prozesatzen duena. Watcher sisteman, CEP-ek bi ekintza mota abiarazten ditu: - dagozkien gertaerak/neurriak denbora serieen datu-basean erregistratu; - bidali gertaera egokiak Watcher Decision Enginera gertaera honek egungo optimizazio-estrategiaren emaitzan eragina izan dezakeenean, Openstack klusterra ez baita sistema estatiko bat.

Osagaiek AMQP protokoloa erabiliz elkarreragiten dute.

β†’ Watcher konfiguratzen

Watcherrekin elkarreragin eskema

Karga orekatzea Openstack-en

Watcher probaren emaitzak

  1. Optimizazioa - Ekintza planak 500 orrialdean (bai Queens hutsean eta baita Tionix moduluekin dagoen stand batean), ikuskaritza abiarazi eta ekintza-plan bat sortu ondoren bakarrik agertzen da; hutsik dagoena normalean irekitzen da.
  2. Akatsen xehetasunak fitxan akatsak daude, ezin da ikuskaritza-helburua eta estrategia lortu (bai Queens puruan, bai Tionix moduluekin dagoen stand batean).
  3. Dummy (test) helburu duten auditoriak normaltasunez sortzen eta abiarazten dira, ekintza planak sortzen dira.
  4. Sailkatu gabeko helbururako auditoriak ez dira sortzen helburua ez delako funtzionala eta estrategia berriak sortzerakoan bitarteko konfiguraziorako pentsatuta dagoelako.
  5. Lan-karga orekatzeko (Biltegiratze-ahalmena orekatzeko estrategia) auditoriak arrakastaz sortzen dira, baina ez da ekintza-planik sortzen. Ez da biltegiratze-igerilekua optimizatu behar.
  6. Lan-karga orekatzeko helbururako auditoriak (Lan-karga-balantzearen migrazio-estrategia) arrakastaz sortu dira, baina ez da ekintza-planik sortzen.
  7. Lan-karga orekatzeko ikuskaritzak (lan-karga egonkortzeko estrategia) huts egin du.
  8. Noisy Neighbor xederako auditoriak arrakastaz sortu dira, baina ez da ekintza planik sortzen.
  9. Hardwarearen mantentze-lanetarako auditoriak arrakastaz sortzen dira, ekintza-plana ez da osorik sortzen (errendimendu-adierazleak sortzen dira, baina ekintzen zerrenda bera ez da sortzen).
  10. Konputazio eta kontrol-nodoetako nova.conf konfigurazioetan egindako aldaketek (compute_monitors = cpu.virt_driver atalean lehenetsitako atalean) ez dituzte akatsak zuzentzen.
  11. Zerbitzaria finkatzea (oinarrizko estrategia) helburu duten auditoretek ere huts egiten dute.
  12. Zerbitzaria finkatzeko (VM lan-karga finkatzeko estrategia) egindako auditoretek huts egin dute errore batekin. Erregistroetan akats bat dago iturri-datuak eskuratzean. Akatsaren eztabaida, bereziki Hemen.
    Watcher konfigurazio fitxategian zehazten saiatu gara (ez du lagundu - Optimizazio orri guztietan errore baten ondorioz, konfigurazio fitxategiaren jatorrizko edukira itzultzeak ez du egoera zuzentzen):

    [watcher_strategies.basic] datasource = ceilometer, gnocchi
  13. Energia aurrezteko auditoretek huts egin dute. Erregistroak ikusita, arazoa Ironic-en eza da oraindik; ez du funtzionatuko baremetal zerbitzurik gabe.
  14. Optimizazio termikoaren ikuskaritzak huts egin du. Azterketa zerbitzaria finkatzeko (VM lan-karga finkatzeko estrategia) berdina da (iturburu-datuen errorea)
  15. Aire-fluxuaren optimizazioa egiteko auditoriak huts egin du errore batekin.

Ikuskaritza amaitzeko akats hauek ere aurkitzen dira. Traceback decision-engine.log erregistroetan (kluster egoera ez dago definitu).

β†’ Akatsaren eztabaida Hemen

Ondorioa

Gure bi hilabeteko ikerketaren emaitza ezbairik gabeko ondorioa izan zen: laneko karga orekatzeko sistema oso bat lortzeko, zati honetan, estuki lan egin beharko dugula Openstack plataformarako tresnak hobetzen.

Watcher-ek potentzial izugarria duen produktu serioa eta bizkor garatzen dela frogatu du, eta horren erabilera osoa lan serio asko eskatuko du.

Baina honi buruz gehiago serieko hurrengo artikuluetan.

Iturria: www.habr.com

Gehitu iruzkin berria