Serwer SSH zawsze dostępny pod dużym obciążeniem

10

Czy jest jakiś sposób, że mój serwer SSH i wszystko pod nim (w tym bash) może być zawsze dostępne pod dużym obciążeniem?

Może to być jakaś krytyczna ścieżka, cała w pamięci , z dedykowanym procesorem lub coś w tym rodzaju.

Jak mogę mieć zawsze dostępny serwer przy minimalnych kosztach, aby zbadać, co się dzieje na moim serwerze?

niebieski112
źródło
Czy pytasz o sposób, w jaki możesz się zalogować za pośrednictwem SSH, aby rozwiązać problem / naprawić system, który w innym przypadku nie odpowiada? Jeśli tak, to odpowiedź, którą chciałbym zobaczyć. Wcześniej zastanawiałem się, czy istnieje jakiś sposób zarezerwowania procentu zasobów procesora / pamięci dla roota w taki sam sposób, w jaki 5% miejsca na dysku jest zarezerwowane dla roota, gdy system plików ext2 zapełni się.
Anthony Geoghegan
@AnthonyGeoghegan Tak, o to pytam. I o tym myślę, ale nie jestem pewien, czy jest jakiś sposób na to (lub jak).
blue112
Rozglądając się, zauważyłem podobne pytanie zadane kilka lat temu, ale nie otrzymałem żadnych odpowiedzi. Mam nadzieję, że to pytanie uzyska lepszą odpowiedź.
Anthony Geoghegan
1
Prawdopodobna odpowiedź to nie. Są jednak rzeczy, które możesz zrobić, które pomogą zdalnie zdiagnozować problemy powodujące duże obciążenie, takie jak konfiguracja zdalnego monitorowania systemu (Scout, monitorowanie serwera NewRelic) i zdalnego rejestrowania syslog (PaperTrail, LogStash, rsyslog itp.)
Creek
1
Najczęstsze problemy z „brakiem odpowiedzi”, jakie widziałem, to brak deskryptorów plików, pid i gniazd. Nawet gdybyś miał jakiś sposób, aby sshd zachował pulę zarezerwowanych procesów, bash nie byłby w stanie rozwidlić się, więc otrzymałeś bezużyteczną powłokę. Twoja najlepsza szansa to powłoka z wbudowanymi narzędziami do debugowania, ale jeśli nie masz uchwytów plików, nadal będziesz miał problemy z diagnozowaniem problemów.
Chris Mendez,

Odpowiedzi:

4

Aby w pełni wykorzystać system, prezentuje wszystkim usługom te same zasoby, a jądro spróbuje utrzymać je wszystkie z tym samym priorytetem. Możesz ustawić poziom priorytetu procesu sshd na najwyższy poziom. (Jak miło spada pierwszeństwo rośnie)

Zobacz tutaj: /server/355342/prioritise-ssh-logins-nice

To nie rozwiąże twojego problemu z pamięcią. Będziesz musiał użyć cgroups, aby przypisać procesowi sshd własną zarezerwowaną pamięć do obsługi tego.

Ogranicz użycie pamięci dla pojedynczego procesu Linux

DM.
źródło