suse 下部署kdump

kdump 是一種先進的基於 kexec 的內核崩潰轉儲機制。當系統崩潰時,kdump 使用 kexec 啓動到第二個內核。第二個內核通常叫做捕獲內核,以很小內存啓動以捕獲轉儲鏡像。第一個內核保留了內存的一部分給第二內核啓動用。由於 kdump 利用 kexec 啓動捕獲內核,繞過了 BIOS,所以第一個內核的內存得以保留。這是內核崩潰轉儲的本質。

測試操作系統:suse10 SP3

1、安裝kdump所需要的rpm

   ——所需要的包在操作系統盤中都可以找到,無需到處下載

部署kdump工具,需要安裝三個rpm包,分別是kernel-kdump-2.6.16.60-0.54.5.x86_64.rpmkdump-0.3.0-8.14.x86_64.rpmkexec-tools-1.101-32.54.10.x86_64.rpm ,依順序安裝即可,其中需要注意kdump包和kexec-tools互爲依賴關係,在安裝時需要同時制定他們兩個包,如下:

2、測試rpm包是否正確安裝

執行 rckdump status 或者 service kdump status,如果出現“kdump kernel not loaded”則表示安裝成功:

3、爲kdump預留內存空間

   在配置預留空間內存時,可以參考以下表格:

 suse 10 系統X86X86_64結構,參考以下配置預留表格

 

Memory

crashkernel=

0 - 12 GB

64M@16M

13 - 48 GB

128M@16M

49 - 128 GB

256M@16M

129 - 256 GB

512M@16M








 

如果是suse11 系統X86X86_64結構,參考以下配置預留表格  

Memory

crashkernel=

0 - 12 GB

64M

13 - 48 GB

128M

49 - 128 GB

256M

129 - 256 GB

512M

 

 

 

 

 3、修改/boot/grub/menu.lst文件

/boot/grub/menu.lst文件中找到resume=/dev/system/swap splash=silent showopts這行,然後在本行末尾增加:crashkernel=64M@16M 

注:本機內存爲2G,因此crashkernel=64M@16M,實際情況請參考上面的表格。

本部分設置也可以使用suse自帶的圖形化工具yast,只需要點點鼠標即可,連預留空間都不要輸入,我就不贅述了。

4、配置kdump開機自啓動

 執行命令:chkconfig kdump on

至此kdump的部署工作已經完成,我們需要重啓服務器 讓配置生效,執行reboot

5、確認kdump配置是否成功。

執行 rckdump status

顯示kdump配置成功。

6kdump的測試

kdump主要就是用來當系統出現內部錯誤時,可以自動轉儲錯誤信息,並自動完成服務器重啓,我們測試一下:

執行一下兩條命令:

1sync  

2echo c >/proc/sysrq-trigger  -----c”必須小寫

執行完第二條命令,系統將會進入死機狀態,然後服務器會自動重啓。

重啓完成後,我們去dump目錄查看是否已經正確生成轉儲文件。

轉儲的文件位置:/var/log/dump

轉儲目錄正確生成,kdump配置成功。

 博文最下面的附件是suse關於kdump官方文檔描述,可以下載下載下來看看。

另有關於kdump的系統介紹,大家可以去了解:

http://www.ibm.com/developerworks/cn/linux/l-cn-kdump1/

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章