Load Balancing am Openstack

A grousse Wolleksystemer ass d'Fro vum automatesche Balance oder Ausgläichung vun der Laascht op Rechenressourcen besonnesch akut. Tionix (en Entwéckler a Bedreiwer vu Cloud Servicer, Deel vun der Rostelecom Grupp vu Firmen) huet sech och ëm dëst Thema gekëmmert.

A well eis Haaptentwécklungsplattform Openstack ass, a mir, wéi all d'Leit, faul sinn, gouf decidéiert e fäerdege Modul ze wielen dee schonn an der Plattform abegraff ass. Eis Wiel ass op Watcher gefall, dee mir decidéiert hunn fir eis Bedierfnesser ze benotzen.
Load Balancing am Openstack
Als éischt kucke mer d'Begrëffer an Definitiounen.

Begrëffer an Definitiounen

Goal geschoss huet ass e Mënsch liesbar, beobachtbar a moossbar Ennresultat dat muss erreecht ginn. Et ginn eng oder méi Strategien fir all Zil z'erreechen. Eng Strategie ass d'Ëmsetzung vun engem Algorithmus dee fäeg ass eng Léisung fir e bestëmmten Zil ze fannen.

Aktioun ass eng elementar Aufgab déi den aktuellen Zoustand vun der Zilverwaltung Ressource vum OpenStack Cluster ännert, sou wéi: Migratioun vun enger virtueller Maschinn (Migratioun), Ännerung vum Kraaftzoustand vun engem Node (change_node_power_state), Ännerung vum Zoustand vum Nova Service (change_nova_service_state) ), Aroma änneren (Gréisst änneren), NOP Messagen registréieren (nop), Mangel un Handlung fir eng gewëssen Zäit - Paus (Schlof), Disk Transfer (volume_migrate).

Aktiounsplang - e spezifesche Flow vun Aktiounen, déi an enger bestëmmter Uerdnung duerchgefouert ginn fir e spezifescht Zil z'erreechen. Den Aktiounsplang enthält och gemoossene global Leeschtung mat enger Rei vu Leeschtungsindikatoren. En Aktiounsplang gëtt vum Watcher op engem erfollegräichen Audit generéiert, als Resultat vun deem d'Strategie benotzt eng Léisung fënnt fir d'Zil z'erreechen. En Aktiounsplang besteet aus enger Lëscht vu sequentiellen Aktiounen.

Audit ass eng Ufro fir de Cluster ze optimiséieren. Optimiséierung gëtt duerchgefouert fir een Zil an engem bestëmmte Cluster z'erreechen. Fir all erfollegräich Audit generéiert Watcher en Aktiounsplang.

Audit Ëmfang ass eng Rei vu Ressourcen, an deenen den Audit duerchgefouert gëtt (Verfügbarkeetszone(n), Node-Aggregatoren, individuell Rechenknäppchen oder Späicherknäppchen, etc.). Den Audit Ëmfang ass an all Schabloun definéiert. Wann en Audit Ëmfang net spezifizéiert ass, gëtt de ganze Cluster iwwerpréift.

Audit Schabloun - e gespäichert Set vun Astellunge fir en Audit ze starten. Schablounen sinn néideg fir Audits e puer Mol mat de selwechten Astellungen auszeféieren. D'Schabloun muss onbedéngt den Zweck vum Audit enthalen; wann Strategien net spezifizéiert sinn, da ginn déi gëeegent existent Strategien ausgewielt.

Cluster ass eng Sammlung vu kierperleche Maschinnen déi Rechen-, Späicher- an Netzwierkressourcen ubidden a vum selwechte OpenStack Management Node geréiert ginn.

Cluster Data Model (CDM) ass eng logesch Representatioun vum aktuellen Zoustand an Topologie vun de Ressourcen, déi vum Cluster geréiert ginn.

Effizienz Indikator - en Indikator dee weist wéi d'Léisung erstallt mat dëser Strategie ausgefouert gëtt. Performance Indikatoren si spezifesch fir e bestëmmten Zil a ginn typesch benotzt fir d'global Effektivitéit vum resultéierende Aktiounsplang ze berechnen.

Effizienz Spezifizéierung ass eng Rei vu spezifesche Featuren, déi mat all Zil verbonne sinn, déi déi verschidde Leeschtungsindikatoren definéieren, déi eng Strategie fir dat entspriechend Zil z'erreechen muss a senger Léisung erreechen. Tatsächlech gëtt all Léisung proposéiert vun der Strategie géint d'Spezifikatioun gepréift ier se hir global Effektivitéit berechent.

