HPE ProLiant DL20 Gen9 サーバに Centos 6 をインストールしようとしてハマった件

表題の通り、HPE ProLiant DL20 Gen9 サーバに Centos 6(特に明記しないが64bit版)をインストールするのに結構ハマったので、忘れないように記録しておこう。

なお、この記事が書かれたのは、2016年7月上旬であるが、あくまでその時点での情報であることにご注意ください。

このマシンです。
Gen9シリーズのサーバの中でも割とカジュアルなエントリータイプ。

www8.hp.com

Gen9というのは「Generation9」のこと、メジャーバージョンだと思えばいいだろう。

h50146.www5.hp.com

ちなみに、このマシンはHDD2台でRaid1を組んでいる。 そして今回インストールしたいのは、Centos6系 である。 *1

普通に Centos 6.8 をインストールしてみる

最初は何も考えずに、Centos「6.8」 のインストールメディアを入れて、ごく普通にセットアップする方法で試してみる。

案の定、最初のステップで、ハードウェアに必要なドライバが無いと言われ、そこから先に進めない状態となる。 まぁ、最初からすんなり行くとは思っていないのでそんなものか。

さっそくHPEのサポートに聞いてみる。と「Centos はサポート対象外なんで(笑)」と一蹴されてしまった。あれ?公式HPには、動作確認済みと書いてあるけど・・・

http://h50146.www5.hp.com/products/software/oe/linux/mainstream/product/hardware/pl_dl20_gen9/

よく読むと、確かに「正式サポート」対象外とも書いてある!!なんともはや。動作は確認したがサポートはしないということか?もうすこし分かりやすくしてくれ!!

とはいえ、こっちも切羽詰まっているので、いろいろ食い下がって聞いてみたら、しぶしぶ次の情報を教えてくれた。*2

  1. Gen9には「Intelligent Provisioning」という機能があって、Windows Server や RHELSUSE ならその機能からインストールする方法を推奨するが、Centosとなると可能かどうかはわからない。
  2. BIOSの設定で、「Virtual Install Disk」という項目を有効にすると、あらかじめハードウェアにプリ・インストールされているドライバ利用してインスコできるようになるが、これも RHELSUSE は用意されているが、Centosのドライバは無い。もしかすると、RHEL のドライバを流用できるかもしれない。

ということで、とりあえず「Intelligent Provisioning」とやらから試してみることにする。

Intelligent Provisioning で Centos 6.8 をインストールしてみる

不満たらたらの中、早速、Intelligent Provisioning を使って、Centos バージョン「6.8」 のインストールを試みる。。

が、コンフィグの途中で「有効なメディアではありません」というメッセージが表示されて、そこから先に進めない状況になる。

うーーんダメか。

Intelligent Provisioning で RHEL 6.8 をインストールしてみる

やはりCentos はダメか・・ということで、正式サポートされている RHEL をインストールしてみる。RHELのバージョンも「6.8」だ。

さっきと同様に Intelligent Provisioning を使用してインストール開始!するとなんと、Centos同様「有効なメディアではありません」が出て先に進めない状態に陥った。

あれあれ??なんだこれ? RHEL は正式サポートするって言ってたじゃん!!

Intelligent Provisioning で RHEL 6.7 をインストールしてみる

ここで、「6.8」がダメなら「6.7」でどうだ!という野生の感的なものが働く。その根拠は、ハードウェアが製造された時の最新バージョンは(「6.8」ではなく)「6.7」 であったのではないか?ということくらい。

ということで、Intelligent Provisioning で RHEL 6.7 をインストールしてみる・・・と、無事にインストール成功したではないか!!おおっ初めてOSが動くところを見た!

とにかく、最悪 RHEL「6.7」 であればインストールできることがわかった。でも、わざわざRHELで運用するほどちゃんとしたサービスでも無いし、できるだけ金をかけたく無いし・・ということで、できれば Centos をインストールしたい。

