国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > CentOS > 正文

CentOS系統中跟蹤高IO等待詳解

2020-07-08 12:44:32
字體:
來源:轉載
供稿:網友

高IO等待問題的第一個征兆通常是系統平均負載。負載均衡的計算都是基于CPU利用率的,即使用或等待CPU的進程數目,當然,在Linux平臺上,進程 幾乎都處于不可中斷的睡眠狀態。負載均衡的基線可以解釋為,在一個CPU核的機器上上,該CPU得到充分利用。因此,對于4核機器中,如果系統平均復雜為 4,表示該機器有足夠的資源來處理它需要做的工作,當然只是勉強。在相同的4核系統,如果平均復雜是8,那么以為這將意味著服務器系統需要8個core才 能處理所要做的工作,但現在只有4個核,所以已經超載。

如果系統顯示平均負載較高,但是CPU的系統(system)和用戶(user)利用率較低,那么就需要觀察IO 等待(即IO wait)。在linuc系統上,IO wait對系統負載有較大的影響,主要因為一個或多個核都可能被磁盤IO或網絡

發現進程在等待IO完成是一回事,驗證高IO wait的原因是另一回事。使用”iostat –x 1”能夠顯示正在使用的物理存儲設備的IO情況:

[username@server~]$ iostat -x 1

         Device:         rrqm/s   wrqm/s   r/s   w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await  svctm  %util

         cciss/c0d0        0.08     5.94  1.28  2.75    17.34    69.52    21.60     0.11   26.82   4.12   1.66

         cciss/c0d0p1      0.00     0.00  0.00  0.00     0.00     0.00     5.30     0.00    8.76   5.98   0.00

         cciss/c0d0p2      0.00     0.00  0.00  0.00     0.00     0.00    58.45     0.00    7.79   3.21   0.00

         cciss/c0d0p3      0.08     5.94  1.28  2.75    17.34    69.52    21.60     0.11   26.82   4.12   1.66

由上可知,很明顯,設備/dev/cciss/c0d0p3的等待時間很長。然而,我們并沒有掛載找個設備,實際上,它是個LVM設備。如果您使用的是 LVM作為存儲,那么,您應該發現iostat應該有那么一點混亂。LVM使用device mapper子系統將文件系統映射到物理設備,因此,iostat可能顯示多個設備,比如/ dev/dm-0和/ dev/dm-1。而”df –h”的輸出卻不會顯示device mapper路徑,而是打印了LVM路徑。最簡單的方法是在iostat參數中添加選項”-N”。

[username@server~]$ iostat -xN 1

         Device:         rrqm/s   wrqm/s   r/s   w/s   rsec/s   wsec/s avgrq-sz avgqu-sz   await  svctm  %util

         vg1-root          0.00     0.00  0.09  3.01     0.85    24.08     8.05     0.08   24.69   1.79   0.55

         vg1-home          0.00     0.00  0.05  1.46     0.97    11.69     8.36     0.03   19.89   3.76   0.57

         vg1-opt           0.00     0.00  0.03  1.56     0.46    12.48     8.12     0.05   29.89   3.53   0.56

         vg1-tmp           0.00     0.00  0.00  0.06     0.00     0.45     8.00     0.00   24.85   4.90   0.03

         vg1-usr           0.00     0.00  0.63  1.41     5.85    11.28     8.38     0.07   32.48   3.11   0.63

         vg1-var           0.00     0.00  0.55  1.19     9.21     9.54    10.74     0.04   24.10   4.24   0.74

         vg1-swaplv        0.00     0.00  0.00  0.00     0.00     0.00     8.00     0.00    3.98   1.88   0.00

為簡便起見,裁剪上面iostat命令的輸出信息。列出的每個文件系統所顯示出的IO等待都是不可接受的,觀察第十欄標有“await”的數據。相比而 言,文件系統/usr的await時間要高一些。我們先來分析一下這個文件系統,使用命令” fuser -vm /opt ”查看哪些進程在訪問這個文件系統,進程列表如下。

            root@server:/root > fuser -vm /opt

                                 USER        PID ACCESS COMMAND

            /opt:                db2fenc1   1067 ....m db2fmp

                                 db2fenc1   1071 ....m db2fmp

                                 db2fenc1   2560 ....m db2fmp

                                 db2fenc1   5221 ....m db2fmp

當前服務器上有112個DB2進程正在訪問/opt文件系統,為簡便起見,列出四項。看來已經找到導致問題的原因,在服務器上,數據庫配置為可使用速度更快的SAN訪問,操作系統可以使用的是本地磁盤??梢源螂娫拞枂朌BA(數據庫管理員)怎么做才能這樣配置。

最后一個組要的注意的是LVM和device mapper。 “Iostat –xN”命令的輸出顯示的是邏輯卷名,但它是可以通過命令”ls –lrt / dev /mapper”查到映射關系表。輸出信息的第六列中的dm-是與iostat中的設備名相對應的。

有時候,在操作系統或應用層是沒有什么可以做的,除了選擇速度更快的磁盤,并沒有其他的選擇。幸運的是,快速磁盤訪問,如SAN或SSD的價格正在逐步下降。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 始兴县| 凤冈县| 泸州市| 巴楚县| 洛隆县| 会理县| 拉萨市| 宜川县| 青神县| 綦江县| 聂荣县| 天全县| 集贤县| 腾冲县| 迁西县| 扬州市| 山西省| 瓦房店市| 玉田县| 甘孜县| 新邵县| 静海县| 安陆市| 运城市| 泉州市| 通渭县| 涿州市| 瓦房店市| 东兰县| 荃湾区| 北辰区| 姚安县| 巫溪县| 宿迁市| 洪洞县| 开封市| 田林县| 乌什县| 达拉特旗| 海伦市| 舞阳县|