Scoring Engine ass eng ausführbar Datei déi gutt definéiert Inputen, gutt definéiert Ausgänge huet an eng reng mathematesch Aufgab ausféiert. Op dës Manéier ass d'Berechnung onofhängeg vun der Ëmwelt an där se gemaach gëtt - et gëtt iwwerall datselwecht Resultat.

Watcher Planner - Deel vum Watcher Entscheedungsprozessor. Dëse Modul hëlt eng Rei vun Aktiounen generéiert vun enger Strategie a erstellt e Workflow Plang dee spezifizéiert wéi dës verschidden Aktiounen an der Zäit a fir all Aktioun plangen, wat d'Viraussetzunge sinn.

Watcher Ziler a Strategien

Goal geschoss huet
Strategien

Dummy Goal
Dummy Strategie 

Dummy Strategie mat Probe Scoring Engines

Dummy Strategie mat Gréisst änneren

Energie spueren
Energie spueren Strategie

Server Konsolidéierung
Basis Offline Server Konsolidéierung

VM Workload Consolidation Strategie

Workload Balance
Aarbechtslaascht Balance Migratioun Strategie

Stockage Kapazitéit Balance Strategie

Aarbechtslaascht Stabiliséierung

Kaméidi Noper
Kaméidi Noper

Thermesch Optimisatioun
Outlet Temperatur baséiert Strategie

Airflow Optimisatioun
Uniform Loftfloss Migratiounsstrategie

Hardware Ënnerhalt
Zone Migratioun

Onklassifizéiert
Actuator

Dummy Goal - reservéiert Zil dat fir Testzwecker benotzt gëtt.

Zesummenhang Strategien: Dummy Strategie, Dummy Strategie mat Probe Scoring Engines an Dummy Strategie mat der Gréisst änneren. Dummy Strategie ass eng Dummy Strategie benotzt fir Integratiounstest duerch Tempest. Dës Strategie bitt keng nëtzlech Optimisatioun, säin eenzegen Zweck ass Tempest Tester ze benotzen.

Dummy Strategie mat Probe Scoring Engines - d'Strategie ass ähnlech wéi déi virdrun, deen eenzegen Ënnerscheed ass d'Benotzung vun engem Probe "Scoring Engine" deen Berechnunge mat Maschinnléieremethoden ausféiert.

Dummy Strategie mat der Gréisst änneren - d'Strategie ass ähnlech wéi déi virdrun, deen eenzegen Ënnerscheed ass d'Benotzung vum Goût z'änneren (Migratioun an d'Gréisst änneren).

Net an der Produktioun benotzt.

Energie spueren - Energieverbrauch minimiséieren. D'Energiespuerstrategie vun dësem Zil, zesumme mat der VM Workload Consolidation Strategie (Server Consolidation), ass fäeg fir dynamesch Power Management (DPM) Funktiounen ze spueren, déi Energie spueren andeems d'Aarbechtslaascht dynamesch konsolidéiert ginn, och während Perioden vu gerénger Ressourcebenotzung: virtuell Maschinnen ginn op manner Node geréckelt. , an onnéideg Wirbelen sinn behënnert. No der Konsolidéierung bitt d'Strategie eng Entscheedung fir d'Noden un / auszeschalten am Aklang mat de spezifizéierte Parameteren: "min_free_hosts_num" - d'Zuel vun de fräi aktivéierten Wirbelen, déi op d'Laascht waarden, an "free_used_percent" - de Prozentsaz vu gratis aktivéierten Hosten op den Zuel vun Wirbelen déi vun Maschinnen besat sinn. Fir datt d'Strategie funktionnéiert muss et sinn aktivéiert a konfiguréiert Ironesch fir Power Cycling op Noden ze handhaben.

Strategie Parameteren

Parameter
Typ
default
описание

free_used_percent
Zuel
10.0
Verhältnis vun der Zuel vun fräi Rechenzäit Wirbelen op d'Zuel vun Rechenzäit Wirbelen mat virtuell Maschinnen

min_free_hosts_num
Int
1
Minimum Zuel vu gratis Rechenzäit Wirbelen