Intelligent Provisioning で Centos 6.7 をインストールしてみる

さて、RHEL「6.7」のインストールが成功となれば、Centos「6.7」 でも大丈夫じゃないか?という淡い期待を持ち始める。

ということで、さっそく同様の手順でインストールを試みる。

が、しかし「有効なメディアではありません」という見慣れた画面が表示されてしまった。なんだダメなんだ。期待した私が馬鹿だった。。

Virtual Install Disk を有効にして Centos 6.7 をインストール

もう Centos はダメか・・と半ば諦めかけていたが、最後の気力を振り絞り、「Virtual Install Disk」を有効にして、かつ、Centos「6.7」をインストールする方法を試すことにした。これで無理ならもう RHEL で行くしかない。

BIOS画面で「Virtual Install Disk」を有効に変更 *3 する。 そして、今度は Intelligent Provisioning を使用せずに、インストールメディアから普通に Centosインストーラを起動させるよ。

すると、ハードウェアに必要なドライバの選択画面が表示される。以前はここから進めなくなったのだが、今回はさっき有効にした「Virtual Install Disk」が見えている!さっそくこれを選択して、RHELのドライバを読み込ませてみると見事に認識した。。

なんだか期待が高まる中、通常通りの流れでインストールを進め、そしてついに、Centos「6.7」のインストールを正常に終了させることができた。おおー!!やっと目的のOSが立ち上がった。何かエラーがないか Syslog などでチェック、、Raid や ネットワークなど各種ドライバも正常にインストールできているようだ。

ということで、無事 Centos「6.7」をインストールすることができました。めでたしめでたし。

Centos「6.7」のインストールに成功したときの手順を以下にまとめました。詳細が知りたい方はぜひご覧ください。

ngzm.hateblo.jp

なぜ 6.8 は失敗したのか?

なぜ「6.7」はインストールできて「6.8」は失敗するのか?謎であったが、ここにきて理由がわかった。

それは、、「Virtual Install Disk」を有効にしてハードウェアに必要なドライバの選択画面で、RHELの場合は、「6.1」から「6.7」まではドライバが用意されているが「6.8」のドライバは存在しない、つまり、このハードにプリ・インストールされているドライバは「6.7」までなのである。

なお、RHELの7系については「7.0」と「7.1」が用意されているようだ。

まとめ

HPE ProLiant DL20 Gen9 サーバに Centos 6系をインストールするには、、

  • バージョン「6.8」はドライバが探せないので「6.7」を使用すること。
  • BIOSの設定で「Virtual Install Disk」を有効すること。
  • 「Intelligent Provisioning」は利用せずに、普通にメディアからブートしてインストールすること。

結構手こずったぞ。

ちなみに、HPから分社して、Hewlette Packard Enterprise という会社がサーバ関連を取り扱い、従来のHPは、プリンタとかの商売をするらしい。

*1:本来ならCentos7系 をチョイスすべきであるが、これはシステム条件により今回は対象外なのである。機会があれば別途試してみたい

*2:本当にしぶしぶな感じの対応だったのが全くもって残念。何のためにサポート契約したんだろう。。次はDELLを買うことを心に誓う。

*3:余談だが、この設定項目がどこにあるのか分かりにくく探すのが大変だった

Tokyo Ruby Kaigi 11 に行きました

行ってきました。

regional.rubykaigi.org

実は前日に会社の懇親会がありまして、思いの外飲んでしまったので、完全に二日酔いな状態で午後からの参加となってしまいました。頭ガンガン。

会場は秋葉原コンベンションホールというところで、駅から近いし、すごい立派な会場です。

f:id:ngzm:20160604000040j:plain

私が拝見した講演からいくつかご紹介です。

高速Webサーバの作り方

奥一穂 (@kazuho) さん

