インターネットサーバの省エネ化
年に一度、ビルの電気点検があり、それに合わせてサーバの入れ替えなどをしています。昔はインターネットサーバを止めても、社内の誰からもクレームがこなかったものですが、今では業務に大きな影響を与えてしまいますので、可能な限り止めずに運用したいところですし、止まったとしても数時間程度に抑えたいところです。
今年のテーマは、「省電力」です。夏に発熱を抑える目的とともに、無停電電源(UPS)での稼働時間を延ばしたいと考えています。昔はUPSで3時間くらいは動き続けたものですが、だんだんサーバが高性能になると共に、数十分しかバッテリーでは動かせなくなってしまっていました。一方、CPUをはじめとしたハードの性能はどんどんUPしているので、実はそんなに立派なサーバ機でなくても、十分当社のインターネットサーバくらいはこなせる時代になっています。ちょうど当社ではアプライアンスもいろいろ開発販売していますので、そのハードを使って省電力化を行うことにしました。
当社の回線遅延シミュレータのミドルグレード:EthdelayExで使っているハードを使うことにしました。ファイアーウォール機とインターネットサーバ機をこれに置き換えようと考えています。大きさがわかるようにiPhoneを載せてありますが、かなりコンパクトで、電源はACアダプターです。ギガビットNICが4個あり、CPUはAtomです。ノートパソコン並みの省電力が期待できます。
実はすでに、このシリーズのハードは、当社の基幹ルーターとしても使い続けていますし、EthdelayEx以外でも、特注のHTTPフィルタなどにも使って大規模な公共ネットワークシステムを支え続けています。
さて、ハードはこれに決まったのですが、OSをどうしようかと悩んでいて、従来はCentOSを使っていたのですが、今回はアプライアンス用OSのベースに使っているDebianを使うことにしました。
このハードは標準ではVGA出力がついていません。一応専用ケーブルをを基板にさせば使えるのですが、普段はVGAなしでメンテナンスをしたいところです。アプライアンスではネットワーク以外ではシリアルコンソールがよく使われますので、これもシリアルコンソールで使えるようにしてみました。インストールはDebianの最新のインストーラーがシリアルコンソールだけだとどうも上手く動かなかったので、VGAを使い、普通にインストールした後に、シリアルコンソール化をしました。
備忘録として、ポイントを書いておきます。
・/etc/inittab
「
T0:23:respawn:/sbin/getty -L ttyS0 115200 vt100
」
init q実行
・/etc/securetty
ttyS0が有効になっているのを確認
・/etc/default/grub
「
GRUB_CMDLINE_LINUX="console=ttyS0,115200n8r 他に必要なオプションも記述"
GRUB_TERMINAL=serial
GRUB_SERIAL_COMMAND="serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1"
」
update-grub2を実行してgrub.cfgを更新
あとは、ファイアーウォール機、インターネットサーバ機それぞれ必要なプログラムをインストールして設定すればOKです。と、書くのは簡単ですが、それなりに大変です。。ようやくファイアーウォール機はほぼ仕上がりました。
GW明けの電気点検までには準備を終わらせなければ・・・
その他、夏の発熱対策として、手元になくて良いホストを地下の倉庫に移動する計画もあります。いつの間にかIT事業部はマシンだらけになっていて、夏は暑かったので、これで少しは快適になればと期待しています。
今どき、クラウドでしょう、と言われそうですが、当社は開発会社ですので、様々な実験を自分たちのインフラでも行っています。製品はまず真っ先に自分たちがユーザとして使って評価する必要があり、そういった試行錯誤をするためにも、手元になければならないものも結構多いのです。もちろん、仕上がった後に、クラウドでの提供が適したものはどんどんクラウド化しています。
昔に比べれば巨大なブラウン管がなくなり、デスクトップPCからノートPCになり、だいぶ発熱は押さえられていると思いますが、サーバ機はまだまだ発熱が多いので、目的に応じてコンパクト化や仮想化を進めているところです。