SSH-Server immer unter hoher Last verfügbar

10

Gibt es eine Möglichkeit, wie mein SSH-Server und alles darunter (einschließlich Bash) unter hoher Last immer verfügbar sein können?

Vielleicht könnte es eine Art kritischer Pfad sein, alles im Speicher , mit einer dedizierten CPU oder so ähnlich.

Wie könnte ich einen immer verfügbaren Server zu minimalen Kosten haben, um zu untersuchen, was auf meinem Server vor sich geht?

blue112
quelle
Fragen Sie nach einer Möglichkeit, um sicherzustellen, dass Sie sich über SSH anmelden können, um ein ansonsten nicht reagierendes System zu beheben? Wenn ja, ist das eine Antwort, die ich gerne sehen würde. Ich hatte mich zuvor gefragt, ob es eine Möglichkeit gibt, einen Prozentsatz der CPU- / Speicherressourcen für root zu reservieren, genauso wie 5% des Speicherplatzes für root reserviert sind, wenn ein ext2-Dateisystem voll ist.
Anthony Geoghegan
@AnthonyGeoghegan Ja, das frage ich. Und darüber denke ich nach, aber ich bin mir nicht sicher, ob es einen Weg gibt, das zu tun (oder wie).
blue112
Als ich mich umsah, bemerkte ich, dass vor einigen Jahren eine ähnliche Frage gestellt wurde, bekam aber keine Antworten. Wir hoffen, dass diese Frage eine bessere Antwort erhält.
Anthony Geoghegan
1
Die wahrscheinliche Antwort ist nein. Es gibt jedoch einige Möglichkeiten, mit denen Sie die Probleme, die die hohe Last verursachen, aus der Ferne diagnostizieren können, z. B. die Konfiguration der Remote-Systemüberwachung (Scout, NewRelics Serverüberwachung) und die Remote-Syslog-Protokollierung (PaperTrail, LogStash, rsyslog usw.)
Creek
1
Die häufigsten "nicht reagierenden" Probleme, die ich gesehen habe, sind die fehlenden Dateideskriptoren, Pids und Sockets. Selbst wenn Sie eine Möglichkeit für sshd hätten, einen Pool reservierter Prozesse zu verwalten, wäre bash nicht in der Lage, sich zu teilen, sodass Sie eine nutzlose Shell erhalten würden. Ihre beste Chance wäre eine Shell, in die Debugging-Tools integriert sind. Wenn Sie jedoch keine Dateihandles mehr haben, haben Sie immer noch Probleme, Probleme zu diagnostizieren.
Chris Mendez

Antworten:

4

Um das System vollständig nutzen zu können, werden allen Diensten dieselben Ressourcen angezeigt, und der Kernel wird versuchen, alle Dienste mit derselben Priorität auszuführen. Sie können die Prioritätsstufe des sshd-Prozesses auf die höchste Stufe setzen. (Wie schön geht runter geht die Priorität rauf)

Siehe hier: /server/355342/prioritise-ssh-logins-nice

Das wird Ihr Problem mit dem Speicher nicht lösen. Sie müssten cgroups verwenden, um dem sshd-Prozess einen eigenen reservierten Speicher zuzuweisen, um dies zu handhaben.

Begrenzen Sie die Speichernutzung für einen einzelnen Linux-Prozess

DM.
quelle