a stray sheep

お仕事周りの雑記帳

HP iLO バージョンやライセンスについて調べてみた

リモート管理のために、HP iLOの調査を少ししているので、その備忘録です。

今回は、新旧サーバがあるけど、サーバによって搭載しているiLOが違うし、その場合どんな対応すればいいんだっけ?ライセンスはどうなってるんだっけ?的なことを簡単にまとめようと思います。

 

まずiLOについてのよくある質問が以下にありました。iLOについてちょっと知りたいかったことがまとまっていたので参考になります。

http://h20564.www2.hpe.com/hpsc/doc/public/display?docId=emr_na-c03911362

 

今日まとめたことはこちら。

  • iLOの種類とサーバ別搭載表
  • iLO2→iLO3、iLO3→iLO4ってできる?
  • iLO4のライセンスはあるけど、iLO2のライセンスは?
  • iLOのマニュアル一覧

 

iLOの種類とサーバ別搭載表

古いサーバのシステム構成図とかを見ていて、iLOじゃなくてLOってのがあります。まぁiLO以前の呼び名なんだろうというのは明白ではありますが、ちゃんとドキュメントで確認しておきたかったので。

iLOの種類

 正式名称:HP Integrated Lights-Out

 バージョン:LO100、iLO、iLO2、iLO3、iLO4

サーバ別搭載表

 かろうじてG8世代なので古いです。

 #新しいものを見つけたらあとで更新

 http://h20564.www2.hpe.com/hpsc/doc/public/display?docLocale=null&docId=emr_na-c03509397#DL

 

 

iLO2→iLO3、iLO3→iLO4ってできる?

新旧いろんなサーバを管理していますが、古いサーバだとLO100やiLO2搭載となっています。最近iLO4を使いたい場面があって、その際にiLO2でも同じことができるのか?できない場合は、アップグレード?取り換え?(ファームでなく、iLOそのもののバージョンを)するのか? を調べてみました。

 

「iLO3とiLO2の違いについて知りたい」

http://h20564.www2.hpe.com/hpsc/doc/public/display?docLocale=null&docId=emr_na-c03099730

 

マネジメントプロセッサーは、サーバーのマザーボードに内蔵されているため、取り換えはできません

iLO2→iLO3について明確に書いてありました。iLO3→iLO4でも同様でしょうね。

 

 

iLOバージョンごとに専用のライセンスがある?

取り換えできないことはわかりましたが、ライセンスは同じものでもよいのか?それともバージョンごとに専用のものがあって、それを買う必要があるのか?

HPE iLO Licensing Guide

http://h20564.www2.hpe.com/hpsc/doc/public/display?docId=c04951959

 

頁8の図1: Figure1 HPE iLO license decision process

サーバ種別(DLラインとか、世代 Gen9とか)によって、使えるライセンスがある、と。

古いのだと、Essentials、Scale-Outは使えなくて、Advancedが必要らしい。

iLO Advanced Support -> All HPE ProLiant Servers that have iLO in them

 

Essentials < Advanced なので、お金がかかるってことです。

http://h50146.www5.hpe.com/products/servers/proliant/essentials/ilo4/mo.html

#評価版でEssentialsを入手しておいたんです(iLO4検証用として)が、古いのに入れて使えるかを試そうと思っていた目論見が外れた。。。評価版Advancedを入手しないと。

 

 

iLOのマニュアル一覧

まとまっていて今後使えそうだったので、貼っておきます。

http://h50146.www5.hpe.com/doc/manual/proliant/option.html#rk

 

以上

HP iLO 接続できない -解決-

2017.2.10 更新 

問題が解決しました。
結論は、
 1.OSのNICとは異なるアドレスを振る。
 2.リモートマシンから接続する。
です。

 

よくよく考えれば当たり前なことでした。

共有ネットワークポートなので、OSと同じアドレスだろうと思って設定していましたが、iLOとOSのNICは異なるものです(MACアドレスが違う)。なので、異なるアドレスを振る必要がありました。

共有ネットワークポートだと2つのアドレスを消費してしまうので、こちらをプライベートにするのが良いですね。リモート管理だから、そう設計するとは思いますが。

あと、OSからiLOに接続することはできないようです。外部からアクセスしたらできました。リモート管理なのでOSに接続できるなら、iLOは要らないですもんね。

 

----

2017.1.29 のエントリ

iLOのアドレスを設定し、ブラウザから接続を試みたがつながらない!

 

現在は、調査中のステータス。

 

以下、試したいことをリストアップ

  • ブラウザのプロキシサーバの設定を解除する。
  • ブラウザの暗号化レベルが128ビットであることを確認する。

 