午後一のセッション、私にとっては到着後すぐのセッションです。
のっけからレベルの高いトークに圧倒された感じです。なんせHTTP2での通信をいかに高速化するかという内容で、TCPレイヤーから最適化を検討し実装されています。TCP/IPとかソケットとか通信の仕組みを理解できていないとついていけなさそうな内容ですが、さらりと説明されています。すごいぞ 東京Ruby会議!!となりました。

Embed Ruby

須藤功平 (@ktou) さん

組み込みRubyについて、今回は C言語のアプリに Rubyを組み込む話です。組み込み系は詳しく知らない分野なので、へえーっという感じですが、C言語のfork()とRubyのfork()を混ぜるとクラッシュするとか、Groonga では mRubyのGCは使用しないとか、、いろいろ参考になりそうなところがありました。「組み込みは辛いので覚悟が必要」とおっしゃっていた通り、なかなか一筋縄ではいかないのは感じ取ることができました。

Image Recognition and code that shouldn’t exist

Aaron patterson(@tenderlove) サン

これまでに作ったすごいコードの話、まず「すごい」っていう意味を辞書で調べたら「素晴らしい」と「怖い」二つの意味があったので、今回もその2つの話をするという。。

素晴らしいコードは、Magic the gathering カードコレクションが8000枚以上あって、その価値を1枚1枚調べるシステムをRubyで書いた話。カードを写真に撮って、カード種類を認識し、人工知能を使って価値を推測するというもの。カードデータ収集が大変で、サイトから画像や人気度や価値のデータを収集してやっとデータベース作ったら、友達がそのデータは別のサイトからDLできるよと教えられて驚愕したとか、大変面白いお話しでした。

続いては、恐ろしいコードということで、RubyPHP で Phuby というライブラリを作った話。単に、やってみたかったからこのライブラリを作成したそうだが、やってみたら、いろいろな知識を得たのでOKだそうです。

最後に、笑わせたいコードを書いてみたということで、空白のコードが動くという一つのMagicが披露された。

No code is faster than no code

と言ってた。結局タネ明かしはしてくれなかった。どうなってる??

Opt carrot: A pure-ruby NES emulator

遠藤佑介 (@mametter) さん

Optcarrot というファミコンソフトをPCで遊べるエミュレータRubyで開発した話。Rubyは確かに早くないが、どれくらい速くなるのかの限界にチャレンジしたということで、そもそもは、Ruby3で、Rubyを3倍速くするためのベンチマークとして開発を始めたとのことです。

高速化に際して、そもそもNESのCPUとGPUボトルネックを調べた結果、GPUの処理時間がほぼ80%なので、GPUを高速化することが必要であると判明。ということで、CPUとGPUの処理時間を一定割合で分割したり、Catch up method にしたり、GPU で変更があったピクセルだけをレンダリングしたりして、20fpsに到達したとここと。

さらに、とにかく60fps達成を目指して、なんでもありでとにかく高速化をした話で、メソッドを展開してしまうとか、インスタンス変数をローカル変数に展開するとか、ループであらかじめわかっているだけ処理を書くとかを施した結果、ついに60fps達成したそうです。。デモを見たら無茶速くなってました。サプライズ余興も有りで大盛り上がりでした。

高速化に向けた、実に論理的なアプローチですね。すごい人です、職人技を見た気がしました。

その他

こちらから動画が見れるようです。 東京Ruby会議11 配信用 - YouTube

kawasaki.rb #36 に参加しましたよ

2016年5月26日に開催された、第36回 kawasaki.rb に参加したので報告します。

会場はミューザ川崎という川崎駅からすぐのコンサートホールとかもあるビルの12階。実はここ、私が勤務する会社の会議室なのですが、ご縁があって第5回くらい(2年半くらい前?)から会場としてご利用頂いています。

さて、勉強会が始まると、まず最初に自己紹介タイム。そして、始まって早々ですが、いきなりのお茶タイムです。とりあえず、最初にお茶でも飲んで落ち着くのが、kawasaki.rb の恒例となっています。

パーフェクトRuby 読書会

