EngelsFransSpaans

Ad


OnWorks-favicon

hbal - Online in de cloud

Voer hbal uit in de gratis hostingprovider van OnWorks via Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator

Dit is de opdracht hbal die kan worden uitgevoerd in de gratis hostingprovider van OnWorks met behulp van een van onze meerdere gratis online werkstations zoals Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator

PROGRAMMA:

NAAM


hbal - Clusterbalancer voor Ganeti

KORTE INHOUD


hbal {backend-opties...} [algoritme-opties...] [rapportage-opties...]

hbal --versie

Backend-opties:

{ -m cluster | -L[ pad ] [-X] | -t data bestand | -I pad }

Algoritme opties:

[ --max-cpu cpu-verhouding ] [ --min-schijf schijf-ratio ] [ -l begrenzing ] [ -e partituur ] [ -g delta ] [
--min-versterkingslimiet drempel ] [ -O naam... ] [ --geen schijfbewegingen ] [ --geen-instantie-bewegingen ] [
-U util-bestand ] [ --negeer-dynu ] [ --negeer-zachte-fouten ] [ --mond ja|nee ] [ --mond-xen ]
[ --uitgang-bij-ontbrekende-mond-gegevens ] [ --evacuatiemodus ] [ --beperkte migratie ] [
--select-exemplaren inst ... ] [ --exclude-instances inst ... ]

Rapportage mogelijkheden:

[ -C[ filet ] ] [ -P[ velden ] ] [ --print-exemplaren ] [ -S filet ] [ -v... | -q ]

PRODUCTBESCHRIJVING


hbal is een clusterbalancer die kijkt naar de huidige status van het cluster (knooppunten met
hun totale en vrije schijf, geheugen, enz.) en instanceplaatsing en berekent er een reeks van
stappen die zijn ontworpen om het cluster in een betere staat te brengen.

Het gebruikte algoritme is ontworpen om stabiel te zijn (dat wil zeggen dat het u dezelfde resultaten geeft wanneer
opnieuw opstarten vanaf het midden van de oplossing) en redelijk snel. Het is echter niet
ontworpen om een ​​perfect algoritme te zijn: het is mogelijk om het in een hoek te laten gaan van waaruit
het kan geen verbetering vinden, omdat het slechts één ‘stap’ vooruit kijkt.

Het programma heeft toegang tot de clusterstatus via Rapi of Luxi. Er worden ook gegevens opgevraagd via de
netwerk van alle MonD's met de optie --mond. Momenteel worden alleen gegevens gebruikt die zijn geproduceerd door
CPUload-collector.

Standaard zal het programma de oplossing stapsgewijs weergeven zoals deze wordt berekend, in a
enigszins cryptisch formaat; voor het verkrijgen van de daadwerkelijke Ganeti-opdrachtenlijst gebruikt u de -C optie.

ALGORITME
Het programma werkt in onafhankelijke stappen; bij elke stap berekenen we de beste instantieverplaatsing
dat verlaagt de clusterscore.

Het mogelijke verplaatsingstype voor een instance zijn combinaties van failover/migrate en
Replace-disks zodanig dat we een van de instantieknooppunten veranderen, en de andere blijft
(maar mogelijk met een gewijzigde rol, bijvoorbeeld van primair wordt het secundair). De lijst is:

· failover (f)

· secundaire vervangen (r)

· primaire vervangen, een samengestelde zet (f, r, f)

· failover en secundaire vervanging, ook samengesteld (f, r)

· secundaire en failover vervangen, ook samengesteld (r, f)

We doen niet de enige overgebleven mogelijkheid om beide knooppunten (r,f,r,f of de
equivalent f,r,f,r), aangezien deze zet een uitgebreide zoektocht naar beide kandidaten vereist
primaire en secundaire knooppunten, en is O(n*n) in het aantal knooppunten. Verder is het
lijkt geen betere scores te geven, maar zal resulteren in meer schijfvervangingen.

INVESTMENT BEPERKINGEN
Bij elke stap voorkomen we dat een instantie wordt verplaatst als dit het volgende zou veroorzaken:

· een knooppunt dat in de N+1-foutstatus gaat

