線上操作與線上問題排查實戰

2021-08-30 08:27:56 字數 1990 閱讀 7237

一、了解機器連線數情況

問題:192.168.88.136的sshd的監聽埠是22,如何統計192.168.88.136的sshd服務各種連線狀態(time_wait/ close_wait/ established)的連線數。

netstat -an | grep 192.168.88.136:22 | awk '/^tcp/  end '

netstat -lnpta | grep ssh | egrep "time_wait | close_wait | established"

說明:netstat是追查網路連線問題常用工具,和grep/awk結合更是神器。

二、從已經備份好的日誌中查詢資料

問題:從已備份的nginx.2017-08-15.log.bz2日誌中,找出包含關鍵字192.168.88.136的日誌有多少條。

bzcat nginx.2017-08-15.log.bz2 | grep '192.168.88.136' | wc -l

bzgrep '192.168.88.136' nginx.2017-08-15.log.bz2 | wc -l

less nginx.2017-08-15.log.bz2 | grep '192.168.88.136' | wc -l

說明:線上日誌檔案一般以bz2 壓縮之後保留,如果解壓查詢,非常耗空間與時間,bzcat和bzgrep是必須掌握的工具。

三、備份服務的技巧

問題:打包備份/opt/web/src目錄,排除掉目錄中的logs和目錄,打包好的檔案存放在/opt/backup目錄下。

tar -zcvf /opt/backup/web.tar.gz \

-exclude /opt/web/src/logs \

/opt/web/src

說明:這個命令線上應用較為頻繁,在專案需要打包遷移時,常常需要排除掉日誌目錄,exclude是需要掌握的引數。

四、查詢執行緒數ps -elf | wc -l

pstree -p | wc -l

五、磁碟報警,清空最大檔案

問題:找出伺服器上,某個正在執行的tomcat產生的大量異常日誌,找出該檔案,並釋放空間。不妨設該檔案包含log關鍵字,並且大於1g。

第一步,找到該檔案

find / -type f -name "*log*" | xargs ls -lsh | more

du -a / | sort -rn | grep log | more

find / -name '*log*' -size +1000m -exec du -h {} \;

第二步,將檔案清空

假設找到的檔案為a.log

正確的情況方式應該為:echo "" >a.log,檔案空間會立刻釋放。

使用:rm -rf a.log,這樣檔案雖然刪除,但是因tomcat服務仍在執行,空間不會立刻釋放,需要重啟tomcat才能將空間釋放。

六、顯示檔案,過濾注釋

問題:顯示server.conf 檔案,遮蔽掉#號開頭的注釋行

sed -n '/^[#]/!p' server.conf

sed -e '/^#/d' server.conf

grep -v "^#" server.conf

七、磁碟io異常排查

問題:磁碟io異常如何排查,類似寫入慢或當前使用率較高,請查出導致磁碟io異常高的程序id。

第一步:iotop -o 檢視當前正在寫磁碟操作的所有程序id資訊。

第二步:如果此時各項寫入指標都很低,基本沒有大的寫入操作,則需要排查磁碟自身。可以檢視系統 \

dmesg或cat /var/log/message 看看是否有相關的磁碟異常報錯,同時可以在寫入慢的磁碟上 \

touch 乙個空檔案看看,是否磁碟故障導致無法寫入。

線上操作與線上問題排查實戰

一 了解機器連線數情況 問題 192.168.88.136的sshd的監聽埠是22,如何統計192.168.88.136的sshd服務各種連線狀態 time wait close wait established 的連線數。netstat an grep 192.168.88.136 22 awk ...

線上操作與線上問題排查實戰

問題 1.2.3.4的sshd的監聽埠是22,如何統計1.2.3.4的sshd伺服器各種連線狀態 time time wait close wait estestablestablishestablished 連線數。說明 netstat是追查網路連線問題的常用工具,結合grep awk使用。說明 ...

Mycat 線上問題排查實戰

背景 由於分片字段儲存由原來的純數字變為字母 數字以及數字 純字母三種混合,準備直接修改分片規則,另外伺服器資源配置調整了一下,由原來的16cpu 32g 調整到8cpu 32g,以適應新的業務需求,由原有的mod long求模法變為sharding by murmur 一致性hash 規則,配置好...