D'Wollek muss mindestens zwee Wirbelen hunn. D'Method déi benotzt gëtt ännert de Kraaftzoustand vum Node (change_node_power_state). D'Strategie erfuerdert keng Metriken ze sammelen.

Server Konsolidatioun - miniméiert d'Zuel vun de Rechenknäppchen (Konsolidéierung). Et huet zwou Strategien: Basis Offline Server Consolidation a VM Workload Consolidation Strategie.

D'Basis Offline Server Consolidation Strategie miniméiert d'Gesamtzuel vun de benotzte Serveren a miniméiert och d'Zuel vun de Migratiounen.

D'Basisstrategie erfuerdert déi folgend Metriken:

Metriken
Service
Plugins
commentaire

compute.node.cpu.percent
Ceilometer
keent
 

cpu_util
Ceilometer
keent
 

Strategieparameter: migration_attempts - d'Zuel vun de Kombinatioune fir no potenzielle Kandidate fir de Shutdown ze sichen (Standard, 0, keng Restriktiounen), Period - Zäitintervall a Sekonnen fir statesch Aggregatioun vun der metrescher Datequell ze kréien (Standard, 700).

Benotzt Methoden: Migratioun, Änneren vum Nova Service Staat (change_nova_service_state).

D'VM Workload Consolidation Strategie baséiert op enger First-Fit Heuristik déi sech op gemoossene CPU Belaaschtung konzentréiert a probéiert Noden ze minimiséieren déi ze vill oder ze wéineg Belaaschtung hunn Ressource Kapazitéit Aschränkungen. Dës Strategie bitt eng Léisung déi zu méi effizienter Notzung vu Clusterressourcen resultéiert mat de folgende véier Schrëtt:

  1. Ausluede Phase - Veraarbechtung vun iwwerbenotzt Ressourcen;
  2. Konsolidéierungsphase - Ëmgank mat ënnerbenotzten Ressourcen;
  3. Optimisatioun vun der Léisung - d'Zuel vun de Migratiounen reduzéieren;
  4. Onbenotzt Rechenknäppchen auszeschalten.

D'Strategie erfuerdert déi folgend Metriken:

Metriken
Service
Plugins
commentaire

Erënnerung
Ceilometer
keent
 

disk.root.Gréisst
Ceilometer
keent
 

Déi folgend Metriken sinn fakultativ awer wäerten d'Strategie Genauegkeet verbesseren wann verfügbar:

Metriken
Service
Plugins
commentaire

Erënnerung.résident
Ceilometer
keent
 

cpu_util
Ceilometer
keent
 

Strategieparameter: Period - Zäitintervall a Sekonnen fir statesch Aggregatioun vun der metrescher Datequell ze kréien (Standard, 3600).

Benotzt déi selwecht Methoden wéi déi viregt Strategie. Méi Detailer hei.

Workload Balance - Balance d'Aarbechtslaascht tëscht Rechenknäppchen. D'Zil huet dräi Strategien: Workload Balance Migration Strategie, Workload Stabiliséierung, Storage Capacity Balance Strategie.

Workload Balance Migration Strategy leeft virtuell Maschinn Migratiounen baséiert op der Host virtuell Maschinn Aarbechtslaascht. Eng Migratiounsentscheedung gëtt gemaach wann d'% CPU oder RAM Notzung vun engem Node de spezifizéierte Schwell iwwerschreift. An dësem Fall soll déi geplënnert virtuell Maschinn den Node méi no bei der duerchschnëttlecher Aarbechtslaascht vun all Noden bréngen.

Ufuerderunge

  • Benotzung vu kierperleche Prozessoren;
  • Op d'mannst zwee kierperlech Rechenknäppchen;
  • Installéiert a konfiguréiert de Ceilometer Komponent - Ceilometer-Agent-Compute, Lafen op all Rechenknuet, an d'Ceilometer API, souwéi d'Sammelen vun de folgende Metriken:

Metriken
Service
Plugins
commentaire

cpu_util
Ceilometer
keent
 

Erënnerung.résident
Ceilometer
keent
 

Strategie Parameteren:

Parameter
Typ
default
описание

Metriken
String
'cpu_util'
Déi Basisdaten Metriken sinn: 'cpu_util', 'memory.resident'.

Schwellen
Zuel
25.0
Aarbechtslaaschtschwell fir Migratioun.

Zäitraum
Zuel
300
Kumulativ Zäit Period Ceilometer.