· een instantie om naar een offline knooppunt te gaan (offline knooppunten worden uit het cluster gelezen).
of aangegeven met -O; leeggemaakte knooppunten worden als offline beschouwd)

· een op uitsluitingstag gebaseerd conflict (uitsluitingstags worden uit het cluster gelezen en/of gedefinieerd
via de --uitsluitingstags optioneel)

· een maximale vcpu/pcpu-verhouding die mag worden overschreden (geconfigureerd via --max-cpu)

· min. schijfvrij percentage om onder de geconfigureerde limiet te komen (geconfigureerd via --min-schijf)

CLUSTER SCOREN
Zoals eerder gezegd probeert het algoritme bij elke stap de clusterscore te minimaliseren. Momenteel
deze score wordt berekend als een gewogen som van de volgende componenten:

· standaardafwijking van het percentage vrij geheugen

· standaardafwijking van het percentage gereserveerd geheugen

· de som van de percentages gereserveerd geheugen

· standaardafwijking van het percentage vrije schijfruimte

· aantal knooppunten die niet slagen voor de N+1-controle

· telling van het aantal instanties dat (primair of secundair) op offline knooppunten leeft; in de
gevoel voor hbal (en de andere htools) gedraineerde knooppunten worden als offline beschouwd

· telling van instanties die (als primair) op offline knooppunten leven; dit wijkt af van het bovenstaande
metrisch door de failover van dergelijke instanties in clusters met twee knooppunten te helpen

· standaardafwijking van de verhouding tussen virtuele en fysieke CPU's (voor primaire instanties van
het knooppunt)

· standaardafwijking van de fractie van de beschikbare spindels (in speciale modus,
spindels vertegenwoordigen fysieke spindels; anders is deze overinschrijvingsmaatregel voor IO
belasting, en bij de berekening van het aantal wordt rekening gehouden met de overinschrijvingsfactor
beschikbare spindels)

· standaardafwijking van de dynamische belasting op de knooppunten, voor cpus, geheugen, schijf en netwerk

· standaardafwijking van de CPU-belasting geleverd door MonD

· het aantal exemplaren met primair en secundair in hetzelfde foutdomein

De waarden voor vrij geheugen en vrije schijf zorgen ervoor dat alle knooppunten enigszins in balans zijn
hun hulpbronnengebruik. Het gereserveerde geheugen helpt ervoor te zorgen dat knooppunten enigszins zijn
evenwichtig is in het vasthouden van secundaire instanties, en dat geen enkel knooppunt te veel geheugen gereserveerd houdt
voor N+1. En ten slotte helpt het N+1-percentage het algoritme richting eliminatie te leiden
N+1 fouten, indien mogelijk.

Met uitzondering van de N+1-fouten, telt het aantal offline-exemplaren en de domeinschending van fouten
telt, gebruiken we de standaarddeviatie, omdat bij gebruik met waarden binnen een vast bereik (we
gebruik procenten uitgedrukt als waarden tussen nul en één) het levert overal consistente resultaten op
alle statistieken (er zijn enkele kleine problemen met betrekking tot verschillende middelen, maar het werkt
over het algemeen goed). De waarden van het type 'telling' zullen een hogere score hebben en dus meer van belang zijn
voor balanceren; deze zijn dus beter voor harde beperkingen (zoals het evacueren van knooppunten en
het oplossen van N+1-fouten). De offline exemplaren tellen bijvoorbeeld mee (dat wil zeggen het aantal
instances die zich op offline knooppunten bevinden) zorgt ervoor dat het algoritme instances actief verplaatst
weg van offline knooppunten. Dit, in combinatie met de beperking op plaatsing door offline
knooppunten, zal de evacuatie van dergelijke knooppunten veroorzaken.

