[文件] 透過 ipmi 遠端電源管理

看板FreeBSD作者 (敬請期待 :P)時間19年前 (2006/05/04 14:06), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/4 (看更多)
FreeBSD 7.0 current 從 2006/02/12 之後開始加入對 ipmi 的支援, 後來也 backport 進 ports 了 (/usr/ports/sysutils/ipmi-kmod) 於是就可以直接在該台電腦上透過 ipmitool 將環境設定好,當哪天 有需要的時候就可以透過網路遠端將機器重新開機。 * 首先如果您是用 FreeBSD 6.x (我不確定再前面的版本行不行) 請先 安裝 /usr/ports/sysutils/ipmi-kmod,並進行 symlink: # cd /usr/ports/sysutils/ipmi-kmod # make install # ln -s /usr/local/include/sys/ipmi.h /usr/include/sys/ipmi.h # kldload ipmi 一般來說,只有在需透過 ipmitool 直接和本地的 BMC 溝通之時 ( 例如說設定 ip 以及密碼等等) 會需要用到這個 kernel module , 而這基本上只要設定一次,所以不需要設定在開機的時候自動把這個 module 載進來。 * 接著安裝 ipmitool # cd /usr/ports/sysutils/ipmitool; make install * 可以測試一下到目前為止 ipmi 的溝通上是不是正確的 # ipmitool -I open chassis status * 透過 ipmitool 來攔截網路訊號,首先你要找到你網路的 channel id, 可以透過 ipmitool -I open lan print X (其中 X 從 1 開始往上加) 找到後,透過下列方式將 _相同_ 的 ip 以及 netmask, gateway 設上去 # ipmitool -I open lan set X ipaddr 該網卡的IP # ipmitool -I open lan set X netmask 該網卡的netmask # ipmitool -I open lan set X defgw ipaddr 該網卡的DefaultGateway # ipmitool -I open lan set X access on * 設定密碼,基本上建議最好一定要設密碼 (要不然別人就幫你重新開機? :p) # ipmitool -I open lan set X password 你的密碼 * 然後把所有的權限都設成密碼驗證 (這個有點賊, ipmi 提供複雜的驗證機 制,有興趣的自己去查 :p) # ipmitool -I open lan set X auth CALLBACK PASSWORD # ipmitool -I open lan set X auth USER PASSWORD # ipmitool -I open lan set X auth OPERATOR PASSWORD # ipmitool -I open lan set X auth ADMIN PASSWORD * 開啟 default user access # ipmitool -I open lan set X user * 接下來進行測試,有一個要注意的地方是因為 ipmi 的做法是去攔截網路 封包,所以並不能透過 127.0.0.1等等 loopback 的方式來運作 (因為該 資料不會經過網路卡) 您會需要額外的一台電腦來測試。 # ipmitool -A PASSWORD -I lan -H 該機器的ip -P 密碼 chassis status 如果正常的話,上面的動作將和直接在該機器上下 # ipmitool -I open chassis status 的結果相同。 * 通常最常用到的應該是 power status 傳回 on 或是 off 表示現在有否開機 power on 開機 power off 關機,等於直接斷電,不會讓 os 正常結束 power reset 如同按下 reset按鈕。 這樣子就算是整個系統跨了,也可以透過網路遠端進行重新開機,而不需要跑 console :) * 更多的資訊請參考 ipmitool(1), 另外特別感謝 http://buttersideup.com/docs/howto/IPMI_on_Debian.html -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.90.74
文章代碼(AID): #14MPdCQ8 (FreeBSD)
文章代碼(AID): #14MPdCQ8 (FreeBSD)