D'Method benotzt ass Migratioun.

Workload Stabiliséierung ass eng Strategie fir d'Aarbechtslaascht ze stabiliséieren mat Live Migratioun. D'Strategie baséiert op engem Standarddeviatioun Algorithmus a bestëmmt ob et Stau am Stärekoup ass a reagéiert op et andeems d'Maschinnmigratioun ausgeléist gëtt fir de Stärekoup ze stabiliséieren.

Ufuerderunge

  • Benotzung vu kierperleche Prozessoren;
  • Op d'mannst zwee kierperlech Rechenknäppchen;
  • Installéiert a konfiguréiert de Ceilometer Komponent - Ceilometer-Agent-Compute, Lafen op all Rechenknuet, an d'Ceilometer API, souwéi d'Sammelen vun de folgende Metriken:

Metriken
Service
Plugins
commentaire

cpu_util
Ceilometer
keent
 

Erënnerung.résident
Ceilometer
keent
 

Storage Capacity Balance Strategie (Strategie implementéiert ab Queens) - d'Strategie transferéiert Disken ofhängeg vun der Belaaschtung op de Cinder Pools. Eng Transferdecisioun gëtt gemaach wann de Poolverbrauchsquote e spezifizéierte Schwell iwwerschreift. D'Disk, déi geplënnert gëtt, soll de Pool méi no bei der Moyenne Belaaschtung vun all Cinder Pools bréngen.

Ufuerderunge a Restriktiounen

  • Minimum zwee Cinder Pools;
  • Méiglechkeet vun Disk Migratioun.
  • Cluster Datemodell - Cinder Cluster Datemodell Sammler.

Strategie Parameteren:

Parameter
Typ
default
описание

volume_threshold
Zuel
80.0
Schwellwäert vun Disken fir Bänn ze balancéieren.

D'Method déi benotzt gëtt ass Diskmigratioun (volume_migrate).

Noisy Neighbor - Identifizéieren a migréieren e "noisy Noper" - eng niddereg Prioritéit virtuell Maschinn déi negativ Auswierkungen op d'Performance vun enger héijer Prioritéit virtueller Maschinn wat IPC ugeet andeems Dir Last Level Cache iwwerbenotzt. Eegent Strategie: Noisy Neighbor (de benotzte Strategieparameter ass cache_threshold (Standardwäert ass 35), wann d'Performance op de spezifizéierte Wäert fällt, gëtt d'Migratioun gestart. Fir datt d'Strategie funktionnéiert, aktivéiert LLC (Last Level Cache) Metriken, lescht Intel Server mat CMT Ënnerstëtzung, souwéi déi folgend Metriken sammelen:

Metriken
Service
Plugins
commentaire

cpu_l3_cache
Ceilometer
keent
Intel néideg CMT.

Cluster Datemodell (Standard): Nova Cluster Datemodell Sammler. D'Method benotzt ass Migratioun.

Mat dësem Zil duerch den Dashboard ze schaffen ass net voll a Queens ëmgesat.

Thermesch Optimisatioun - den Temperaturregime optimiséieren. Outlet (Ofgasluft) Temperatur ass ee vun de wichtegen thermesche Telemetriesystemer fir den thermesche / Aarbechtslaaschtstatus vun engem Server ze moossen. D'Zil huet eng Strategie, d'Outlet Temperatur baséiert Strategie, déi decidéiert d'Aarbechtslaascht op thermesch gënschteg Hosten (niddregsten Outlet Temperatur) ze migréieren wann d'Outlettemperatur vun de Quellhosten e konfiguréierbare Schwell erreecht.

Fir d'Strategie ze schaffen, braucht Dir e Server mat Intel Power Node Manager installéiert a konfiguréiert 3.0 oder méi spéit, souwéi déi folgend Metriken sammelen:

Metriken
Service
Plugins
commentaire

hardware.ipmi.node.outlet_temperatur
Ceilometer
IPMI
 

Strategie Parameteren:

Parameter
Typ
default
описание

Schwellen
Zuel
35.0
Temperatur Schwell fir Migratioun.

Zäitraum
Zuel
30
Den Zäitintervall, a Sekonnen, fir déi statistesch Aggregatioun vun der metrescher Datenquell ze kréien.

D'Method benotzt ass Migratioun.