De dynamische belastingswaarden moeten uit een extern bestand worden gelezen (Ganeti levert dit niet
deze) en worden voor elk knooppunt berekend als: som van de CPU-belasting van het primaire exemplaar, de som van de primaire
exemplaargeheugenbelasting, som van de primaire en secundaire schijfbelasting van het exemplaar (zoals DRBD genereert
in normale gevallen ook de schrijfbelasting op secundaire knooppunten en in verslechterde scenario's ook lezen
belasting) en de som van de netwerkbelasting van het primaire exemplaar. Een voorbeeld van hoe u deze kunt genereren
waarden voor invoer in hbal zouden zijn om de xm-lijst voor instanties gedurende een dag en langer bij te houden
het berekenen van de delta van de CPU-waarden, en voer die in via de -U optie voor alle exemplaren
(en bewaar de andere statistieken als één). Om het algoritme te laten werken, is het enige wat nodig is
dat de waarden consistent zijn voor een metriek in alle instanties (bijvoorbeeld alle instanties gebruiken
cpu% om CPU-gebruik te rapporteren, en niet iets gerelateerd aan het aantal gebruikte CPU-seconden als de
CPU's zijn verschillend), en dat ze genormaliseerd zijn tussen nul en één. Merk op dat dit zo is
Het wordt aanbevolen om sindsdien geen nul meer te hebben als laadwaarde voor elke instantiestatistiek
secundaire instanties zijn niet goed in balans.

De CPUload van de gegevensverzamelaar van MonD wordt alleen gebruikt als alle MonD's actief zijn.
anders heeft het geen invloed op de clusterscore. Omdat we de CPU-belasting van elk niet kunnen vinden
instance kunnen we ervan uitgaan dat de CPU-belasting van een instance evenredig is aan het aantal
zijn vcpu's. Met deze heuristiek zullen instances van knooppunten met een hoge CPU-belasting de neiging hebben om te bewegen
naar knooppunten met minder CPU-belasting.

Op een perfect uitgebalanceerd cluster (alle knooppunten van dezelfde grootte, alle instanties van dezelfde grootte en
gelijkmatig over de knooppunten verdeeld), zouden de waarden voor alle metrieken nul zijn, met de
uitzondering van het totale percentage gereserveerd geheugen. Dit gebeurt niet zo vaak in
oefening :)

OFFLINE GEVALLEN
Omdat de huidige Ganeti-versies niet het geheugen rapporteren dat wordt gebruikt door offline (down) instances,
het negeren van de uitvoeringsstatus van instanties zal leiden tot verkeerde berekeningen. Om deze reden is de
algoritme trekt de geheugengrootte van downinstanties af van het vrije knooppuntgeheugen van hun
primaire knooppunt, waardoor in feite het opstarten van dergelijke instanties wordt gesimuleerd.

UITSLUITING TAGS
Het mechanisme voor uitsluitingstags is ontworpen om te voorkomen dat instanties dezelfde werklast uitvoeren
(bijvoorbeeld twee DNS-servers) om op hetzelfde knooppunt terecht te komen, waardoor het betreffende knooppunt een
SPOF voor de gegeven dienst.

Het werkt door instanties te taggen met bepaalde tags en vervolgens uitsluitingskaarten op te bouwen op basis van
deze. Welke tags daadwerkelijk worden gebruikt, wordt geconfigureerd via de opdrachtregel (optie
--uitsluitingstags) of door ze toe te voegen aan de clustertags:

--uitsluitingstags=a,b
Hierdoor worden alle instantietags van het formulier gemaakt A:*, B:* in aanmerking komen voor de
uitsluitingskaart

cluster labels htools:iextags:a, htools:iextags:b
Hiermee worden instantietags gemaakt A:*, B:* in aanmerking worden genomen voor de uitsluitingskaart. Meer
precies, het achtervoegsel van clustertags die beginnen met htools:iextags: zal worden
voorvoegsel van de uitsluitingstags.

Beide bovenstaande vormen betekenen dat twee instanties beide (bijvoorbeeld) de tag hebben een: foe or b: balk
eindigt niet op hetzelfde knooppunt.

MIGRATIE TAGS
Als Ganeti wordt ingezet op een heterogeen cluster, is migratie daartussen mogelijk niet mogelijk
alle knooppunten van een knooppuntgroep. Een voorbeeld van een dergelijke situatie is het upgraden van de hypervisor
knooppunt voor knooppunt. Om hbal op de hoogte te stellen van deze beperkingen, zijn er de volgende clustertags
gebruikt.

