壓力測試 Windows Server 2k8 盒子
讓我首先解釋我為什麼要這樣做。一切都執行良好。我在另一台伺服器上導入了 MySQL 數據庫的快照,以準備設置主-主複製(一旦設置完成,這個將成為陣列中的主數據庫)。我已經打開了 MySQL 從屬複製,它正在迎頭趕上。我還通過 cygwin 進行了 rsync 傳輸。我忘記了什麼,所以我向 MySQL 發出了一個
STOP SLAVE
命令。這導致整個伺服器從字面上掛起。ping 沒有回复,什麼都沒有。在這種狀態下大約 15 分鐘後,盒子被手動硬重啟。如果我可以信任伺服器,這在我腦海中提出了一個問題。
STOP SLAVE
根本不是一個密集的電話。我無法理解為什麼這會導致 MySQL 崩潰,但僅是整個作業系統。所以現在我想知道這是否是硬體問題。我們剛剛在伺服器上安裝了全新的 Ram (32gb),但他們從未在上面執行過 memtest。由於我沒有對伺服器的物理訪問權限(在不同的國家/地區),所以他們要到星期一早上才會執行 memtest。我想在周末盡可能多地進行測試。幾年前我在 Linux 中遇到過類似的問題,這是由錯誤的 bios 引起的,在高 I/O 負載下,機器只會當機。然後我為重現它所做的是讓一些 python 腳本生成許多大 (10gb+) 文件,然後隨機尋找這些文件中的不同位置。這導致機器在幾分鐘內停止。
所以這讓我想到,為什麼不做類似的事情。因此,我編寫了一個 python 程序來讀取和寫入一系列文件(在 4 個程序中執行),以希望使磁碟飽和。然後我又寫了一個來嘗試吃盡可能多的 ram(現在是 32gb 並且還在攀升),同時隨機讀取和寫入其列表中的位置。它現在已經運轉了大約一個小時,並且仍然穩定(交換正在減慢速度,但它仍然穩定)。
所以我來這裡問一下,有沒有真正不依賴於應用程序的2k8 壓力測試的使用者級方法?一旦 MySQL 趕上來,我將編寫一個腳本來隨機查詢它以增加 I/O 和記憶體鍛煉。但我更希望測試機器和作業系統而不是應用程序……但在那之前,我想懲罰這台機器的停機。
謝謝
要測試硬碟驅動器,請執行驅動器製造商的全面表面掃描,如果您願意,可以多次執行。
對於測試 CPU 和記憶體,有很多軟體包。“老化”測試很可能是您正在尋找的,但大多數基準測試套件都可以循環以對電腦施加壓力。我是SiSoft Sandra軟體包的粉絲,儘管我已經很多年沒有使用它了。
如果您正在尋找更接近您的 Python 腳本的東西,請嘗試IOZone
我可能會在這裡說明顯而易見的事情,但您是否檢查過伺服器上的事件日誌,看看這是否有助於確定究竟是什麼導致了崩潰?
我不確定這是否是我的誤導性迷信,因為我沒有圖表來證明這一點,但我注意到大多數時候我看到伺服器的問題是與軟體/作業系統相關的錯誤。