Airflow Optimisatioun - optiméiert de Belëftungsmodus. Eegent Strategie - Uniform Airflow mat Live Migratioun. D'Strategie léist virtuell Maschinnmigratioun aus wann de Loftfloss vum Server Fan e spezifizéierte Schwell iwwerschreift.

Fir d'Strategie ze schaffen braucht Dir:

  • Hardware: berechnen Noden < NodeManager 3.0 ënnerstëtzen;
  • Op d'mannst zwee Rechenknäppchen;
  • De Ceilometer-Agent-Compute a Ceilometer API Komponent installéiert a konfiguréiert op all Rechenknuet, déi erfollegräich Metriken wéi Loftfloss, Systemkraaft, Inlettemperatur berichten:

Metriken
Service
Plugins
commentaire

hardware.ipmi.node.airflow
Ceilometer
IPMI
 

hardware.ipmi.node.temperatur
Ceilometer
IPMI
 

hardware.ipmi.node.power
Ceilometer
IPMI
 

Fir d'Strategie ze schaffen, braucht Dir e Server mat Intel Power Node Manager 3.0 oder spéider installéiert a konfiguréiert.

Aschränkungen: D'Konzept ass net fir d'Produktioun geduecht.

Et gëtt proposéiert dësen Algorithmus mat kontinuéierlechen Auditen ze benotzen, well nëmmen eng virtuell Maschinn pro Iteratioun migréiert ass.

Live Migratiounen si méiglech.

Strategie Parameteren:

Parameter
Typ
default
описание

threshold_airflow
Zuel
400.0
Airflow Schwell fir Migratioun Eenheet ass 0.1CFM

threshold_inlet_t
Zuel
28.0
Inlet Temperatur Schwelle fir Migratioun Decisioun

threshold_power
Zuel
350.0
System Muecht Schwelle fir Migratioun Decisioun

Zäitraum
Zuel
30
Den Zäitintervall, a Sekonnen, fir déi statistesch Aggregatioun vun der metrescher Datenquell ze kréien.

D'Method benotzt ass Migratioun.

Hardware Maintenance - Hardware Ënnerhalt. D'Strategie am Zesummenhang mat dësem Zil ass Zone Migratioun. D'Strategie ass e Tool fir effektiv automatesch a minimal Migratioun vu virtuelle Maschinnen an Disken am Fall vun Bedierfnes fir Hardware Ënnerhalt. Strategie baut en Handlungsplang am Aklang mat Gewiichter: eng Rei vun Aktiounen, déi méi Gewiicht huet, gëtt virun aneren geplangt. Et ginn zwou Configuratioun Optiounen: action_weights an parallelization.

Aschränkungen: Aktioun Gewiichter an parallelization muss konfiguréiert ginn.

Strategie Parameteren:

Parameter
Typ
default
описание

compute_nodes
vill
näischt
Berechnen Noden fir Migratioun.

storage_pools
vill
näischt
Späicherknäppchen fir Migratioun.

parallel_gesamt
ganz
6
D'Gesamtzuel vun Aktivitéiten déi parallel musse gemaach ginn.

parallel_per_node
ganz
2
D'Zuel vun Aktiounen déi parallel fir all Rechenknuet gemaach ginn.

parallel_per_pool
ganz
2
D'Zuel vun Aktiounen parallel fir all Stockage Pool duerchgefouert.

Prioritéit
Objet
näischt
Prioritéit Lëscht fir virtuell Maschinnen an Disken.

with_attached_volume
Boolschen
falsch
Falsch - virtuell Maschinnen ginn migréiert nodeems all Disken migréiert goufen. True - virtuell Maschinnen ginn migréiert nodeems all verbonne Disken migréiert goufen.

Elementer vun der Array vun Informatiknoden:

Parameter
Typ
default
описание

src_node
String
näischt
De Rechenknuet, aus deem déi virtuell Maschinnen migréiert ginn (obligatoresch).

dst_node
String
näischt
Berechent den Node op deen déi virtuell Maschinnen migréieren.

Storage Node Array Elementer:

Parameter
Typ
default
описание

src_pool
String
näischt
De Späicherpool, aus deem d'Disks migréiert ginn (obligatoresch).

dst_pool
String
näischt
De Späicherpool, op deen Disken migréiert ginn.

src_type
String
näischt
Original Disk Typ (obligatoresch).

dst_type
String
näischt
Déi resultéierend Disk Typ (obligatoresch).

Objekt Prioritéit Elementer:

