ubuntu鯖にscriptでsshしてコマンド実行とかしてるんだが特定の鯖でConnection reset by peerで確率的に繋がらにゃいことがある。
LAN内で共動してる鯖の一部がsshで蹴られることがある、とかいうのは、nfsと同じくエラー処理が大変めんどくさい。しかもnfsは元気に繋がってるので、ここはこの鯖のsshdの調整をするしかにゃい。
といってもubuntu標準で入れてあるだけのつもりにゃんだが、はて?
とりあえず鯖から蹴られそうにゃ原因にゃんてほとんど思いつかにゃいので、雑に
while : ; do ssh hoge ls ; done
とか
while : ; do (ssh hoge ls & ) ; done
とかすると、すごい勢いでConnection reset by peerされたので、まぁ接続数がにゃんぞ高ぶっているのだろうかにゃぁと。
そこでさらに雑に
MaxSessions 2000
MaxStartups 1000:30:2000
等と入れて動かしてみたところ、それっぽく耐えたので、これでいいかー、と放置したんだが、その後ssh繋がらにゃくにゃった。
topしてみるとsshdがCPU全部持って行ってて、にゃんかあかんことに。
どうも1000超えると死ぬみたいにゃ話が載ってたので減らして様子見。
MaxStartups 500:30:1000
MaxSessions 1000
うーん、ちゃんとdebug log見て原因調べた方が良いかしら?
原因が認証の遅延にゃりにゃんにゃりだとして、この鯖だけってのがよく分からんが。
他の鯖も
MaxStartups 900:30:1000
とかにしておいた方が安定して動くのかねぇ?