2016-07-26 [長年日記]
_ [Computer] PRIMERGY iRMCからBIOS設定を変更する
PRIMERGY iRMCにはBIOS設定ファイル(XML形式)を受け付けるインターフェースがあるので、複数台のPRIMERGYのBIOS設定の変更をしたい場合、ひとつひとつのサーバーを再起動して、BIOS設定画面を開いて変更して、設定保存してリセットとかしなくても、変更したい値が書かれたXMLファイルを用意して、HTTP POStでiRMCに送れば変更可能です(設定を有効にするために再起動は必要です)。
今回は例としてハイパースレッディング(Hyper-Threading)の設定を"Enabled"(デフォルト値)から"Disabled"に変更してみたいと思います。例に使ったサーバーはPRIMERGY BX2580 M2ですが、他のモデルでも一緒です。
- XMLファイルに変更内容を記述する。例ではHTを無効にします。
- iRMCに変更データを送信する。例ではcurlコマンドを使っていますが、POSTできれば何でもいいです。
- サーバーを再起動。
$ cat input.xml <?xml version="1.0" encoding="utf-8"?> <config> <sysId>BX2580M2</sysId> <configuration> <token api="BSPBR"></token> <supportedSetting> <id>HyperThreading</id> <name>Hyper-Threading</name> <setupItemID>0x0057</setupItemID> <value>Disabled</value> </supportedSetting> </configuration> </config>
$ curl --basic -u <iRMC username>:<iRMC password> --data @<XML file> http://<iRMC IP address>/biosrestore例)
$ curl --basic -u admin:admin --data @input.xml http://192.168.10.21/biosrestore
簡単ですね。複数の設定を一度に変えたい場合は、<supportedSetting>~</supportedSetting>タグで囲まれた中に変更したい設定名と値を追加するだけです。
2016-07-22 [長年日記]
_ [Computer] PRIMERGY iRMCのSELをCIM経由で取得する
先日の"MMB SELをCIM経由で取得する"エントリに続き、今回はPRIMERGYのiRMC SELをCIM経由で取得してみたいと思います。
今回もLinuxマシンからなので、wbemcliコマンドを使います。
- sblim-wbemcliが入ってるかどうかを確認。入ってなければインストールする。
- iRMCからSELを取得。名前空間は"root/svs"です。
RHEL/CentOS
$ yum install sblim-wbemcliUbuntu
$ apt-get install sblim-wbemcli
$ wbemcli ei 'http://<iRMCユーザー名>:<パスワード>@<iRMC IPアドレス>:5988/root/svs:SVS_iRMCLogEntry' |grep -v "InternalEventLog" |awk -F[=] '{print $15,$13}' |sed 's/\.000000.*,RecordID \"//;s/\",RecordFormat//' |tr '*' ' '例)
$ wbemcli ei 'http://admin:admin@192.168.10.21:5988/root/svs:SVS_iRMCLogEntry' |grep -v "InternalEventLog" |awk -F[=] '{print $15,$13}' |sed 's/\.000000.*,RecordID \"//;s/\",RecordFormat//' |tr '*' ' ' 20160627105203 Information 2e0010 false BMC clock synchronized with system clock 20160627035045 Information 2e0010 false BMC clock synchronized with system clock 20160627034358 Information 2e0010 false BMC clock synchronized with system clock 20160627104257 Information 2e0010 false BMC clock synchronized with system clock 20160627095428 Information d0015 false Reboot by hardware reset 20160627095010 Information 160011 false BIOS change detected ...
お手軽ですね。
2016-07-20 [長年日記]
_ [Computer] BX900のMMB SELをCIM経由で取得する
いつのまにか富士通のブレードサーバーのMMBにWS-MANが搭載されていたみたいなので、CIM経由でMMBのSELを取得してみたいと思います。もちろんCIMにしなくてもWebインターフェースやSSHのメニューからも取得可能ですが、マウスクリックが数回必要だったり、キーボード操作が何回も必要だったりなのでお手軽にログの確認をしたいときに便利(かもしれません)。
今回はLinuxマシンからなので、wbemcliコマンドを使います。Windowsでも同様のことはできると思いますが、それはまたの機会に検証してみたいと思います。
- sblim-wbemcliが入ってるかどうかを確認。入ってなければインストールする。
- MMBからSELを取得(httpsじゃないので'-noverify'はつけてません)。
RHEL/CentOS
$ yum install sblim-wbemcliUbuntu
$ apt-get install sblim-wbemcli
$ wbemcli ei 'http://<MMBユーザー名>:<パスワード>@<MMB IPアドレス>:5988/root/cimv2:Linux_MgmtBladeLog' |awk -F[,\"] '{print sprintf("%04d", $30), $27,$24}'例)
$ wbemcli ei 'http://admin:admin@192.168.10.10:5988/root/cimv2:Linux_MgmtBladeLog' |awk -F[,\"] '{print sprintf("%04d", $30), $27,$24}' 0001 2016-07-19 10:53:03 The IPv4 NTP server 1 is recovered. 0002 2016-07-19 10:22:59 The IPv4 NTP server 2 is recovered. 0003 2016-07-19 10:22:59 The IPv4 NTP server 1 is inaccessible. 0004 2016-07-11 14:21:16 Server Blade-8 was removed. 0005 2016-07-11 14:19:32 Server Blade-8 power off. 0006 2016-07-05 13:47:25 Server Blade-8 power on. ...
CIM経由で他にもいろいろ情報が取れそうなので、もう少し遊んでみようかと思います。
2016-07-14 [長年日記]
_ [Computer] EFI Shell on Fujitsu PRIMERGY servers
最近の富士通のサーバー(Ivy Bridge世代以降かな?)はUEFIモードにしていても、EFIシェルが使えないようになっています。ブートエントリが壊れてEFIパーティションからOS起動したいときとか、EFI用ツールでファームウェアのアップデートがしたいときとかにとっても不便ですね。
というわけでEFIシェルを使う方法です。
- tianocoreからEFIシェルのバイナリをダウンロード(sourceforgeからGitHubに移ったみたい)。
- USBメモリスティックをFAT32でフォーマット。
- \efi\bootフォルダを作成。
- ダウンロードしたバイナリを \efi\boot\bootx64.efi としてコピー。
- USBメモリをサーバーに接続して起動。
これでEFIシェルにアクセスできます。必要ならEFI用ツールとかファームウェアのイメージとかもコピーしてもいいし、物理的にUSBメモリを使いたくないならイメージ化してもよいです。
僕はLSIのstorcliとかIntelのbootutilとかいろいろ入れたものをimgとしてHDDイメージにして、iRMCのリモートメディア機能でマウントして使ってます。便利。
2016-07-12 [長年日記]
_ [Linux] Ubuntu 16.04 on Fujitsu PRIMERGY
PRIMERGY上でUbuntu 16.04の確認しないといけなかったので、数年ぶりにUbuntuを使ってみた。ついでにServerView Agents 7.20.28とServerView RAID Manager 6.4.3をUbuntu向けにポーティングしてdebパッケージ化。14.04でも使いたかったので、起動スクリプトはsystemdにせずSys V init形式にしてあります。
注: 私は開発元ではないのでパッケージの配布はできません。Ubuntu向けのServerViewパッケージ欲しい人は富士通サポートに聞いてみてください。野良ではなく、ちゃんとしたのがもらえるかもしれません。(そもそも需要あるのかな?)
- ServerView Agentsのstatusコマンド(srvmagt status)はこんな感じ。
# srvmagt status
Installation script for ServerView Agents Linux v7.20-28
(c) Fujitsu Technology Solutions 2016
Getting status of ServerView Agents Linux ...
Server model: PRIMERGY BX2580 M2
Hostname: bx2580m2-1 (192.168.64.148)
Operating system: Ubuntu 16.04 LTS [UBUNTU1604]
Linux kernel: 4.4.0-28-generic on x86_64, SELinux unknown, EDAC enabled, target system
ServerView eecd: serverview-eecd 7.20-28
ServerView SNMP subagents: serverview-agents 7.20-28
System Monitor Web UI: serverview-ssmwebui 7.20-28
ServerView Remote Connector: serverview-connectorservice 2.10.03-01
ServerView Raid: serverview-raid-manager 6.4-3
SNMP service: snmpd 5.7.3+dfsg-1ubuntu4
ServerView module smbus: exists, loaded, /dev/pci/smbus exists
Native IPMI modules: requested, loaded, /dev/ipmi0 exists
SNMP daemon (snmpd): running (1629), UDP #161 OK, AgentX socket OK SNMP communication OK
RAID daemon (amDaemon): running (1646), TCP 3173 OK
ServerView eecd daemon: running (40798), /dev/eecd[as] OK
SVRemoteConnector: running (17877), TCP 3172 OK
ServerView scagt: running (42222), status OK (1)
ServerView sc2agt: running (42234), status OK (1)
ServerView busagt: running (42246), status OK (1)
ServerView hdagt: running (42256), status OK (1)
ServerView unixagt: running (42266), status OK (1)
ServerView etheragt: running (42276), status OK (1)
ServerView biosagt: running (42286), status OK (1)
ServerView securagt: running (42298), status OK (1)
ServerView statusagt: running (42308), status OK (1)
ServerView invagt: running (42318), status OK (1)
ServerView thragt: running (42329), status OK (1)
ServerView vvagt: running (42340), status OK (1)
ServerView hpsimagt: running (42350), status OK (1)
ServerView vmeagt: running (42394), status OK (1)
ServerView svupdateagt: running (42360), status OK (1)
ServerView osagt: running (42370), status OK (1)
ServerView vmesnmpagt: running (42417), status OK (1)
Getting status completed with result 0 (OK status).
# amCLI -l
21/3: System, 'bx2580m2-1'
39/1: Software adapter, 'Linux Multiple Devices (0)'
39/2: Disk, 'INNODISK SATADOM-MH 3ME (sda 8:0)', 122104MB
39/3: Disk, 'SAMSUNG MZ8KM240 (sdb 8:16)', 228936MB
21/0: Multiplexer, 'ServerView RAID Manager'
21/4: Scheduler
21/10: Task, 'Write snapshot'
21/5: E-mail log
21/1: File log
21/2: System log
39/0: Plugin, 'LMD-Plugin'
40/0: Plugin, 'LSIStoreLibCIM-Plugin'
# amCLI -l 21/3
21/3: System, 'bx2580m2-1'
Parents: -
Children: 2
Properties:
Name: bx2580m2-1
Vendor: Canonical Ltd.
Operating system: Ubuntu 16.04 LTS
Version: 16.04
Processor architecture: x86-64
IP address: 192.168.64.148
Fully qualified domain name: bx2580m2-1.example.com
Admin group: adm, settable
User group: raid-usr, settable
CAS: Disabled, settable
LDAP: Disabled, settable
# amCLI -l 21/0
21/0: Multiplexer, 'ServerView RAID Manager'
Parents: 1
Children: 6
Properties:
Name: ServerView RAID Manager
Version: 6.4.3
Backup file: RAIDConfiguration.xml, settable
Status: Operational
Status overall: OK
Status adapters: OK
Status logical drives: OK
Status disks: OK
Poll interval: 3 s [2..255,1], settable
Sense log delay: 1 min [0..10,1], settable
ServerView RAID ManagerのWeb GUIもServerView AgentsのSystem Monitor Web GUIも一応動きます。ただSystem MonitorのSoftware UpdateはASPパッケージがUbuntu対応じゃないのでできません。