騰訊雲centos服務器不能登陸的解決過程

在騰訊雲上申請了一個centos服務器,最基礎的配置,1 核 1 GB 1 Mbps,50G硬盤,主要用來測試程序,練手用。在上面配置了一個mysql數據庫,一直使用都沒什麼問題。mysql

1 問題描述sql

過了個週末,週一上班,忽然發現MySQL不能使用了,鏈接不上。使用SSH登陸服務器查看,發現SSH也不能登陸服務器了。到騰訊雲控制檯頁面,查看服務器實例的狀態,點擊實例名,能夠查看監控頁面,裏面會顯示服務器實例的CPU、內網、外網、內存、硬盤等使用狀況。數據庫

 

 

當時CPU使用率到了90%以上,最高99%,硬盤IO訪問頻繁,特別是讀數據量很是大。centos

2 解決過程服務器

2.1 重啓服務器測試

想到重啓服務器,看能不能解決問題,服務器重啓以後,使用SSH能夠登陸進去,而後利用top命令查看進程、cpu使用等狀況,結果沒有發現異常,不過,很快就卡死了,SSH不能操做了。Mysql數據庫也是同樣,可啓動服務器的時候,能夠訪問,很快就不能訪問了。再次到騰訊雲操做臺查看服務器實例的監控頁面,CPU使用率依然在90%以上,說明重啓以後,問題沒有解決。優化

2.2 百度查看CPU利用率高spa

利用度娘,查看騰訊雲服務器CPU利用率高,給出一個頁面https://cloud.tencent.com/developer/information/%E6%9C%8D%E5%8A%A1%E5%99%A8cpu%E5%88%A9%E7%94%A8%E7%8E%87%E9%AB%98,點擊進入以後,有一個「CPU 使用率太高(Linux 系統)」連接,點擊進入https://cloud.tencent.com/document/product/213/14634,裏面對CPU利用率太高的分析過程和解決辦法進行了描述。命令行

騰訊將服務器CPU利用率太高歸結爲三個狀況,一種狀況是有異常進程,多是木馬或者病毒,須要使用top命令,查看哪一個進程佔用了CPU,而後使用kill命令結束異常進程。第二種狀況是業務量大,也就是說服務器承擔的業務過多,訪問量大,服務器負載大,承受不住,須要優化代碼或者擴容。第三種狀況是騰訊的組件進程,可能引發CPU利用率高,須要發起工單,向騰訊工做人員求助。orm

本身分析了一下,應該是第一種狀況,可能有異常的進程,佔用了大量的CPU資源,仔細查看文檔說明,其中有一句話,「CPU 使用率太高,容易引發服務器登陸不上,此時能夠嘗試使用 VNC 登陸的方式。使用 VNC 登陸實例的方法詳見 登陸Linux 實例 相關小節。」

2.3 VNC登陸服務器

回到服務器實例列表頁面,在服務器實例信息的最右側,操做列,點擊登陸。

 

 

在彈出頁面,選擇紅色方框中的其餘方式(VNC),輸入密碼,登陸到服務器。

 

 

登陸後,直接會顯示top命令以後的信息,最下面有一段信息,提示進程22929有異常,須要將該進程關閉,點擊q退出top信息顯示,而後輸入kill -9 22929,關閉進程。

再回到服務器實例的監控頁面,CPU利用率立刻就下來了,使用率不到10%,而後使用SSH登陸服務器,正常登陸。鏈接mysql數據庫,也可以正常鏈接,問題獲得解決。

3 總結

第一次碰到不能登陸SSH的問題,按照重啓服務器,騰訊雲的幫助文檔,多方嘗試,最終,利用VNC登陸服務器,按照提示信息,關閉異常進程,將問題解決。

備註:top命令簡單操做

輸入top以後,會顯示cpu、內存、進程等相關信息。

Shift+t:按照cpu使用率排序進程

Shift+m:按照內存使用率排序進程

q:退出,回到命令行

kill -9 -xxx:結束xxx進程。

相關文章
相關標籤/搜索