パーフェクトRubyの読書会は、ほぼ 3年で、前回までに「5-2-5 繰り返し処理」というところまで進んでいます。ということで今回は「5-2-6 エンコーディングの扱い」から学習します。

エンコーディングということで、自然と文字コードに関するプログラマあるある話が盛り上がり、結局2ページほど読んだところで読書会はタイムアップとなりました。参加者の皆さん方は、技術的な話題がいろいろ豊富なので、だいたいいつもこんな感じで本の内容をネタに、さらに深く掘り下げて突っ込みを入れるというのを繰り返しながら進んでいます。

ライトニングトーク

今回は、2個のLTがありましたです。

Let’s EncryptのDNS-01を使用して無料のSSL証明書をWebサーバなしで取得する

最初は、@xmisao さんの、DNSサーバでSSL証明書を取得できるよ!というお話しでした。SSL証明書といえば、てっきりWebサーバを用意して取得するもんだと思っていたので、DNSサーバから取得できると知り大変勉強になりました。

発表の記事はこちらです。

Let's EncryptのDNS-01を使用して無料のSSL証明書をWebサーバなしで取得する -- ぺけみさお

データを一箇所に集めることでデータ活用の民主化が進んだ話

続いては、@chezou さんによるセッションです。データを一か所集めたことによりエンジニアでない人々がSQLを覚えるだけでデータ活用ができるようになったという内容でした。

chezou.hatenablog.com

話のなかで、Redshift むちゃ高速ですよ!みたいな話があって、なるほどー!!となって早速試してみたくなったのでした。こういう感じで、経験者による生の話が聞けるのも勉強会のいいところだと思います!

懇親会

懇親会は、会場そばの中華屋さんです。コスパがいいので気に入っています。紹興酒うまかったですね!

関連情報

本家のブログはこちらを参照してください。

あと、togetterのまとめはこちらです。

熊本地震から2週間くらいして、再び熊本に行ったこと

熊本地震から2週間をすぎたころに、再び熊本に行ったので、私の実家や街の様子などを書く。

震災後2週間を過ぎて・・街の様子

再び熊本に到着した。熊本空港から熊本市内に向かう車中から、街の様子を眺めていたが、前回(一週間前)来た時よりも、落ち着いているような印象を受けた。つまり、前回は町全体がワサワサしていおりパニック気味であったが、今回そういう張り詰めた空気は随分少なくなったように見えた。

一方で、いまだに街のいたるところで震災の爪痕が残っている。親戚の家は、半壊で住むことができなくなっていた。

f:id:ngzm:20160508125933j:plain

近所の公園は、地割れで立ち入りが規制されたりしていた。

f:id:ngzm:20160508125934j:plain

自衛隊や県外ナンバーの警察や自治体、電機会社、ガス会社、水道会社などの災害支援車両もまだまだ沢山走っている。この方々の大きな支援もあって、この時期に、新幹線と高速道路が開通し、交通インフラがおおよそ正常化した。素晴らしい。

f:id:ngzm:20160508125935j:plain

道沿いには、あちこちに震災で壊れた家具や、生活で排出されたものがゴミの山として積まれていた。ゴミ処理が追いついていない。この問題は、この後しばらく続きそうだが、実家の地区では、この時期に、自衛隊がやってきて一斉に持って行ってくれたそうだ。こういう話を聞くとなんだかんだで自衛隊がいちばん頼りになると思ってしまう。

f:id:ngzm:20160502000605j:plain

実家の様子

数日前に、震災による建物被害の調査が来たとのこと。実家は外壁の損傷が激しかったので、自治体の調査で、危険を示す「赤紙」が貼られてしまっていた。そんなに壊れていたのか・・と愕然とするものの、構造自体は問題ないとのことなので修理すれば住み続けることが可能だそうだ。

f:id:ngzm:20160508125936j:plain

