kenyo's diary


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ですが、他のモデルでも一緒です。

  1. XMLファイルに変更内容を記述する。例ではHTを無効にします。
  2. $ 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>
    
  3. iRMCに変更データを送信する。例ではcurlコマンドを使っていますが、POSTできれば何でもいいです。
  4. $ 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
  5. サーバーを再起動。

簡単ですね。複数の設定を一度に変えたい場合は、<supportedSetting>~</supportedSetting>タグで囲まれた中に変更したい設定名と値を追加するだけです。


2016-07-22 [長年日記]

_ [Computer] PRIMERGY iRMCのSELをCIM経由で取得する

先日の"MMB SELをCIM経由で取得する"エントリに続き、今回はPRIMERGYのiRMC SELをCIM経由で取得してみたいと思います。

今回もLinuxマシンからなので、wbemcliコマンドを使います。

  1. sblim-wbemcliが入ってるかどうかを確認。入ってなければインストールする。

  2. RHEL/CentOS
    $ yum install sblim-wbemcli
    Ubuntu
    $ apt-get install sblim-wbemcli
  3. iRMCからSELを取得。名前空間は"root/svs"です。
  4. $ 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でも同様のことはできると思いますが、それはまたの機会に検証してみたいと思います。

  1. sblim-wbemcliが入ってるかどうかを確認。入ってなければインストールする。

  2. RHEL/CentOS
    $ yum install sblim-wbemcli
    Ubuntu
    $ apt-get install sblim-wbemcli
  3. MMBからSELを取得(httpsじゃないので'-noverify'はつけてません)。
  4. $ 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シェルを使う方法です。

  1. tianocoreからEFIシェルのバイナリをダウンロード(sourceforgeからGitHubに移ったみたい)。
  2. USBメモリスティックをFAT32でフォーマット。
  3. \efi\bootフォルダを作成。
  4. ダウンロードしたバイナリを \efi\boot\bootx64.efi としてコピー。
  5. 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).
  • ServerView RAID Managerはこんな感じ
  • # 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対応じゃないのでできません。


過去の日記