問題
在項目中我寫了個編譯打包的腳本,會拉取gitlab上工程的代碼進行編譯,然後上傳到產品服務器。其中有一次git pull去拉取gitlab上工程代碼報錯了:
ssh_exchange_identification: Connection closed by remote host
fatal: Could not read from remote repository.
分析
上面提示的意思是git在pull代碼期間連接突然被遠程中斷,我手動在機器上執行git pull代碼,並沒有出現上述報錯。
我懷疑是gitlab端的問題,由於公司有幾百研發在使用內網搭建的源碼服務器gitlab,很有可能是併發量太大導致gitlab的處理了問題。
我使用的是ssh認證方式去pull代碼,所以第一個想到的是gitlab服務器上ssh參數可能需要調整下。
修改ssh配置
ssh的配置文件:/etc/ssh/sshd_config
修改如下內容:
MaxStartups 500 #ssh登入前的聯機畫面,(即ssh某臺機器,提示yes/no的那個畫面)
MaxSessions 500 #允許的最大會話數
修改完後之後重新加載該配置:
service sshd reload
提示:千萬不要使用service sshd restart,這樣會導致很多客戶端ssh連接中斷。
博主:測試生財
座右銘:專注測試與自動化,致力提高研發效能;通過測試精進完成原始積累,通過讀書理財奔向財務自由。
csdn:https://blog.csdn.net/ccgshigao