Server SSH selalu tersedia di bawah beban berat

10

Apakah ada cara server SSH saya, dan semua yang ada di bawahnya (termasuk bash) selalu tersedia di bawah beban yang berat?

Mungkin itu bisa menjadi semacam jalur kritis, semua dalam memori , dengan CPU khusus atau sesuatu seperti itu.

Apa cara saya dapat memiliki server yang selalu tersedia dengan biaya minimal, untuk menyelidiki apa yang terjadi di server saya?

blue112
sumber
Apakah Anda bertanya tentang cara memastikan bahwa Anda dapat masuk melalui SSH untuk mengatasi masalah / memperbaiki sistem yang sebelumnya tidak responsif? Jika demikian, itu jawaban yang ingin saya lihat. Saya sebelumnya bertanya-tanya apakah ada cara untuk memesan persentase sumber daya CPU / memori untuk root dengan cara yang sama dengan 5% ruang disk dicadangkan untuk root ketika sistem file ext2 terisi.
Anthony Geoghegan
@AnthonyGeoghegan Ya, itulah yang saya tanyakan. Dan itulah yang saya pikirkan, tetapi saya tidak yakin apakah ada cara untuk melakukan itu (atau bagaimana).
blue112
Sambil melihat sekeliling, saya perhatikan pertanyaan serupa ditanyakan beberapa tahun yang lalu tetapi tidak mendapatkan jawaban. Semoga pertanyaan ini mendapat respons yang lebih baik.
Anthony Geoghegan
1
Jawaban yang mungkin adalah tidak. Namun, ada beberapa hal yang dapat Anda lakukan yang akan membantu dalam mendiagnosis masalah yang menyebabkan beban jauh, seperti mengkonfigurasi pemantauan sistem jarak jauh (Scout, pemantauan server NewRelic) dan logging syslog jarak jauh (PaperTrail, LogStash, rsyslog, dll)
Creek
1
Masalah "tidak responsif" paling umum yang saya lihat adalah kehabisan deskriptor file, pid, dan soket. Bahkan jika Anda memiliki beberapa cara bagi sshd untuk menyimpan kumpulan proses yang dicadangkan, bash tidak akan dapat melakukan fork sehingga Anda akan berakhir dengan shell yang tidak berguna. Peluang terbaik Anda adalah sebuah shell yang memiliki alat debugging bawaan, tetapi jika Anda kehabisan file menangani, Anda masih akan kesulitan mendiagnosis masalah.
Chris Mendez

Jawaban:

4

Untuk sepenuhnya memanfaatkan sistem, ia menyajikan semua layanan sumber daya yang sama dan kernel akan mencoba untuk menjaga semuanya berjalan dengan prioritas yang sama. Anda dapat mengatur level prioritas dari proses sshd ke level tertinggi. (Seperti yang baik turun prioritas naik)

Lihat di sini: /server/355342/prioritise-ssh-logins-nice

Itu tidak akan menyelesaikan masalah Anda dengan memori. Anda perlu menggunakan cgroup untuk menetapkan proses sshd dengan memori khusus untuk mengatasinya.

Batasi penggunaan memori untuk satu proses Linux

DM.
sumber