cluster labels htools:migratie:a, htools:migratie:b, etc
Hiermee worden knooppunttags van het formulier gemaakt A:*, B:*, enz. worden als migratie beschouwd
beperking. Om precies te zijn: het achtervoegsel van clustertags die beginnen met
htools:migratie: wordt het voorvoegsel van de migratietags. Alleen deze
Er wordt rekening gehouden met migraties waarbij alle migratietags van de bron aanwezig zijn
knooppunt zijn ook aanwezig op het doelknooppunt.

cluster labels htools:allowmigration:x::y For migratie labels x en y
Dit beweert dat een knooppunt is getagd y kan instances op dezelfde manier ontvangen als if
ze hadden een x label.

Dus in het simpele geval van een hypervisor-upgrade, waarbij alle knooppunten worden getagd
geüpgraded met een migratietag is voldoende. In ingewikkelder situaties is dit altijd het geval
Het is mogelijk om voor elke gebruikte hypervisor een andere migratietag te gebruiken en dit expliciet te vermelden
toegestane migratierichtingen door middel van htools:allowmigration: labels.

LOCATIE TAGS
Binnen een knooppuntgroep is de kans groter dat bepaalde knooppunten tegelijkertijd falen vanwege een
vaak voorkomende foutoorzaak (bijvoorbeeld als ze dezelfde voedingseenheid delen). Ganeti kan dat zijn
door middel van tags bewust gemaakt van deze veelvoorkomende oorzaken van falen.

cluster labels htools:nlocatie:a, htools:nlocatie:b, etc
Hiermee worden knooppunttags van het formulier gemaakt A:*, B:*, enz. worden beschouwd als een gemeenschappelijke eigenschap
oorzaak van mislukking.

Er wordt rekening gehouden met gevallen waarbij het primaire en secundaire knooppunt een gemeenschappelijke oorzaak van falen hebben
slecht geplaatst. Hoewel dergelijke plaatsingen altijd zijn toegestaan, tellen ze zwaar mee voor de
clusterscore.

OPTIES


De opties die aan het programma kunnen worden doorgegeven zijn als volgt:

-C, --print-opdrachten
Druk de opdrachtenlijst af aan het einde van de run. Zonder dit zal het programma alleen werken
tonen een kortere, maar cryptische uitvoer.

Houd er rekening mee dat de zettenlijst wordt opgesplitst in onafhankelijke stappen, genaamd "jobsets",
maar alleen voor visuele inspectie, niet voor daadwerkelijke parallellisatie. Het is niet
mogelijk om deze direct te parallelliseren wanneer ze worden uitgevoerd via "gnt-instance" -opdrachten,
omdat een samengesteld commando (bijvoorbeeld failover en Replace-disks) moet worden uitgevoerd
serieel. Parallelle uitvoering is alleen mogelijk bij gebruik van de Luxi-backend en de
-L optie.

Het algoritme voor het opsplitsen van de zetten in banensets is door het verzamelen van zetten tot
de volgende zet is het aanraken van knooppunten die al door de huidige zetten zijn aangeraakt; dit betekent wij
kan niet parallel worden uitgevoerd (vanwege de toewijzing van middelen in Ganeti) en dus beginnen we
een nieuw banenpakket.

-P, --print-knooppunten
Drukt de voor- en na-knooppuntstatus af, in een formaat dat is ontworpen om de gebruiker in staat te stellen:
de belangrijkste parameters van het knooppunt begrijpen. Zie de man-pagina gereedschap(1) voor
meer details over deze optie.

--print-exemplaren
Drukt de kaart voor en na het exemplaar af. Dit is minder nuttig als de knooppuntstatus,
maar het kan helpen bij het begrijpen van instantiebewegingen.

-O naam
Deze optie (die meerdere keren kan worden gegeven) zal knooppunten markeren als zijnde offline.
Dit betekent een aantal dingen:

· instances worden niet op deze nodes geplaatst, ook niet tijdelijk; bijv. de vervangen
primair verplaatsing is niet beschikbaar als het secundaire knooppunt offline is, aangezien deze verplaatsing
een failover vereist.

· deze knooppunten worden niet meegenomen in de scoreberekening (behalve de
percentage instanties op offline nodes)