Parameter
Typ
default
описание

Projet
vill
näischt
Projet Nimm.

compute_node
vill
näischt
Berechnen Node Nimm.

storage_pool
vill
näischt
Stockage Pool Nimm.

berechnen
enum
näischt
Virtuell Maschinn Parameteren ["vcpu_num", "mem_size", "disk_size", "created_at"].

späicheren
enum
näischt
Disk Parameteren ["Gréisst", "created_at"].

D'Methoden déi benotzt gi sinn virtuell Maschinnmigratioun, Diskmigratioun.

Onklassifizéiert - en Hëllefsziel benotzt fir de Strategie Entwécklungsprozess ze erliichteren. Enthält keng Spezifikatioune a ka benotzt ginn wann d'Strategie nach net mat engem existente Zil assoziéiert ass. Dëst Zil kann och als Iwwergangspunkt benotzt ginn. Eng verbonne Strategie zu dësem Zil ass Actuator.   

En neit Zil erstellen

Watcher Decisioun Engine huet eng "extern Zil" Plugin Interface datt et méiglech mécht en externen Zil z'integréieren, datt mat enger Strategie erreecht ginn.

Ier Dir en neit Zil erstellt, sollt Dir sécher sinn datt keng existent Ziler Äre Besoinen entspriechen.

En neie Plugin erstellen

Fir en neit Zil ze kreéieren, musst Dir: d'Zilklass verlängeren, eng Klassmethod ëmsetzen get_name() fir d'eenzegaarteg ID vum neien Zil zréckzebréngen deen Dir wëllt erstellen. Dësen eenzegaartegen Identifizéierer muss mam Numm vum Entréespunkt passen, deen Dir spéider deklaréiert.

Als nächst musst Dir d'Klassmethod ëmsetzen get_display_name() fir den iwwersaten Affichagenumm vum Zil, deen Dir erstellen wëllt, zréckzeginn (benotzt keng Variabel fir den iwwersaten String zréckzebréngen, sou datt se automatesch vum Iwwersetzungsinstrument gesammelt ka ginn.).

Ëmsetzen eng Klass Method get_translatable_display_name()fir den Iwwersetzungsschlëssel (eigentlech den englesche Displaynumm) vun Ärem neien Zil zréckzeginn. De Retourwäert muss mat der String passen, déi an get_display_name () iwwersat ass.

Ëmsetzen seng Method get_efficacy_specification()fir d'Effizienz Spezifizéierung fir Äert Zil zréckzeginn. D'get_efficacy_specification () Method gëtt d'Unclassified () Instanz vun Watcher geliwwert. Dës Leeschtungsspezifizéierung ass nëtzlech am Prozess fir Äert Zil z'entwéckelen well et der eidel Spezifizéierung entsprécht.

Méi hei

Watcher Architektur (méi Detailer) hei).

Load Balancing am Openstack

Komponenten

Load Balancing am Openstack

Watcher API - e Komponent deen d'REST API implementéiert, déi vum Watcher geliwwert gëtt. Interaktiounsmechanismen: CLI, Horizon Plugin, Python SDK.

Watcher DB - Watcher Datebank.

Watcher Applier - e Komponent deen d'Ausféierung vun engem Aktiounsplang implementéiert, erstallt vum Watcher Decision Engine Komponent.

Watcher Decisioun Engine - De Komponent verantwortlech fir eng Rei vu potenziellen Optimisatiounsaktiounen ze berechnen fir den Auditziel z'erreechen. Wann eng Strategie net uginn ass, wielt de Komponent onofhängeg déi gëeegent.

Watcher Metrics Verlag - E Bestanddeel deen e puer Metriken oder Eventer sammelt a berechent a se op den CEP Endpunkt publizéiert. D'Funktionalitéit vun der Komponent kann och vum Ceilometer Verlag geliwwert ginn.

Complex Event Processing (CEP) Engine - Motor fir komplex Eventveraarbechtung. Aus Leeschtungsgrënn kënne verschidde CEP Engine Instanzen gläichzäiteg lafen, all Veraarbechtung eng spezifesch Zort Metrik / Event. Am Watcher System léist CEP zwou Aarte vun Aktiounen aus: - Rekord relevant Eventer / Metriken an der Zäitserie Datebank; - schéckt entspriechend Eventer un de Watcher Decision Engine wann dëst Event d'Resultat vun der aktueller Optimiséierungsstrategie beaflosse kann, well den Openstack Cluster kee statesche System ass.

