1. 程式人生 > 實用技巧 >實戰:用Hyperic HQ 診斷網站無法訪問問題

實戰:用Hyperic HQ 診斷網站無法訪問問題

問題描述

一直採用Hyperic HQ CRP監控 兩個網站:

www.GoodU.info : “如是我聞”,記錄每天不經意間看到的一些好文章,排版簡潔,易於閱讀,“你永遠不知道下一篇是什麼型別的文章。”

www.wongjingwingchun.com: “黃禎詠春會”,一個以詠春拳會友的的網站,由黃禎詠春傳人免費教習,這裡做個廣告,歡迎參與。

週末休閒中,突然收到報警郵件,監控的網站無法訪問。!!! ? ? ?


環境描述

採用的基本上是主流技術。

Centos6, 64bit,; Apache Httpd 2.2.15, MySQL 5.1.x ; Drupal;

在該伺服器上安裝了 HQ Agent 5.8;


分析過程

下面的圖片是事後,恢復後的截圖,請著重看中間紅點時間段部分:

開啟監控的工具 http://demo.innovatedigital.com:7080/

CPU使用率和負載,在事發前出現異動,快速增加。

wKiom1QFMNbDitA0AAdTHf9UAuk059.jpg

記憶體交換區,空閒記憶體和交換區使用大小,快速增加。這裡,考慮到linux的記憶體管理機制,關注的是Free Memory(+buffers/cache), 而不是 Used Memory(變化不大). 很可能是某程式突然佔用了大量的記憶體。

wKiom1QFMP-ihUMLAAddesPLhxk188.jpg


再看httpd , 每分鐘的位元組吞吐量和請求量,沒有明顯變化。

wKiom1QFMSOjFmk0AAanxOcNqho481.jpg

Busy Servers 和 Busy Workers 有所增長,但是 Keepalive 沒有明顯變化。問題的原因可能與Http 關係不大。

wKiom1QFMU7A9Z9FAAZQBJWsT1g948.jpg


還需觀察資料庫,mysql, 其程序cpu使用率沒有變化,記憶體有所減低,估計是其他程序用了大量記憶體,對mysql有所擠壓,釋放了一些記憶體。slow query數量有所增加。

wKiom1QFMX2yW2CZAAbwwb9kjh4290.jpg

那麼是哪個程序突然佔用了過多的記憶體和CPU? 請看,每個時間點採集的 top 結果,大量的rdp,這是什麼?從來沒有安裝過,是rdesktop 還是 。。。? 在問題發生前幾個時間點,有這些現象,再之前,並沒有。wKioL1QFMZWDp443AAe6ka_1VJs315.jpg

登入到該主機,發現在 /root/下 有 一個 .rdp 目錄,裡面的檔案,包含了很多存放常用密碼的檔案。是被黑了? 哪位大蝦有興趣,可留言索取。


分析secure 日誌,摘取幾行如下:

Aug3016:04:05wwwsshd[1842]:Failedpasswordforrootfrom111.74.238.167port1237ssh2
。。。。。。
Aug3016:39:46wwwsshd[2432]:Failedpasswordforrootfrom202.109.143.35port4421ssh2
。。。。。。
Aug3017:01:44wwwsshd[2756]:Failedpasswordforrootfrom117.21.173.175port2182ssh2
。。。。。。
Aug3022:10:29wwwsshd[5437]:Failedpasswordforrootfrom222.186.34.36port3580ssh2
。。。。。。

查一查哪裡的IP?

111.74.238.167,202.109.143.35,117.21.173.175 江西省吉安市 電信; 222.186.34.36 江蘇省鎮江市 電信

難道不是山東的南翔技校?


初步結論

根據上面的情況,很可能是主機密碼被猜到,從而象上面幾個地址一樣被利用。


措施

首先是修改密碼,關閉ssh登入,採用vnc。


為了能夠更早發現網站無法訪問的問題,在HQ 中定義了一個服務,輪詢某個特定的網頁,根據返回時間和返回的資料判斷是否發生了問題。具體如下:


定義一個http service , 名為 goodu.info 連線測試, 具體引數:主機名 www.goodu.info; 埠: 80; 超時時間:10秒;PATH: /gc/; method: GET; pattern: 如是我聞; Follow redirect: yes; 意思是 定期訪問http://www.goodu.info/gc 如果返回的頁面中有 “如是我聞”四個字,就認為是正常的。

wKioL1QFMbni2KsVAAK86CrAeLI974.jpgwKioL1QFMc6AoJ7qAAVk9bpVgqY970.jpg

然後,再定義一些報警等。 網站恢復後,請看一些圖:

Mysql 執行狀態:

wKioL1QFMeyB8ZF9AAWDiv6AGow799.jpg

主機執行狀態:

wKiom1QFMgXT4ht6AAXmBCAaito429.jpg

留言

拜託各位***大蝦對小站手下留情;

懇請各位高手指點 rdp 是什麼? 希望得出更多結論.

http://hq.innovatedigital.com

轉載於:https://blog.51cto.com/hyperichq/1547718