Houd er rekening mee dat het algoritme ook alle knooppunten die door RAPI worden gerapporteerd als offline markeert
als zodanig, of die "?" bij op bestanden gebaseerde invoer in alle numerieke velden.

-e partituur, --min-score=*score*
Deze parameter geeft aan hoeveel boven de N+1-grens de clusterscore voor ons kan zijn
wees er blij mee en verander de berekening op twee manieren:

· als het cluster een initiële score heeft die lager is dan deze waarde, doen we niet mee
het algoritme helemaal niet, en sluit af met succes

· als we tijdens het iteratieve proces een score bereiken die lager is dan deze waarde, sluiten we af
het algoritme

De standaardwaarde van de parameter is momenteel 1e-9 (empirisch gekozen).

-g delta, --min-winst=*delta*
Omdat het balanceringsalgoritme soms maar heel kleine verbeteringen kan opleveren,
die minder winst opleveren dan ze kosten aan verplaatsingstijd, wordt deze parameter (defaulting
tot 0.01) vertegenwoordigt de minimale winst die we tijdens een stap nodig hebben om door te gaan
balanceren.

--min-gain-limit=*drempel*
De bovenstaande min-gain-optie wordt alleen van kracht als de clusterscore al aanwezig is
onder drempel (standaard ingesteld op 0.1). De grondgedachte achter deze instelling is dat bij
hoge clusterscores (slecht gebalanceerde clusters), willen we de herbalancering niet afbreken
te snel, omdat latere winsten nog steeds aanzienlijk kunnen zijn. Echter, onder de
drempelwaarde, de totale winst is slechts de drempelwaarde, dus we kunnen vroegtijdig afsluiten.