D'Komponente interagéieren mam AMQP Protokoll.

Watcher konfiguréieren

Schema vun Interaktioun mat Watcher

Load Balancing am Openstack

Watcher Test Resultater

  1. Op der Optimisatioun - Aktiounspläng 500 Säit (souwuel op pure Queens an op engem Stand mat Tionix Moduler), erschéngt et nëmmen nodeems den Audit lancéiert ass an en Aktiounsplang generéiert gëtt; déi eidel mécht normalerweis op.
  2. Et gi Feeler op der Aktioun Detailer Reiter, et ass net méiglech den Audit Zil a Strategie ze kréien (souwuel op reng Queens an op engem Stand mat Tionix Moduler).
  3. Auditen mam Zweck vun Dummy (Test) ginn erstallt a lancéiert normalerweis, Aktiounspläng ginn generéiert.
  4. Audits fir den Onklassifizéierten Zil ginn net erstallt well d'Zil net funktionell ass an ass fir Zwëschenkonfiguratioun geduecht wann Dir nei Strategien erstellt.
  5. Audits fir den Zweck vum Workload Balancing (Storage Capacity Balance Strategie) ginn erfollegräich erstallt, awer en Aktiounsplang gëtt net generéiert. Nee Stockage Pool Optimisatioun néideg.
  6. Audits fir d'Workload Balancing Zil (Workload Balance Migration Strategy) ginn erfollegräich erstallt, awer en Aktiounsplang gëtt net generéiert.
  7. Audits fir Workload Balancing (Workload Stabilization Strategy) feelen.
  8. Audits fir d'Noisy Neighbor Zil ginn erfollegräich erstallt, awer en Aktiounsplang gëtt net generéiert.
  9. Auditen fir den Zweck vun der Hardware Ënnerhalt ginn erfollegräich erstallt, den Aktiounsplang gëtt net voll generéiert (Leeschtungsindikatoren ginn generéiert, awer d'Lëscht vun den Aktiounen selwer gëtt net generéiert).
  10. Ännerungen an der nova.conf configs (an der Default Rubrik compute_monitors = cpu.virt_driver) op der Berechnung a Kontroll Wirbelen net d'Feeler korrigéiert.
  11. Audits zielen op Serverkonsolidéierung (Basisstrategie) feelen och.
  12. Audits fir den Zweck vun der Serverkonsolidéierung (VM Workload Konsolidéierungsstrategie) feelen mat engem Feeler. An de Logbicher gëtt et e Feeler beim Erhalen vun Quelldaten. Diskussioun iwwer de Feeler, besonnesch hei.
    Mir hu probéiert Watcher an der Configuratiounsdatei ze spezifizéieren (et huet net gehollef - als Resultat vun engem Feeler op all Optimisatiounssäiten, zréck an den ursprénglechen Inhalt vun der Configuratiounsdatei korrigéiert d'Situatioun net):

    [watcher_strategies.basic] datasource = ceilometer, gnocchi
  13. Audits fir Energiespueren feelen. No de Logbicher beurteelen ass de Problem nach ëmmer d'Feele vun Ironic; et funktionnéiert net ouni Baremetal Service.
  14. Audits fir thermesch Optimiséierung feelen. De Traceback ass d'selwecht wéi fir Server Consolidation (VM Workload Consolidation Strategie) (Quelldatenfehler)
  15. Audits fir den Zweck vun der Airflow Optimiséierung feelen mat engem Feeler.

Déi folgend Audit Ofschlossfehler ginn och begéint. Traceback an decision-engine.log Logbicher (Cluster Staat ass net definéiert).

→ Diskussioun iwwer de Feeler hei

Konklusioun

D'Resultat vun eiser zwee-Mount Fuerschung war déi eendeiteg Conclusioun, datt fir e vollwäerteg, schaffen Belaaschtung System ze kréien, wäerte mir, an dësem Deel, enk op d'Verfeinerung vun der Tools fir d'Openstack Plattform musse schaffen.

Watcher huet sech als e seriöse a séier entwéckelende Produkt mat enorme Potenzial bewisen, déi voll Notzung vun deem vill sérieux Aarbecht erfuerdert.

Awer méi iwwer dëst an den nächsten Artikelen vun der Serie.

Source: will.com

Setzt e Commentaire