Ressourcen sichern für z.B. NRPE

This forum was archived to /woltlab and is now in read-only mode.
  • Hi


    Wir haben hier manchmal das Problem, dass irgendwelche Prozesse (meistens Java brrrrrrrr) den Host so (aus)nutzen dass andere Prozesse z.B. NRPE nicht 'normal' arbeiten können. Sprich man bekommt Timeouts etc bei den NRPE anfragen. Wie könnte man einem Prozess/einer Gruppe Ressourcen zusichern? So dass es immer genügend da ist um das Programm/Gruppe 'normal' ausführen zu können? Optimal wäre halt dass in dem Moment wo der Prozess/die Gruppe es braucht es den anderen quasi 'geklaut' wird und nacher auch wieder zurückgegeben. Ich habe ein bisschen über die cgroups gelesen. Sind die, die Lösung für sowas? Oder macht jemand sowas schon auf eine andere weise? Niceness erhöhen? Über jegliche Antworten bin ich dankbar.

  • Niceness erhöhen?

    Nö, wenn schon, dann runter damit.


    Kommt aber sehr stark darauf an, welche Ressource da weggeknuspert wird. Niceness beschäftigt sich mit der Verteilung von CPU Slices. Gegen einen verzögerten Start eines neuen Prozesses, saturierten I/O, volles RAM, ... hilft das erstmal nichts.

  • aber cgroups koennte man definieren oder? ich dachte da an eine group die halt immer 5% von der jeweiligen Ressource (cpu, mem, io) zugesichert haben muss... da wurde dann nrpe,snmpd landen... der rest wie gewohnt... wir haben doch oefters mal UNKNOWNs weil java oder oracle meint jetzt alles klauen zu muessen...

  • Mit cgroups (Disclaimer: benutze ich selbst bisher nicht) hast Du eine Serie Ressourcen auf einmal zum Confen in der Hand, aber daß Du die knapp werdenden Ressourcen identifizieren, bei der na-gibts-da-wohl-Support-für-in-cgroups Lotterie gewinnen und schlußendlich noch eine zu reservierende Menge dieser Ressource bestimmen mußt, bleibt Dir immer noch erhalten.

  • huhu


    hat jemand vielleicht in der Hinsicht mittlereweile Erfahrungen gesammelt und will die mitteilen? :)