--geen schijfbewegingen
Deze parameter voorkomt dat hbal schijfverplaatsing gebruikt (dat wil zeggen "gnt-instance
Replace-disks") bewerkingen. Dit zal resulteren in een veel snellere balancering, maar van
De verbeteringen zijn uiteraard beperkt. Het is aan de gebruiker om te beslissen wanneer hij deze gebruikt
het een of het ander.

--geen-instantie-bewegingen
Deze parameter voorkomt dat hbal instantieverplaatsingen gebruikt (dat wil zeggen "gnt-instance
migreren/failover"). Hierbij wordt alleen gebruik gemaakt van de langzame schijfvervanging
operaties, en zal ook voor een slechter evenwicht zorgen, maar kan nuttig zijn bij verhuizingen
exemplaren in de buurt worden als onveilig beschouwd of hebben niet de voorkeur.

--evacuatiemodus
Deze parameter beperkt de lijst met exemplaren die in aanmerking komen voor verplaatsing naar de exemplaren
leven op offline/gedraineerde knooppunten. Het kan worden gebruikt als (bulk)vervanger voor
Van Ganeti gnt-knooppunt evacueren, met de opmerking dat dit geen volledige garantie biedt
evacuatie.

--beperkte migratie
Deze parameter staat elke vervangende primaire zet (frf) niet toe, evenals deze
Replace-and-failover-bewegingen (rf) waar het primaire knooppunt van de instantie zich niet bevindt
gedraineerd. Indien gebruikt samen met de optie --evac-mode, zijn de enige migraties die dat doen
hbal zal doen zijn migraties van instanties van een leeggelopen knooppunt. Dit kan handig zijn als
tijdens een herinstallatie van het basisbesturingssysteem is migratie alleen mogelijk vanaf de
oude besturingssysteem naar het nieuwe besturingssysteem. Houd er echter rekening mee dat het gebruik van migratietags meestal de
betere keuze.

--select-instanties=*instanties*
Deze parameter markeert de gegeven exemplaren (als een door komma's gescheiden lijst) als de enige
degenen die tijdens het herbalanceren worden verplaatst.

--exclude-instanties=*instanties*
Deze parameter markeert de gegeven instanties (als een door komma's gescheiden lijst) van 'zijn'
verplaatst tijdens de herbalancering.

-U util-bestand
Deze parameter specificeert een bestand dat dynamische gebruiksinformatie van het exemplaar bevat
die zal worden gebruikt om het balanceringsalgoritme aan te passen om de belasting op de knooppunten gelijk te maken
(in tegenstelling tot statisch bronnengebruik). Het bestand heeft de indeling "instance_name
cpu_util mem_util disk_util net_util" waar de "_util"-parameters worden geïnterpreteerd
als cijfers en de instantienaam moeten exact overeenkomen met de instantie zoals gelezen
Ganeti. In het geval van onbekende instantienamen wordt het programma afgebroken.

Indien niet opgegeven, zijn de standaardwaarden één voor alle statistieken en dus dynamisch
gebruik heeft slechts één effect op het algoritme: de egalisatie van de secundaire
instanties tussen knooppunten (dit is de enige statistiek die niet door een andere wordt bijgehouden,
toegewezen waarde, en dus zal de schijfbelasting van instanties een secundaire instantie veroorzaken
egalisatie). Merk op dat de waarde van één ook de primaire waarde enigszins zal beïnvloeden
instantietelling, maar dat wordt al bijgehouden via andere statistieken en dus de
De invloed van de dynamische benutting zal praktisch onbeduidend zijn.

--negeer-dynu
Indien gegeven, wordt alle dynamische gebruiksinformatie genegeerd door aan te nemen dat dit zo is
0. Deze optie heeft voorrang op alle gegevens die worden doorgegeven door de optie -U of door
de MonDs met de --mond en de --mond-data optie.

--negeer-zachte-fouten
Indien gegeven, worden alle controles op zachte fouten weggelaten bij het overwegen van balancering
beweegt. Op deze manier kan er vooruitgang worden geboekt in een cluster waar alle knooppunten zich in een bevinden
beleidsmatige slechte staat, zoals het overschrijden van de overabonnementsratio's op CPU of spindels.

-S bestandsnaam, --save-cluster=*bestandsnaam*
Indien opgegeven, wordt de status van het cluster vóór de balancering in het opgegeven bestand opgeslagen
plus de extensie "origineel" (bijv bestandsnaam.origineel) en de staat aan het einde
van de balancering wordt opgeslagen in het opgegeven bestand plus de extensie "balanced" (dwz
bestandsnaam.gebalanceerd). Hierdoor kan de clusterstatus opnieuw worden ingevoerd in de hbal zelf
of bijvoorbeeld hspace via de optie -t.

-t data bestand, --text-data=*gegevensbestand*
Backend-specificatie: de naam van het bestand met knooppunt- en instantie-informatie
(indien niet incasseren via RAPI of LUXI). Deze of een van de andere backends moet zijn
geselecteerd. De optie wordt beschreven in de man-pagina gereedschap(1).

--mond=*ja|nee*
Indien gegeven, zal het programma alle MonD's ondervragen om gegevens uit de ondersteunde gegevens op te halen
verzamelaars via het netwerk.

--mond-xen
Indien gegeven, bevraag ook Xen-specifieke verzamelaars van MonD, mits monitoring
daemons worden überhaupt bevraagd.

--uitgang-bij-ontbrekende-mond-gegevens
Als dit gegeven is, moet u dit afbreken als de gegevens die kunnen worden verkregen door het opvragen van MonDs onvolledig zijn. De
Het standaardgedrag is om door te gaan met een beste schatting op basis van de statische informatie.

--mond-gegevens data bestand
De naam van het bestand dat de door MonD verstrekte gegevens bevat, om het opvragen van MonD's te overschrijven
via het netwerk. Dit wordt meestal gebruikt voor foutopsporing. Het bestand moet in JSON zijn
formatteer en presenteer een array van JSON-objecten, één voor elk knooppunt, met twee leden.
Het eerste lid met de naam node is de naam van het knooppunt en het tweede lid met de naam
rapporten is een array van rapportobjecten. De rapportobjecten moeten hetzelfde zijn
formaat zoals geproduceerd door de monitoringagent.

-m cluster
Backend-specificatie: verzamel gegevens rechtstreeks van de cluster gegeven als argument
via RAPI. De optie wordt beschreven in de man-pagina gereedschap(1).

-L [pad]
Backend-specificatie: verzamel gegevens rechtstreeks van de hoofddaemon, die moet worden
gecontacteerd via LUXI (een intern Ganeti-protocol). De optie wordt beschreven in de
man pagina gereedschap(1).

-X Bij gebruik van de Luxi-backend kan hbal ook de gegeven opdrachten uitvoeren. De
De uitvoeringsmethode is het uitvoeren van de individuele takenets (zie de -C optie voor
details) in afzonderlijke fasen, waarbij op enig moment wordt afgebroken of een banenset niet alle banen bevat
succesvol. Elke stap in de balanceringsoplossing wordt exact vertaald
één Ganeti-taak (met tussen één en drie OpCodes), en alle stappen in a
jobset wordt parallel uitgevoerd. De jobsets zelf worden serieel uitgevoerd.

De uitvoering van de taakreeks kan worden onderbroken, zie hieronder voor de signaalafhandeling.

-l N, --max-lengte=*N*
Beperk de oplossing tot deze lengte. Dit kan bijvoorbeeld worden gebruikt om de
uitvoering van de balancering.

--max-cpu=*cpu-verhouding*
De maximale virtuele tot fysieke cpu-ratio, als een getal met drijvende komma groter dan
of gelijk aan één. Bijvoorbeeld, het specificeren van cpu-verhouding as 2.5 betekent dat voor een 4-cpu
machine, mogen maximaal 10 virtuele cpu's in gebruik zijn voor primaire
gevallen. Een waarde van precies één betekent dat er geen overinschrijving van de CPU is
(behalve de CPU-tijd die door het knooppunt zelf wordt gebruikt), en waarden onder één maken niet
zin, omdat dat betekent dat andere bronnen (bijv. schijf) niet volledig worden gebruikt vanwege:
CPU-beperkingen.

--min-schijf=*schijfverhouding*
De minimale hoeveelheid resterende vrije schijfruimte, als een getal met drijvende komma. Voor
voorbeeld, specificeren schijf-ratio as 0.25 betekent dat ten minste een kwart van de schijf
er moet ruimte vrij blijven op knooppunten.

-G uuid, --groep=*uuid*
Op een cluster met meerdere groepen selecteert u deze groep voor verwerking. Anders zal hbal dat wel doen
afbreken, omdat het niet meerdere groepen tegelijk in evenwicht kan brengen.

-in, --uitgebreid
Verhoog de breedsprakigheid van de output. Elk gebruik van deze optie verhoogt de
breedsprakigheid (momenteel meer dan 2 is niet logisch) van de standaardwaarde van één.

-Q, --stil
Verminder de breedsprakigheid van de output. Elk gebruik van deze optie zal de
breedsprakigheid (minder dan nul heeft geen zin) van de standaardwaarde van één.

-V, --versie
Toon gewoon de programmaversie en sluit af.

SIGNAAL VERWERKING BESTELLING


Bij het uitvoeren van taken via LUXI (met behulp van de optie -X), zal hbal normaal gesproken alle taken uitvoeren
totdat er één fout optreedt of alle taken met succes zijn voltooid.

Omdat het balanceren lang kan duren, is het op twee manieren mogelijk om hbal vroegtijdig te stoppen:

· door het versturen van een SIGINT (^C) registreert hbal het beëindigingsverzoek en wacht af
totdat de momenteel ingediende taken zijn voltooid, waarna het wordt afgesloten (met afsluitcode 0
als alle opdrachten correct zijn voltooid, anders met afsluitcode 1 zoals gebruikelijk)

· door een SIGTERM te sturen, zal hbal onmiddellijk afsluiten (met exitcode 2); het is de
verantwoordelijkheid van de gebruiker om contact op te nemen met Ganeti en het resultaat van de test te controleren
momenteel uitgevoerde taken

Houd er rekening mee dat het in elke situatie volkomen veilig is om hbal te doden, hetzij via de bovenstaande signalen
of via een ander signaal (bijv. SIGQUIT, SIGKILL), aangezien de opdrachten zelf worden verwerkt
door Ganeti terwijl hbal (na onderwerping) alleen hun voortgang bekijkt. In dit geval,
de gebruiker zal Ganeti moeten vragen naar taakresultaten.

EXIT STATUS


De afsluitstatus van het commando is nul, tenzij het algoritme om de een of andere reden mislukte
(bijvoorbeeld verkeerde knooppunt- of instantiegegevens), ongeldige opdrachtregelopties, of (in het geval van job
uitvoering) is een van de taken mislukt.

Zodra de taakuitvoering via Luxi is gestart (-X), als de balancering voortijdig is onderbroken (via
SIGINT, of via --max-length) maar alle taken zijn succesvol uitgevoerd, dan is de afsluitstatus
nul; een exitcode die niet nul is, betekent dat de clusterstatus moet worden onderzocht, aangezien a
taak is mislukt of we konden de status ervan niet berekenen en dit kan ook wijzen op een probleem met de
Ganeti-kant.

Gebruik hbal online met behulp van onworks.net-services


Gratis servers en werkstations

Windows- en Linux-apps downloaden

  • 1
    SLOK
    SLOK
    SWIG is een tool voor softwareontwikkeling
    dat programma's verbindt die zijn geschreven in C en
    C ++ met een verscheidenheid aan high-level
    programmeertalen. SWIG wordt gebruikt met
    verschillend...
    SWIG downloaden
  • 2
    WooCommerce Nextjs React-thema
    WooCommerce Nextjs React-thema
    Reageer WooCommerce-thema, gebouwd met
    Volgende JS, Webpack, Babel, Node en
    Express, met behulp van GraphQL en Apollo
    Cliënt. WooCommerce Store in React(
    bevat: Producten...
    Download het WooCommerce Nextjs React-thema
  • 3
    archlabs_repo
    archlabs_repo
    Pakketrepo voor ArchLabs Dit is een
    toepassing die ook kan worden opgehaald
    oppompen van
    https://sourceforge.net/projects/archlabs-repo/.
    Het is gehost in OnWorks in...
    Archlabs_repo downloaden
  • 4
    Zephyr-project
    Zephyr-project
    Het Zephyr Project is een nieuwe generatie
    real-time besturingssysteem (RTOS) dat
    ondersteunt meerdere hardware
    architecturen. Het is gebaseerd op een
    kernel met kleine voetafdruk ...
    Zephyr-project downloaden
  • 5
    SConen
    SConen
    SCons is een softwareconstructietool
    dat is een superieur alternatief voor de
    klassieke "Make" build-tool die
    we kennen en houden allemaal van. SCons is
    implementeerde een...
    SCons downloaden
  • 6
    PSeInt
    PSeInt
    PSeInt is een pseudo-code-interpreter voor
    Spaanstalige programmeerstudenten.
    Het belangrijkste doel is om een ​​hulpmiddel te zijn voor:
    de basis leren en begrijpen
    concept...
    PSeInt downloaden
  • Meer "

Linux-commando's

  • 1
    7z
    7z
    7z - Een bestandsarchiveringstool met de hoogste
    compressieverhouding ...
    Loop 7z
  • 2
    7za
    7za
    7za - Een bestandsarchiveringstool met de hoogste
    compressieverhouding ...
    Loop 7za
  • 3
    griezelig
    griezelig
    CREEPY - Een geolocatie-informatie
    aggregator BESCHRIJVING: griezelig is een
    applicatie waarmee u kunt verzamelen
    geolocatie gerelateerde informatie over
    gebruikers van ...
    Loop griezelig
  • 4
    cricket-compileren
    cricket-compileren
    cricket - Een programma om de
    verzameling en weergave van tijdreeksen
    gegevens ...
    Voer cricket-compilatie uit
  • 5
    g-wrap-config
    g-wrap-config
    g-wrap-config - script om te krijgen
    informatie over de geïnstalleerde versie
    van G-wrap ...
    Voer g-wrap-config uit
  • 6
    g.toegangsgras
    g.toegangsgras
    g.access - Beheert de toegang tot de
    huidige kaartenset voor andere gebruikers op de
    systeem. Als er geen optie wordt gegeven, drukt u af
    huidige status. KEYWORDS: algemeen, kaart
    management, pr...
    Voer g.accessgrass uit
  • Meer "

Ad