実家のように家が損傷してしまった場合は、罹災証明の申請、地震保険の申請、家財保険の申請などの手続きを速やかに行う必要がある。なんにしても高額な費用がかかるため、これらの手続きにより少しでも自己負担を軽減しないとやっていけない。なお、これらの申請には、被害状況を示す写真を添付する必要があるため、修繕や清掃を行う前に、必ず被害状況が分かる写真を撮っておくことが重要である。

家の修繕工事には、信頼の置ける業者を探すことが重要だ。悲しいかな、災害に乗じた詐欺や泥棒が実際にいるので、これらの被害に遭わないように十分注意する必要がある。

いずれにせよ、修理が必要なので、震災直後より、修理をしてくれる業者を探していたのであるが、幸い、近所の方よりすぐに対応していただける施工会社をご紹介いただいた。早速、補修の打ち合わせを行う。

さらに、自分たちでできること、例えば、瓦や壁の応急処置したりとか、倒れた家具を直したりとか、散乱した家財の清掃をしたりとかは、自分たちで解決していくことも必要である。慣れない作業で怪我しないように、しっかりとした運動靴や、軍手、マスクなどが必需品となる。やはり、いざという時に備えて普段から準備しておくことが重要だ。

f:id:ngzm:20160502001321j:plain

家財の整理整頓などの作業では、全国から来ていただいたボランティアに来ていただければ大変助かるのであるが、実家の場合は、ボランティアセンタに何度電話しても電話が通じなかった。どうも、ボランティアセンタ自体がオーバーフロー状態であり、うまくさばけていないようである。こういった課題は、私たちシステムエンジニアが解決できるところであると思うので、今回の課題を踏まえて何かできるのではないかと考える。

その他もろもろ

熊本市内は、ひところに比べると随分と落ち着きを取り戻しているように見える一方で、いろんな人と交流する中で、精神的な傷のようなものは、依然として残っているような気がした。余震も以前よりは少なくなったようであるが、時折揺れると本当に恐ろしい、人々の中でトラウマのようになっている。

実家のそばにある江津湖という湖に来てみた。そこにはとても綺麗な水が流れていた。以前と変わらない光景を見ることができて嬉しかった。私たちは、こういった光景を守っていかなければならない。

f:id:ngzm:20160508140557j:plain

熊本地震から一週間後、熊本の実家に行って見てきたことなど(後半)

私のふるさとは熊本市である。そして、本エントリは、熊本地震から一週間後、熊本の実家に行って見てきたことなど(前半) - ngzmのブログ の続きであり、主にライフライや人々の暮らしについて震災発生後から日を追って記録する。

地震発生直後〜3日目の様子(私自身の体験ではなく親戚の体験談をもとに記録)

地震直後は、とにかく身の安全を確保すべし。家の中は、家具が倒れガラスが散乱している。震度4を越える余震が断続的に襲ってくるため、最悪の場合、倒壊の危険がある。このため、近くの学校(避難所)に身を寄せ夜は車の中で過ごした。

翌日は、水や食物が入手困難な状況であることに気づく。避難所では、水や食物の配給が開始されたが、すぐさま長い行列ができ、並んでも全員に行き渡足ることはなかった。じゃんけんでパンをもらえる人を決める時もあった。結局、震災後2日間ほどは、1日にパン一つだけ我慢した。トイレは、避難所のトイレを利用させてもらうが、だんだんと不衛生になるため、水分の摂取を我慢する人もいた。

f:id:ngzm:20160502000608j:plain

交通は、熊本空港が閉鎖、新幹線を始めする鉄道の運休、高速道路の閉鎖、そして一般道もあちこちで通行止めの状態である。コンビニなどの店舗は営業していないので物資を購入することは困難である。

f:id:ngzm:20160501173708j:plain

さらに、この時期は、遠方から物資の宅配便を頼もうとしても、被災地への配達は宅配業者が受け付けてくれない。私は震災翌日にAmazonで水や生活用品を神奈川から実家の熊本に送ったが、結局これらが届いたのは早くて一週間すぎてから、水など食料品が配送されたのは、2週間後であった。つまり、少なくとも震災後1週間は何も調達できない状態が続くのである。

