Ergebnis 1 bis 10 von 15

Thema: Automatischer Wartungsmodus bei hoher Serverauslastung

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Avatar von hankfromhelvete
    Registriert seit
    26.04.2007
    Beiträge
    633
    Danke fürs Feedback. Das mit den % werde ich ändern.

    Hmm, wenn ich [2] nehme, könnte die Wartung unnötig eingeschaltet werden, wie man bei deinen Werten z.B. sehen kann. Dann müsste ich den Wert auf 99 oder 100 setzen. [0] wäre eigentlich 'aktueller'.

  2. #2
    Erfahrener Benutzer Avatar von Kraemer84
    Registriert seit
    24.11.2009
    Beiträge
    814
    das ist genial kannste den fertigen code nochmal posten bitte ?

    weil is nur ein gedanke aber bringt das nicht auch was bei bruteforceattacken ?

    brute force überlastet ja den server mit befehlen und wenn dann noch so ein wartungsmodus reinkommt ist der ja auch für den der die bruteforce attacke startet ergo vllt sogar ein abbruch der brute force attacke ??

    weil ich so ein mist überhaupt nicht gut heiße


    oder

    PHP-Code:
    if ($pageconfig['wartung'] == && $_SESSION['uid'] != $admin_id || $load[0] > 90 && $_SESSION['uid'] != $admin_id) { 
    einfach ändern in

    PHP-Code:
    if ($pageconfig['wartung'] == && $_SESSION['uid'] != $admin_id || $load[0] > 90% && $_SESSION['uid'] != $admin_id) { 
    ?
    www.paid4advert.de | more coming soon ..

  3. #3
    Erfahrener Benutzer Avatar von hankfromhelvete
    Registriert seit
    26.04.2007
    Beiträge
    633
    Zitat Zitat von Kraemer84 Beitrag anzeigen
    das ist genial kannste den fertigen code nochmal posten bitte ?
    Der Code ist unverändert. Hatte nur die Beschreibung geändert.

    Zitat Zitat von Kraemer84 Beitrag anzeigen
    bringt das nicht auch was bei bruteforceattacken ?
    Wenn die Serverlast dadurch zu hoch wird ja.

    PHP-Code:
    if ($pageconfig['wartung'] == && $_SESSION['uid'] != $admin_id || $load[0] > 90% && $_SESSION['uid'] != $admin_id) { 
    Das wird nicht funktionieren, da der $load[0] keine % darstellt, wie Gremlin schon geschrieben hat. Man kann den Wert aber auch auf z.B. 95 stellen. Nur man sollte beachten, dass man nach oben hin noch etwas Performance braucht.

    Wenn man keine direkte Möglichkeit hat $load[0] zu kontrollieren, kann man den per echo ausgeben um so einen angemessenen Wert zu ermitteln. Muss man eigentlich nur zu Spitzenzeiten mal beobachten

  4. #4
    Erfahrener Benutzer Avatar von Gremlin
    Registriert seit
    05.07.2006
    Beiträge
    5.206
    Falls aktuell jemand online ist. Nun fängt es hier langsam an zu laggen, weil nun komplettbackups laufen. Dennoch erreichbar und Speed okay. Aktuelle serverload:

    Array ( [0] => 44.41 [1] => 28.87 [2] => 20.15 )

    Also ich finde man sollte Wartung machen wenn > 10 hatte

    Bei einem Projekt sowas auch mal drin ab >= 15 (bei [2] )

    Es kommt jedoch auch auf den Server drauf an. Muss man individuell beobachten wie es bei einem selbst aussieht. Ich könnte hier bis 40 locker laufen lassen.

    Prozentuale Werte wären da schon viel besser, aber da kommt man glaube ich irgendwie mit exec dran *grübel*
    Diskutiere nie mit Idioten - sie holen Dich auf ihr Niveau und schlagen Dich dort mit Erfahrung!



  5. #5
    Benutzer
    Registriert seit
    25.04.2010
    Beiträge
    47
    ein load-wert von über 90? da wird jeder server vermutlich vorher schon ausgestiegen sein. bzw wieso hast du da ein % im code? wie schon gesagt ist der load absolut keine prozentuale angabe.

    mal ein paar zeilen aus wikipedia

    Load bezeichnet die momentan laufenden oder auf bestimmte Ereignisse wartenden Prozesse auf einem Computersystem. Man spricht dabei davon, dass „der Rechner einen Load von X hat“ (wobei X eine natürliche Zahl größer gleich null ist). Sie wird landläufig mit der Auslastung eines Computersystems gleichgesetzt. In der Unix-Welt, aus der der Begriff kommt, spricht man meistens von Load Average, dem Durchschnitt der Load-Werte über einen Zeitraum.
    und

    Die Load ist nicht die Auslastung des Computersystems, im speziellen nicht die Auslastung der CPU, sondern ein Maß dafür, wieviele gleichartige Systeme in einem Computer arbeiten müssten, um einen möglichen Engpass beseitigen zu können. Beispielsweise hat ein Computersystem einen Prozessor. Gleichzeitig benötigen zwei Prozesse die volle Rechenleistung (andere Ressourcen werden im Beispiel nicht beachtet). Das Betriebssystem verteilt nun die beiden Prozesse gleichmäßig so, dass Prozess 1 und Prozess 2 gleichmäßig viel Rechenleistung erhalten (Load Balancing). Die Load des Systems ist 2, die Auslastung der CPU liegt bei 100%. Man erweitert das Computersystem auf vier CPUs. Das Betriebssystem verteilt diese Last nun auf die zwei Prozesse, so dass also immer zwei CPUs voll arbeiten können, die beiden anderen liegen brach. Trotzdem rechnen die Prozesse nun doppelt so schnell und der Rechner hat dabei immer noch eine Load von 2, die Auslastung der CPUs ist jedoch nur 50%. Durch eine Programmverbesserung ist es nun möglich, die Last der zwei Prozesse auf alle vier CPUs zu verteilen. Die Load ist dann immer noch 2, die CPUs werden dabei aber zu 100% ausgelastet, das heißt, die beiden Programme rechnen nochmal doppelt so schnell.
    und weiter

    Ein Load Average von 0 sagt zum Beispiel aus, dass sämtliche Betriebsmittel zur Verfügung stehen und das System die Aufgaben eines Benutzers mit maximaler Geschwindigkeit bearbeiten kann. Eine einheitliche obere Grenze für den Load-Wert gibt es nicht. Je nach Anzahl der CPUs und anderen Betriebsmittel wie zum Beispiel vorhandener RAM gibt es jedoch in der Regel stets einen Wert, ab dem das System unbenutzbar wird, denn ein hoher Load Average-Wert wird durch viele gleichzeitig laufende Prozesse hervorgerufen, die Rechenzeit benötigen.
    und je nachdem was man selbst für einen vserver / root-server besitzt, kann es sein, dass die maschine bei einem load von 2-4 am ende angekommen ist. andererseits kann es je nach anwendung oder verwendetem kernel zu einem ganz anderen verhalten kommen, obwohl der load sogar höher ist. (1000fps kernel hat generell höheren load)

    und wenn das system von einem bruteforce angriff so dermaßen ausgelastet wird, sollte man sich gedanken machen, den ssh-port nur per port-knocking erreichbar zu machen und die logs von fail2ban oder denyhosts überwachen lassen, kostet zwar auch wieder leistung, aber ich hab lieber einen daemon der logs kontrolliert und suspekte IPs direkt aussperrt.



    //edit

    man könnte per top den idle wert auslesen und wenn dieser kleiner ist wie 10% die seite blocken

    Code:
    top -b -n 1 | grep Cpu | tr -s ' ' | cut -d" " -f 5 | cut -d"%" -f 1
    www.paid4.in - Hier gibt`s Klammlose ohne Ende!

  6. #6
    Erfahrener Benutzer Avatar von hankfromhelvete
    Registriert seit
    26.04.2007
    Beiträge
    633
    Hab den ersten Post mal aktualisiert. Am besten ist es wenn man erstmal einen Wert ermittelt, weil pauschal kann man es dann doch nicht sagen.

    Prozentuale Werte wären wirklich nicht schlecht. Müsste man nur gucken wie man das machen könnte.

  7. #7
    Erfahrener Benutzer Avatar von jpwfour
    Registriert seit
    06.02.2008
    Beiträge
    3.717
    Aber doch nicht in der PHP Anwendung bei jedem Aufruf die Prozessorauslatung auslesen. Wenn dann sollte sich der Apache oder das PHP Modul/CGI direkt darum kümmern, wobei ich mich eh frage, wie man es mit Webanwendungen schafft, die CPU auszulasten Normalerweise ist ja eher zu wenig RAM vorhanden.

    Mein Tipp: mit sar mitloggen lassen, und sollte die CPU mal ausgelastet sein, besseren Server holen
    Kill one man, and you are a murderer.
    Kill millions of men, and you are a conqueror.
    Kill them all, and you are a god.
    - Jean Rostand, Thoughts of a Biologist (1939)

Ähnliche Themen

  1. Antworten: 0
    Letzter Beitrag: 22.02.2013, 18:20
  2. Automatischer Bannerwechsel im Header
    Von seg98 im Forum Support zum VMSone
    Antworten: 9
    Letzter Beitrag: 10.05.2010, 11:37
  3. Automatischer Paidmail versand
    Von Gecko1 im Forum Scripte
    Antworten: 12
    Letzter Beitrag: 20.03.2008, 21:00
  4. Einzahlen - DCC im Wartungsmodus?
    Von Rapper im Forum Support zum VMSone
    Antworten: 2
    Letzter Beitrag: 02.06.2007, 14:21
  5. Wartungsmodus
    Von florip im Forum Support zum VMSone
    Antworten: 4
    Letzter Beitrag: 07.01.2007, 23:05

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •