IPMITool 工具使用詳細教程
IPMITool 工具使用詳細教程
一、IPMI 與 IPMITool 簡介
1. IPMI 概述
智能平臺管理接口(Intelligent Platform Management Interface,簡稱 IPMI)是一種開放標準的硬件管理接口規格,定義了嵌入式管理子系統進行通信的特定方法。它獨立于系統的 CPU、BIOS 和操作系統,能夠在系統未開機的狀態下,對系統進行監控、管理和維護。通過 IPMI,管理員可以遠程監控服務器的硬件狀態(如溫度、電壓、風扇轉速等)、控制服務器的電源狀態、進行系統日志記錄等操作。
2. IPMITool 概述
IPMITool 是一個開源的命令行工具,用于與支持 IPMI 標準的系統進行交互。它提供了豐富的功能,允許用戶通過 IPMI 接口執行各種管理任務。IPMITool 可以運行在多種操作系統上,如 Linux、Windows 等,為管理員提供了一種方便、靈活的方式來管理和監控服務器硬件。
二、IPMITool 安裝
1. Linux 系統安裝
Debian/Ubuntu 系統
在終端中執行以下命令進行安裝:
sudo apt-get update
sudo apt-get install ipmitool
Red Hat/CentOS 系統
使用以下命令進行安裝:
sudo yum install ipmitool
2. Windows 系統安裝
- 訪問 IPMITool 的官方下載頁面或相關軟件源,下載適用于 Windows 的 IPMITool 安裝包。
- 運行安裝包,按照安裝向導的提示完成安裝。安裝完成后,需要將 IPMITool 的安裝目錄添加到系統的環境變量中,以便在命令提示符中可以直接使用。
三、IPMITool 基本使用
1. 連接到目標服務器
在使用 IPMITool 之前,需要先與支持 IPMI 的目標服務器建立連接。連接服務器需要知道服務器的 IPMI 接口的 IP 地址、用戶名和密碼。使用以下命令進行連接:
ipmitool -I lanplus -H <IP 地址> -U <用戶名> -P <密碼> <命令>
-I lanplus:指定使用 LAN 協議進行連接,這是最常用的連接方式。-H <IP 地址>:指定目標服務器 IPMI 接口的 IP 地址。-U <用戶名>:指定登錄 IPMI 接口的用戶名。-P <密碼>:指定登錄 IPMI 接口的密碼。
例如,連接到 IP 地址為 192.168.1.100,用戶名為 admin,密碼為 password 的服務器,并查看服務器的系統信息:
ipmitool -I lanplus -H 192.168.1.100 -U admin -P password chassis status
2. 查看服務器硬件狀態信息
查看傳感器信息
傳感器信息可以反映服務器的硬件狀態,如溫度、電壓、風扇轉速等。使用以下命令查看傳感器信息:
ipmitool -I lanplus -H <IP 地址> -U <用戶名> -P <密碼> sensor
該命令將輸出服務器上所有傳感器的詳細信息,包括傳感器名稱、當前值、狀態等。例如:
CPU Temp | 32.000 | degrees C | ok | na | 5.000 | 10.000 | 80.000 | 85.000 | 90.000
MB Temp | 28.000 | degrees C | ok | na | 5.000 | 10.000 | 70.000 | 75.000 | 80.000
Fan1 | 3000 | RPM | ok | na | 1000 | 1500 | 8000 | 8500 | 9000
查看系統事件日志(SEL)
系統事件日志記錄了服務器硬件的各種事件信息,如硬件故障、傳感器告警等。使用以下命令查看系統事件日志:
ipmitool -I lanplus -H <IP 地址> -U <用戶名> -P <密碼> sel list
該命令將輸出系統事件日志的詳細信息,包括事件發生的時間、事件類型、事件描述等。例如:
1 | 01/01/2025 | 12:00:00 | Temperature Sensor | CPU Temp | Going High
2 | 01/01/2025 | 12:05:00 | Temperature Sensor | CPU Temp | Going Normal
3. 控制服務器電源狀態
查看電源狀態
使用以下命令查看服務器的電源狀態:
ipmitool -I lanplus -H <IP 地址> -U <用戶名> -P <密碼> chassis power status
該命令將輸出服務器的電源狀態,如 Power is on 或 Power is off。
開機
使用以下命令開啟服務器電源:
ipmitool -I lanplus -H <IP 地址> -U <用戶名> -P <密碼> chassis power on
關機
使用以下命令關閉服務器電源:
ipmitool -I lanplus -H <IP 地址> -U <用戶名> -P <密碼> chassis power off
重啟
使用以下命令重啟服務器:
ipmitool -I lanplus -H <IP 地址> -U <用戶名> -P <密碼> chassis power reset
4. 遠程控制臺(SOL)功能
遠程控制臺(Serial over LAN,簡稱 SOL)允許用戶通過網絡遠程訪問服務器的串口控制臺。使用以下命令啟用 SOL 功能:
ipmitool -I lanplus -H <IP 地址> -U <用戶名> -P <密碼> sol activate
啟用 SOL 功能后,用戶可以在終端中像操作本地串口控制臺一樣操作服務器。要退出 SOL 會話,可以按下 Ctrl + ] 組合鍵。
四、高級使用
1. 設置 IPMI 接口參數
可以使用 IPMITool 來設置服務器 IPMI 接口的參數,如 IP 地址、子網掩碼、網關等。以下是設置 IPMI 接口 IP 地址的示例:
ipmitool -I lanplus -H <IP 地址> -U <用戶名> -P <密碼> lan set 1 ipsrc static
ipmitool -I lanplus -H <IP 地址> -U <用戶名> -P <密碼> lan set 1 ipaddr <新 IP 地址>
ipmitool -I lanplus -H <IP 地址> -U <用戶名> -P <密碼> lan set 1 netmask <子網掩碼>
ipmitool -I lanplus -H <IP 地址> -U <用戶名> -P <密碼> lan set 1 defgw ipaddr <網關地址>
2. 批量操作
如果需要對多臺服務器進行相同的操作,可以編寫腳本實現批量操作。以下是一個使用 Bash 腳本批量查看多臺服務器傳感器信息的示例:
#!/bin/bash
# 定義服務器列表
servers=(
"192.168.1.100"
"192.168.1.101"
"192.168.1.102"
)
# 定義用戶名和密碼
username="admin"
password="password"
# 遍歷服務器列表
for server in "${servers[@]}"
do
echo "查看服務器 $server 的傳感器信息:"
ipmitool -I lanplus -H $server -U $username -P $password sensor
echo "------------------------------"
done
將上述腳本保存為 batch_sensor.sh,并賦予執行權限:
chmod +x batch_sensor.sh
然后運行腳本:
./batch_sensor.sh
3. 用戶管理
創建用戶
可以使用 IPMITool 創建新的 IPMI 用戶,以便不同的管理員使用不同的賬號進行管理操作。創建用戶的命令如下:
ipmitool -I lanplus -H <IP 地址> -U <用戶名> -P <密碼> user set name <用戶 ID> <新用戶名>
ipmitool -I lanplus -H <IP 地址> -U <用戶名> -P <密碼> user set password <用戶 ID> <新密碼>
ipmitool -I lanplus -H <IP 地址> -U <用戶名> -P <密碼> user enable <用戶 ID>
<用戶 ID>:是一個唯一的數字,用于標識用戶,范圍通常是 1 - 16。<新用戶名>:指定要創建的新用戶的名稱。<新密碼>:指定新用戶的登錄密碼。
例如,創建一個用戶 ID 為 3,用戶名為 newuser,密碼為 newpassword 的新用戶:
ipmitool -I lanplus -H 192.168.1.100 -U admin -P password user set name 3 newuser
ipmitool -I lanplus -H 192.168.1.100 -U admin -P password user set password 3 newpassword
ipmitool -I lanplus -H 192.168.1.100 -U admin -P password user enable 3
修改用戶權限
創建用戶后,可以根據需要為用戶分配不同的權限。權限分為不同的級別,如 CALLBACK、USER、OPERATOR、ADMINISTRATOR 等。使用以下命令修改用戶權限:
ipmitool -I lanplus -H <IP 地址> -U <用戶名> -P <密碼> channel setaccess <通道 ID> <用戶 ID> privilege=<權限級別>
<通道 ID>:通常為 1,表示 LAN 通道。<權限級別>:可以是CALLBACK、USER、OPERATOR、ADMINISTRATOR等。
例如,將用戶 ID 為 3 的用戶權限設置為 ADMINISTRATOR:
ipmitool -I lanplus -H 192.168.1.100 -U admin -P password channel setaccess 1 3 privilege=ADMINISTRATOR
刪除用戶
如果某個用戶不再需要,可以使用以下命令刪除用戶:
ipmitool -I lanplus -H <IP 地址> -U <用戶名> -P <密碼> user disable <用戶 ID>
ipmitool -I lanplus -H <IP 地址> -U <用戶名> -P <密碼> user delete <用戶 ID>
例如,刪除用戶 ID 為 3 的用戶:
ipmitool -I lanplus -H 192.168.1.100 -U admin -P password user disable 3
ipmitool -I lanplus -H 192.168.1.100 -U admin -P password user delete 3
4. 修改 IPMI 接口密碼
可以使用 IPMITool 修改 IPMI 接口的管理員密碼。使用以下命令修改密碼:
ipmitool -I lanplus -H <IP 地址> -U <用戶名> -P <舊密碼> user set password <用戶 ID> <新密碼>
例如,將用戶 ID 為 1(通常為管理員用戶)的密碼從 oldpassword 修改為 newpassword:
ipmitool -I lanplus -H 192.168.1.100 -U admin -P oldpassword user set password 1 newpassword
5. 傳感器閾值設置
可以使用 IPMITool 設置傳感器的閾值,當傳感器的值超過或低于閾值時,系統會觸發相應的告警。以下是設置 CPU 溫度傳感器高閾值的示例:
ipmitool -I lanplus -H <IP 地址> -U <用戶名> -P <密碼> sensor thresh <傳感器名稱> upper <高閾值>
例如,將 CPU 溫度傳感器的高閾值設置為 85 攝氏度:
ipmitool -I lanplus -H 192.168.1.100 -U admin -P password sensor thresh "CPU Temp" upper 85
6. 遠程固件升級
部分支持 IPMI 的服務器可以通過 IPMITool 進行遠程固件升級。固件升級通常需要先下載最新的固件文件,然后使用 IPMITool 上傳并執行升級操作。不同服務器的固件升級命令可能有所不同,一般需要參考服務器的用戶手冊。以下是一個簡單的示例:
ipmitool -I lanplus -H <IP 地址> -U <用戶名> -P <密碼> raw <升級命令> <固件文件路徑>
五、常見問題及解決方法
1. 連接失敗
- 原因:可能是 IP 地址、用戶名或密碼錯誤,或者目標服務器的 IPMI 接口未開啟。
- 解決方法:檢查 IP 地址、用戶名和密碼是否正確,確保目標服務器的 IPMI 接口已開啟。可以通過服務器的 BIOS 或 BMC 管理界面進行檢查和設置。
2. 命令執行無響應
- 原因:可能是網絡問題或服務器負載過高。
- 解決方法:檢查網絡連接是否正常,嘗試使用
ping命令測試與目標服務器的網絡連通性。如果服務器負載過高,可以等待一段時間后再嘗試執行命令。
3. 權限不足
- 原因:可能是使用的用戶名沒有足夠的權限執行相應的命令。
- 解決方法:使用具有更高權限的用戶名登錄 IPMI 接口,或者在服務器的 BMC 管理界面中為當前用戶分配相應的權限。
4. 用戶創建或權限修改失敗
- 原因:可能是用戶 ID 已被使用,或者權限級別指定錯誤。
- 解決方法:檢查用戶 ID 是否可用,確保權限級別指定正確。可以使用
ipmitool user list命令查看已有的用戶信息。
六、總結
IPMITool 是一個功能強大的工具,通過它可以方便地對支持 IPMI 標準的服務器進行管理和監控。本文詳細介紹了 IPMITool 的安裝、基本使用、高級使用以及常見問題的解決方法。希望通過本文的介紹,你能夠熟練掌握 IPMITool 的使用,提高服務器管理的效率。
本文來自博客園,作者:ZHappy-Blog,轉載請注明原文鏈接:http://www.rzrgm.cn/fqxm/p/18728049

浙公網安備 33010602011771號