人在運維囧途 14 打掃乾淨屋子再請客

2021-08-27 12:19:22 字數 3001 閱讀 5663

些時候木有更新人在囧途之運維的系列鳥、今兒個題目稍顯文藝

不過、俺覺得、這種方格不賴、可能後續的文全是這樣咯

人在運維囧途總會和伺服器故障不期而遇、磕磕絆絆也在所難免

但是在輕視邏輯的狀態下拼命找答案、只會浪費更多的時間、這是非常危險的

我記得福爾摩斯有提過:

在沒有事實作為參考以前妄下猜測(論點)是個很可怕的錯誤

感覺不正確的人總是用事實去套自己固有的猜測(論點)

而不是按正確的方法根據得到的事實來推導結論,看它能否吻合已得到的事實

其最重要一點(沒有之一哦)是、要先對故障現場瞭如指掌!!

接下來是一些做法、讓大家更容易理解福爾摩斯話裡所謂的"事實"、諸位看官請笑納

⑴ 穿越問題的前世今生

莫一下子扎入伺服器、你需要先明白對這台伺服器有多少已知情況

必須理清的問題大致如下圖所示:

⑵ 有誰在?

有道是、一山不容二虎、除非、、、、哈哈

● w● last

⑶ 之前發生了什麼?

秋後算賬也要先翻翻老底子喲、厚不厚也就這一回咯

可借助:

① 命令:history

② 變數:histtimeformat

這兩人可是衣寬頻水的爛兄爛弟呀、離了誰、誰就活得抓狂哦

⑷ 現在執行的程序是啥?

這個比較容易哈、條條大路通羅馬、譬如:

● pstree -a

或者、、、

● ps aux

、、、、、

⑸ 監聽的網路服務

話不多說、亮三把殺手鐗唬唬大夥

● netstat -lntp

● netstat -lnup

● netstat -lnxp

至於含義嘛、房事不懂問天涯啦

⑹ cpu & 記憶體

在這裡、偶感覺有點解方程的味道、

利用幾個命令/工具、來回答幾個問題

這個、這個、這、、貌似回到了遙遠的初中、那時、我還年輕

比如、方程式有:

● free -m

● uptime

● top

● htop

比如、問題是:

① 還有空餘記憶體否?是否使用了swap?

② 還有剩餘cpu否?幾核的?是否有某些核負載過多?

③ 伺服器最大負載來自**?平均負載是多少?

⑺ 硬體

● lspci

● ethtool

● dmidlecode

如有很多伺服器還是裸機狀態、可以看一下:

① 找到 raid 卡(是否帶 bbu備用電池?)、cpu、空餘的記憶體插槽

② 網絡卡是否設定好?是否正執行在半雙工狀態?速度是10mbps?有tx/rx報錯嗎?

⑻ io 效能

● iostat -kx 2

● vmstat 2 10

● mpstat 2 10

● dstat --top-io --top-bio

這些命令對後端優化好處n多:

① 檢查磁碟使用量、磁碟是否已滿?

② 是否開啟了swap交換模式(si/so)

③ cpu被誰占用?

④ dstat可以看到誰在進行io:是mysqld 還是 php 等

⑼ 掛載點和檔案系統

● mount

● cat /etc/fstab

● vgs

● pvs

● lvs

● df -h

回答以下問題:

① 一共掛載了多少檔案系統

② 有沒有某個服務專用的檔案系統

③ 檔案系統的掛載選項什麼

④ 是否有大檔案被刪除但空間未被釋放

⑤ 是否還有空間來擴充套件乙個分割槽

⑽ 核心、中斷和網路

● sysctl -a | grep ...

● cat /proc/interrupts

● cat /proc/net/ip_conntrack

● netstat

● ss -s

回答以下問題:

① 顯示所有存在的連線、netstat可能較慢、ss可先了解總體

② 在不同狀態下(time_wait....)tcp連線時間的設定如何

③ conntrack_max是否設定的足夠大、能應付你伺服器的流量

⑤ 中斷請求是否均衡地分配給cpu處理?

⑾ 系統日誌和核心訊息

● dmesg

● less /var/log/messages

● less /var/log/secure

● less /var/log/auth

回答以下問題:

① 檢視錯誤和告警資訊、如是否存在過載的連線數

② 看看是否有硬體錯誤或檔案系統錯誤

③ 分析這些錯誤事件和前面發現的疑點進行時間上的比對

⑿ 定時任務

① 是否有某個定時任務執行過於頻繁?

② 是否有某些使用者提交了隱藏的定時任務?

③ 在出現故障的時候、是否正好有某個備份任務在執行?

⒀ 其他應用的系統日誌

這裡是個碩大的、蛋碎的、抓狂的、(此處省略n個形容詞)、、、、的工程

比如:oracle的alert和trc檔案

nagios的日誌

....

經過如此一番折騰、我想、對故障現場也大概有些理解了、這時、我們才可開始 troubleshoting、

行文到此進入尾聲了、既然是最後、那麼問題又來鳥

大夥都聽過"水果蔬菜在'最後一公里' 坐地漲價"的老大難問題吧

這是網路上大行其是的最後一公里問題哦、木有聽過的、感覺google

但、、、、別捉急呀、我們不談最後、在伺服器排除問題時、還看今朝哈

來來、來、排好隊、1、2、3、、大家一起喊、我們的目標是"

最前十分鐘" !!!

部落格整理 人在運維囧途系列學習目錄

好像沒什麼好說的了 就聊聊我的 51 吧 真舒坦呢 連續通宵 2 天 把 電視劇集 暗香 看完 乙個感受兩個字 責任 是的 我看出了責任 責任 通常不是乙個人的事 而是一代人的 我在被窩裡看 暗香 而我爸媽在工作 是我在逃避責任嗎?人在運維囧途 01 20個linux系統內建監視工具 top 人在運...

創業囧途二

此時此刻的心情很想罵人,提前40分鐘到站,居然沒有趕上火車。在湖北恩施的這趟差旅,只能用悲劇來結尾,原本平靜低沉的心情多了些憤恨。這像是為回到杭州火爐打的前站,火辣辣的刺激了我一把,頓時煩躁起來。進站要檢票,我自然是知道,而且我也算是守規矩的人,於是我就去取票。因為沒有網際網路取票專用機器,所以得和...

現實版人在囧途 兩人通過12306買到相同高鐵票

6 月 9 日訊息,據 報道,一位龐女士在北京南站乘坐g497 次列車時發現和他人購買了相同座位的高鐵票。據悉,龐女士上車後發現自己票面上的座位已經有人坐下,和乘客交涉後發現除了身份證和姓名不一樣外,兩位乘客所購買的高鐵票一模一www.cppcns.com樣,購買時間相差約三分鐘程式設計客棧。對此 ...