とりあえず、以上。明日試そう。

プロキシな気がしてる・・・。

→関係なかった。。。

 

HP iLO

iLO等HPサーバ周辺の調べもの

 

iLO

iLOについては、こちらのサイトがとても参考になりました。

 

そして、上記サイトでiLOの評価ライセンスがあるということで調べてみました。

まず、iLOのページ

HPE Integrated Lights Out (iLO) Server Management | HPE™

このページをスクロールしていくと、下のほうに「TRY BEFORE YOU BUY」というリンクがあります。リンク先は”Evaluation Licenses for HP ProLiant Servers”とありました。ビンゴ!!

https://h20392.www2.hpe.com/portal/swdepot/displayProductInfo.do?productNumber=ILO_TRIALS

  • 60日間お試し
  • ユーザ登録もしくは、HPE Passport IDが必要
  • 評価ライセンスには、Advanced Trial License、Advanced for BladeSystem Trial License、Essential Trial License、Scale-Out Trial Licenseがある。試したいものを選べばいいですね。

Essentialライセンスは、以下のサーバがサポートされる。G8以前じゃあダメなのかな?

  • ProLiant G9 100 series and lower
  • MicroServer
  • ProLiant G8 SL, BL and DL 160

 

 

冪等性を損なうサンプルplaybook

サンプル

site.yml

---
- hosts: all
  become: true
  tasks:
    - name: test lineinfile
      lineinfile:
        dest: /tmp/test.conf
        regexp: '^#ServerName '
        line: "ServerName {{ ansible_fqdn }}:80"


test.conf

#ServerName localhost:80

ansible-playbookの実行

1回目

ServerName localhost.localdomain:80
  • regexpにマッチした行を、line行で置き換えた

2回目

ServerName localhost.localdomain:80

ServerName localhost.localdomain:80
  • regexpにマッチする行はない。lineが挿入される。

マニュアルにも "The line to insert/replace into the file" と記載されている。

3回目

ServerName localhost.localdomain:80

ServerName localhost.localdomain:80
ServerName localhost.localdomain:80
  • さらに追加される。


何回も実行すると、同じ結果にならない。= 冪等でない。

そんなサンプルでした。

localhostに対してAnsibleを使ういう

Local Playbooks


ローカルで全体のPlaybookを実行するには、hosts: 行に "hosts: 127.0.0.1"をセットするだけ。そして、それからplaybookを実行する:

$ ansible-playbook playbook.yml --connection=local

代わりに、ローカル接続は、1つのPlaybookのplayで使われる。Playbook内の他のplayはデフォルトのリモート接続タイプを使うけれども、

和訳がめちゃくちゃなのだが、要はこういうこと

---
- hosts: localhost
  connection: local
  tasks:
  // あとは普通にタスクを書く

Cobbler

 OSのクリーンインストールにCobblerというOSSが使えると聞いたので早速、少し調べてみる。

Cobbler - Linux install and update server

Cobbler is a Linux installation server that allows for rapid setup of network installation environments. It glues together and automates many associated Linux tasks so you do not have to hop between many various commands and applications when deploying new systems, and, in some cases, changing existing ones. Cobbler can help with provisioning, managing DNS and DHCP, package updates, power management, configuration management orchestration, and much more.

 Cobblerは、ネットワークインストール環境の高速なセットアップを行うLinux インストールサーバである。

多くの関連するLinuxのタスクをつなげて自動化する。システムのデプロイや変更などで、いろんなコマンドやアプリケーションを横断する必要はない。Cobblerはプロビジョニング、DNS/DHCPの管理、パッケージの更新、電源、設定などなど多くのことができる。

 

How does cobbler help?

自動化の鍵は、スピード、一貫性(consistency)、繰り返し。これらはインフラの管理にとって重要で、それはサーバの構成が数台か数千台かによらない。Cobblerは、ベアメタルのサーバプロビジョニングの自動化も、いろいろなHypervisorへの仮想マシンのデプロイも助けてくれる。

 

 Cobbler Quickstart Guide

Cobblerは、広くさまざまな技術で構成されるので、始めるのには幾分複雑なシステムである。カスタマイズは必要なくインストール後すぐに使える(?)。ただPXEやそれぞれの自動化方法論についての知識はもっておくべきだ。

 このガイドでは、RedHat kickstartプロセスにフォーカスし、ステップはFedoraである。UbuntuSuSEなどは将来に対応予定。あとは、CLIアプリケーションに説明しているが、Cobbler Web UIなるものもある(説明はしてない)。