自宅は、家具や家財が散乱している、水も電気もガスも止まったままであるため、帰るにかえれない。

f:id:ngzm:20160502000603j:plain

なお、後々、罹災証明の申請や、地震家財保険の手続きのため、家や家財が損傷した様子を写真に収めておく必要がある。繰り返すが、片付けや補修工事を行う前に、必ず、写真を撮っておくことが重要だ。

4日目〜一週間の様子(この節も私自身の体験ではなく親戚の体験談をもとに記載)

熊本市の実家では、電気が回復した、続いて、水道が出るようになったが水に濁りがあり飲料には適さない、また、計画的な時間断水が発生した。一方でガスの復旧にはもう少し時間がかかるようだ。

親戚宅では震災後3日を避難所で過ごした後、自宅に戻ることにした。これ以上、避難所にいるより我が家の方が良いという判断だった。このように、しばらく避難所に行き、車の中で寝泊りしていた人々も、徐々に自宅での生活に戻っていった。一方、帰宅したくでもできない、この先どれくらい避難所生活が続くのかわからない人々も大勢いた。

f:id:ngzm:20160508125932j:plain

水や食物については、人ころの不足が解消され、被災者全体に行き渡るようになった。また、コンビニが営業を再開し始めるが、24時間営業ではなく、朝7時頃オープンし夕方16時か17時くらいには閉まってしまう。

このころ交通は、熊本空港が一部利用可能となり空路による現地入りが可能に、鉄道は新幹線以外であれば福岡や鹿児島へ行き来できるようになる。一方、高速道路は閉鎖されたままであるため、下の道が渋滞した、また給油可能なガソリンスタンドの付近では、ガソリンを求める人々で長い列が続いた。

自衛隊を始めとする支援部隊が続々と現地入りしたのもこの頃。これは本当にありがたい。

f:id:ngzm:20160502003730j:plain

一週間経った頃の様子

私が実際に現地に行ったのは、ちょうどこの頃である。時折、何の前触れもなく突如として激しい地震が襲ってくる。本当に急に揺れ始めるので身構える暇もない。

このような状況のなか、未だに多くの人々が避難所で生活している。写真は、夜9時頃の近所の小学校の校舎。自宅の損壊などで、帰るに帰れない人々がここにいる。この小学校は体育館が損傷したため、避難所として教室を開放していた。

f:id:ngzm:20160502003727j:plain

実家の方は、電気は復旧、水は随分と綺麗になったが、やはり濁りがあるため、飲料には適さない。ガスはまだ復旧していない。このため震災後一週間ずっと風呂に入れない。ちょうどこの頃、幾つかの温泉施設や銭湯が営業を再開し、被災者向けに無料開放を行う施設もあったが、人々が殺到し予約制となっていた。親戚に聞くと、朝予約して夕方に順番が回ってくると言っていた。

ガスの復旧では、実家の地区では、大阪ガスの人が沢山支援に来ており、連日復旧工事を行っていた。このような多くの支援の結果、地震後10日後にはガスが復旧できた。

f:id:ngzm:20160502003729j:plain

新幹線や高速道路は未だ開通していないため、一般道の渋滞が深刻なものとなっていた。

f:id:ngzm:20160502004157j:plain

一方、熊本のシンボル市電は動き始めた。

f:id:ngzm:20160502003728j:plain

そろそろ洗濯もしないといけない、幸い、近所のコインランドリーが空いていた。

f:id:ngzm:20160502000607j:plain

震災後一週間を過ぎると、コンビニやスーパ、百貨店、弁当店、飲食店などが次々に営業を再開し、水や生活物資が普通に購入できるようになった。久しぶりに実家近所のお気に入りの焼き鳥屋でいつもどおり飲み食いできたのが嬉しかった。

f:id:ngzm:20160502000606j:plain

以前と変わらない店内で焼酎をいただいた。必ず復興できる感じがした。