crashkernel說明
本文中含有需要您注意的重要提示信息,忽略該信息可能對您的業(yè)務(wù)造成影響,請務(wù)必仔細(xì)閱讀。
crashkernel參數(shù)用于在Linux系統(tǒng)中預(yù)留一部分內(nèi)存,以便在系統(tǒng)崩潰時通過kdump服務(wù)捕獲內(nèi)存轉(zhuǎn)儲文件。這為系統(tǒng)管理員提供了強(qiáng)大的故障后分析工具,有助于快速定位和修復(fù)內(nèi)核級別的問題。本文將介紹crashkernel參數(shù)的配置方法。
操作系統(tǒng)限制
Alibaba Cloud Linux 3
Alibaba Cloud Linux 2
crashkernel參數(shù)說明
Alibaba Cloud Linux 2/3默認(rèn)在cmdline中設(shè)置了crashkernel參數(shù)。
架構(gòu) | 操作系統(tǒng) | 默認(rèn)參數(shù) |
x86 | Alibaba Cloud Linux 3 | crashkernel=0M-2G:0M,2G-8G:192M,8G-128G:256M,128G-:384M |
Alibaba Cloud Linux 2 | ||
ARM64 | Alibaba Cloud Linux3 | crashkernel=0M-2G:0M,2G-64G:256M,64G-:384M |
crashkernel參數(shù)常見形式
按偏移量設(shè)置。
crashkernel=size[KMG][@offset[KMG]]
例如
crashkernel=256M@32M
,表示預(yù)留crashkernel大小為256 M,物理地址偏移為32 M。按內(nèi)存量設(shè)置。
crashkernel=range1:size1[,range2:size2,...][@offset]
例如
crashkernel=0M-2G:0M,2G-64G:256M,64G-:384M
,表示:系統(tǒng)內(nèi)存 ≤ 2 G,則不預(yù)留crashkernel。
2 G < 系統(tǒng)內(nèi)存 ≤ 64 G,則預(yù)留256 M。
系統(tǒng)內(nèi)存 > 64 G,則預(yù)留384 M。
按內(nèi)存區(qū)域設(shè)置。
crashkernel=size[KMG],low/high
例如
crashkernel=256M,high
,表示在高內(nèi)存空間預(yù)留256 M。
修改crashkernel參數(shù)
修改當(dāng)前內(nèi)核crashkernel參數(shù)。
<crashkernel>
需替換為要設(shè)置的值,例如256M
。sudo grubby --update-kernel="/boot/vmlinuz-$(uname -r)" --args="crashkernel=<crashkernel>"
重啟實(shí)例使配置生效。
警告重啟實(shí)例將導(dǎo)致您的實(shí)例暫停運(yùn)行,這可能引發(fā)業(yè)務(wù)中斷和數(shù)據(jù)丟失。因此,建議您在執(zhí)行此操作之前備份關(guān)鍵數(shù)據(jù),并選擇在非業(yè)務(wù)高峰期進(jìn)行。
sudo reboot
查看修改后的crashkernel預(yù)留大小。
sudo kdumpctl showmem
kdump服務(wù)使用說明
如需使用kdump服務(wù),需確保系統(tǒng)內(nèi)存 > 2 G。
查看服務(wù)狀態(tài)。
sudo systemctl status kdump
關(guān)閉/開啟kdump服務(wù)。
關(guān)閉kdump服務(wù)。
sudo systemctl stop kdump
開啟dump服務(wù)。
sudo systemctl start kdump