月別アーカイブ: 4月 2014

ホームサーバを思案中

 最近、自宅の管理サーバであるBeagleBoneのロードアベレージが常時2くらい有る。 あれ自体は1コアなんで、常時オーバーロードという感じ。
 原因はわかっていて、Muninの監視が重い。 自宅にはSNMP対応のルータ3台、スイッチ2台が常時稼働していて、これらをBBBで監視しているから重いんだ。
 まぁ、本来のBBBの目的は環境監視であって、SNMP監視なんかはついでに追加したものなので、この辺の機能を別機材に移そうかと思う。
 目についたのは古いATOM端末でCPUはZ520。 試しにCentOS x86 6.5を入れてUnixBench計測・・・ドライストーンのインデックスが350程度で、BBBと大差ない。 それでいて消費電力9Wなんて、使う気起きないわ・・・

 結局、1台新しいマシンを組むことにした。
 条件的には、AMDの低電力APUかAtomになるんだけど、最近のベンチを見るとCeleronJ1900が良さそうだ。
 CeleronJ1900はAtom系列BayTrailのコアを採用したデスクトップ向けCPUで、2GHz/4コアでTDP10W、x64対応、Celeronブランドのため拡張機能に殆ど対応せず、VT-xとQSV対応ぐらい?
 しかし、パワーはかなり高く、マルチスレッド性能はCore2Duo E6700より上(あっちは2コア、こっちは4コアだから、コアのクロックあたり性能は0.8倍くらい)で、ホームサーバ用途ならかなり期待出来る。 っていうか、これでVT-d対応してくれていればXenとかで仮想化して、メディアセンタとサーバを同居させることも出来るのだが・・・
 この場合は、Windows8.1U1入れてメディアセンタにしてVMwareでサーバを同居させるしか無いか。
 ボードとしてはギガバイトの製品がデュアルLAN、シリアルポート2本と、鯖遊びようには良い感じ。
 メモリはDDR3L SODIMM対応だがLは手持ちに無いので、DDR3-2GBx2にminiPCIe SSDを乗っけてWindows8.1U1入れてVMwareに50GB位割り当ててMunin用サーバ化しようかな。 これなら、常時10W位の電力で動くだろうし、デュアルLANならvyattaでGbEルータ化したりも出来て後々使い回しが効くからな。

(31)


カテゴリー: LAMP[Linux, Apache, MySQL, PHP] | コメントをどうぞ

10Gb環境を構築中

 最近はノートPCなんかにもGbE(1000Base-T)のLAN環境がありますが、最近の記憶デバイスの高速化で案外足を引っ張ります。
 以前はSATA HDDなんかだと100MB/s位だったので、GbEでちょうど良いバランスだったのですが、最近のSSDでは500MB/s超もざらだし、我が家だとSATA HDD x 8のRAID5/6なんかは600MB/s位出るのでLAN経由でコピーしたりするとなかなかアンバランスになる。
 400MB/s位までならGbEを4本束ねることで対応することも出来るけど、オンボードのNICは2本が相場だからDualかQuadのNICを挿さないとダメだし配線も増える。 結果的に、10Gbのホスト間接続を用意するのが良さそうだ。

 いつものサーバ屋で未検証のInfiniBandアダプタ(SDR)が安売りしていたため、これを2本購入して来た。
 InfiniBandはHPCのインターコネクトで使われる高速インタフェイスで、今回のボードはSFF8470(CX4)端子がデュアル搭載の物なので、当初はストレージサーバ2台間を直結しておいて、InfiniBandファブリックの環境が出来たら残りの1ポートをファブリックに繋いでやりたいところ。
 しかし、銅ケーブルは上限が10m台の上に太くて硬いので家の中で使うにも配線困難となるため、実質、ラック内のサーバ間コネクトとしてファイルサーバとバックアップサーバを常設接続して、ドライブバックアップ用の端末をオンデマンド起動してバックアップサーバとコネクトする程度になるだろう。

 ケーブル自体はSASのSFF8470ケーブルがコンパチなので、以前のテープライブラリ接続に使っていた3ftケーブルで接続実施。
 Windows2012R2サーバに挿すとそのまま認識したので、後はOpenSMを導入してやるとLANのプロパティが8.0Gbps表示になった(InfiniBandはワイヤーの帯域に対して実データが10:8の為)
 IPをバインド(IPoIB)してファイル転送してみるとSSD=SSDのファイルコピーがLAN経由なのに470MB/sとか出て、SATA直結と大差ない高速性を発揮。 この辺は、さすがハイエンド向けのインタフェイスだけ有る。

 現在はInfiniBandもより高速な40Gとかに主戦場が移っているので、10Gは型落ちとして市場に出始めているので、2PC間で高速データ転送を実現したいなら、この辺の中古機材を乗せるのもアリな選択だろう。
 一般的なLANメディアのツイストペアケーブル利用の10GbE規格である10GBase-T対応NICは最近では4万円あたりまで降りてきているのと、対応スイッチも10万円台にいるので、もう少しボリュームが膨らめば新品で構築も出来るようになるだろうが、現状では少ない台数ならCX4直結が一番安い方法だろう。

※表記が10Gbと10GbEに揺れているのは、GbEのEはEthernetだが、InfiniBandはEthernetと同じレイヤーの規格なので10GbIB(2.5Gb 4レーンIB)となる為

(57)


カテゴリー: LAMP[Linux, Apache, MySQL, PHP] | コメントをどうぞ

IX3010をメインルータにしてみた

 先日設定したIX2025がなかなか良かったんだけど、所詮FEルータであって、最新の高速光アクセスで使うにはやや残念感もある。
 そんな中で、今回、同じIXシリーズのIX3010を友人から譲って貰った。 IX3010自体はFEなんだけど、拡張スロットにGbEユニットが装着されていた。
 GbEユニット自体はSFPとかじゃなく、Intelコントローラが乗った独立モジュールで専用品らしい。

 実用化出来るか、GbE2本をアップした状態で電力測定、約18Wで動作した。
 この消費電力ならFortigateを停止してしまえば置けないことも無いだろうと言うことで、色々設定と改造。
 改造点はコントローラの冷却強化とファンの静音化。
 CPUはMPC8280の450MHzでヒートシンク無し設計で実際それほどの熱はないのだが、今回、ファンの静音化にあたり38x38x20のアルミヒートシンクを取り付けた。 また、GbEコントローラは発熱がかなりあり、これはデフォルトでも冷却強化した方がよさそうな状態、同じヒートシンクを取り付けるとヒートシンクも60度弱程度まで上昇していて、発熱のヤバさを感じるため、追加で30mmの小型ファンをサイドフローで取り付け実施。
 サイドにある1機のファンはかなり耳障りな音量で、これを解決しないと寝室設置はきつそう。 見ると定格5Vになっていたので、12V仕様の40mmファンを繋ぐとゆるゆる回ったためこれに交換。 後は電源ユニットにファンがあるが、これは後部設置だし音もそれほどでも無いのでそのままとした。 しかし、ファンの回転数検知でALARMのLEDが点灯してしまいイヤなので、AVRマイコンでPWM出力して正常回転のフリをさせた。

 そんなわけで、寝室運用可能な状態に持ち込んだIX3010を早速設定開始。 シリアルポートの電圧がイマイチで、普段のUSB変換ケーブルでは通信出来ず、古いThinkPadX30を引っ張り出してウルトラベースのシリアルポートから全結線ストレートで接続(RTS/CTSの結線が必要なので全結線じゃないとダメだった)
 インターフェイスはFE0/0-1,GE1/0-1の状態で認識、しかしこいつのGbE側はケーブルの相性がうるさいようで、GS724Tと接続すると、安売りCAT5eではイマイチ1Gリンクが安定せず、有名メーカーCAT7で接続して安定した。
 GE1/0を外用VLAN、GE1/1を内部用デフォルトVLANに接続してPPPoEでInterlinkへ接続させる。 スピードテストサイトで測定すると、Down193/Up98Mbpsの結果となった。 我が家はNTT東のハイスピードなので定格200/100なので、ほぼほぼMaxのスピードが出るようになった感じだ。
 東でもビジネス用フレッツで1Gbが始まったがまだ4万以上するし、その値段差ならBBIXのv4 over v6サービスを使った方がトクだ。 IXシリーズならv4 over v6は問題なく処理出来るし。
 と言うわけで、通常のアクセス用としては十分高速なルータが導入出来た感じだ。 ファームがやや古くL2TPに対応出来ないため、リモートアクセスの受け入れには使えないがIPSecは相変わらず高速なので、こちらをメインのゲートウェイにして、リモートアクセス受け入れにIX2025を利用すれば良いだろう。
 例によってVRRPのメンバー化したため、設定いじり放題、ダウンしてもすぐにIX2025が立ち上がってくるので良い感じだ。

 IX3010用GbEモジュール2GE-Tの発熱について・・・
 乗っているのはインテルのサーバ用デュアルポートコントローラの82546GB
 データシートによると、環境55度まで動作可能で接続部の最大温度は125度、最大発熱量は1.2Wに達する。
 今回搭載したヒートシンクは8K/W程度なので、周囲温度に対して1.2Wで約10度上昇するため、周辺回路の発熱分と筐体内温度40度程度を考慮すると無風で60度弱は妥当なところだろう。
 しかし、MPC8280についてはパッケージが大きい点を考慮しても温度上昇の小ささはさすがのFreeScaleと言う感じを受けるな・・・

(171)


カテゴリー: LAMP[Linux, Apache, MySQL, PHP] | コメントをどうぞ

ネットワーク機材の省エネ化の結果 = 部屋さむっ

 先日ネットワーク機材のリプレースで省エネ化を図ったわけですが、結果、冬でも暖房いらずだった部屋がこの時期でも肌寒くなりました。
 データセンターとかだと機材の発熱量と冷却の計算を専用ソフトでやったりするけど、自宅規模だとだいたいどれくらい変わるんだろうなと計算してみました。
 省エネ化で減った電力平均120W/h、ざっくりで100kcal/hの発熱、部屋は8畳間に物があるので25m3の空気容量としてみると空気の比熱容量が0.288kcal/m3だから7.2kcalで1度上昇、13.8度上昇する位の熱量が減ったわけで、そりゃ寒いわ!
 ホームモニターの温度監視を見ると、従来環境時の平均温度(先週)が37度、新環境での平均温度(今週)が29度でその差8度。 平均外気温が21度だから外気温30度くらいまでは冷房無しでも機材運用可能な感じになるのかな。 窓開けて扇風機を置けば真夏もギリギリいけるかもしれない? 従来だと、外気25度で40度越えして要冷房だったのだから、120Wの省電力化は効果大きいな。

(23)


カテゴリー: LAMP[Linux, Apache, MySQL, PHP] | コメントをどうぞ

IX2025を見直した

 先日、省電力化の為に導入したNEC IX2025ルータだけど、色々いじってみると意外な性能の良さを見つけました。
 このルータなんですが、L2TPを使う場合に性能が非常に良いのです。
 自宅にあるシステムに外からアクセする為に色々リモートアクセスVPNを利用しているのですが、現状、一番使いやすいのはL2TP/IPSecです。 PPTPはNAT越え出来ないので、スマホのテザリングなどで使えないことも多く、FortigateのSSL VPNはクライアント導入の必要もあり、スマホ単体やWindowsマシンでデフォルトで使えるL2TP/IPSecは利用が簡単。
 しかし、リモートアクセスVPNって結構負荷が高く、Fortigateでは最高20Mbps位までいけて、RTX1100では12Mbps位でCPUフルになってしまうのです。 RTXはL2TP併用のIPSecではIPSecアクセラレータが働かないようですね。
 そんな中、IX2025はIPSecアクセラレータが有効に働くようで、L2TP/IPSec 3des-shaでリモートアクセスして40Mbpsの通信を行っている状態でもCPU負荷表示は56%程度。 無通信でも10%位の負荷があることを考えると、回線いっぱいの100Mbpsまでいけるパワーがあるありそうです。
 IX2025の純粋なCPU自体はPPC603e系の300MHzプロセサでそれほど高性能ではないのですが、SX1741アクセラレータの汎用性(もともとPC搭載のアクセラレーションチップでもあるため)とファームの作りが良い為、多量のセッションを張るNAPTゲートウェイやL2TPアクセスポイントとして活躍してくれる感じです。
 ただし、IX2025のL2TPはファームウェア8.10以降対応で、IXシリーズのファームウェアは保守契約がないと入手できない為、中古購入ではL2TP不能なことも多そうですが・・・

(341)


カテゴリー: LAMP[Linux, Apache, MySQL, PHP] | コメントをどうぞ

寝室機材を省エネ化

 自宅の専用部屋にラックを設置しているけど、それ以外に寝室にも機材がいくらかある。
 これから夏に向けて低発熱化(静音・省エネ化)をはかるために機材の入れ替えを実施した。

 まずはスイッチ。
 無線LANアダプタ、TV、レコーダ、メディアセンタ等々が繋がっている寝室の中央スイッチで、今まではCISCOのCATALYST 2970G L2 GbEマネージスイッチだったのをNetgear GS724T L2 GbEマネージスイッチに交換。
 2970Gでは実測消費電力が65W程度だったが、GS724Tでは14ポートアップ状態で17W程度と1/4程度になった。 ファンも超低速タイプ1基になったためほぼ無音化。
 ちなみにバッファローのアンマネージGbEスイッチ8ポートでは全ポートアップ状態で6W程度のため、GS724Tはそれなりに消費電力はあるがマネージである点を考慮するとはかなり低消費電力だ。

 次にルータ。
 従来構成はCISCO1812J/Netscreen208/RTX1100(メインアクセス用・VPN用・バックアップ用)だったものをIX2025/Fortigate60B/RTX1100の3台構成に変更した。
 CISCO1812Jの消費電力27WからIX2025で6Wへ下がってこれも1/4、ファンレスになったが1812J自体は温度制御で元々静かだったので感覚的にあまり違わない。
 Netscreen208の63WからFG60Bの14Wでこれも1/4、ファンレスに切り替わってこれはがくっと静かになった印象。
 RTX1100はそのままなので5W維持。

 合計で160W>42Wとなって-118W、ほぼ1/4化。
ただし、これをUPS(OMRON BN75S)経由すると80Wと2倍近くなるが、この辺は外せない機材だし仕方ない。
 24時間365日稼働なので月間約85kWh省電力化で、我が家の電気契約だと2014年5月期は1kWhあたり33円なのでこれだけで2800円ほどコスト削減出来る事になる。 その他空調代も安くなるので良い感じ。
 従来機材についてはテスト用機材としてストックだな。

(20)


カテゴリー: LAMP[Linux, Apache, MySQL, PHP] | コメントをどうぞ

自宅のルータをVRRP構成にした – RTX1100 + IX2025

 自宅の外部ネット接続環境をVRRP構成にした。
 VRRPはバーチャルルータ構成による冗長化プロトコルで、これを構成するとルータ自体が落ちる、ルータの接続先が落ちる等の通信不調時に速やかにルータを切り替えることが出来る。

VirutalIP:複数のルータが共有するIPで、通常、クライアントのデフォルトゲートウェイにするIP
VRRP ID:VRRPのグループを管理するための1バイトのIDで、通常同じバーチャルIPを持つ機器は同じIDをセットする
Priority:バーチャルIDの中で優先される順位を設定する1バイトの値で、大きい値のルータほど優先される
 各ルータはバーチャルIDに広告して、各ルータのプライオリティを問い合わせ、自分よりプライオリティの高いルータが存在するときにバックアップ動作し、無い場合にマスターとしてバーチャルIPの通信を受け入れる。
 これだけではLAN上からルータのポートに到達出来ないときだけルータが切り替わる。
 ルータから先の上位回線がダウンしたときに切り替わるためには、各ルータがそれを検出してVRRP応答の切り替え処理を行う必要がある。 プライオリティが一番低いルータはこの処理の必要は無い。

 今回の構成はNECのUNIVERGE IX2025をマスタールータ、YAMAHA RTX1100をスレーブルータとして構成を実施してみる。

RTX1100の設定

 バックアップなので降格する必要が無いためこれだけで終わり。
 LAN1インタフェイスのVRRP ID:10として、192.168.0.1のバーチャルIPを持って、プライオリティ100で動作する。
 この設定をした時点で、LAN上で192.168.0.1にアクセスするとRTX1100が応答し、ルーティング処理も動く。

IX2025の設定

 内部ポートであるFE1/0にRTX1100同様、VRRP ID:10、IP:192.168.0.1として、こちらはプライオリティ200で動作する。
 vrrp ip virtual-hostすると、内部からのバーチャルIPへのPINGやProxyDNSに応答するようになる。
 vrrp enableした時点でRTX1100がバックアップに降格して、こちらがマスター動作に切り替わり192.168.0.1として動作する。

 watch-groupはトリガ動作。 今回はvrrp-watchの名前でID10のトリガを作成。
 適当な監視先として、PPPoEインタフェイスにしているFE0/0.1からGoogle public dnsの8.8.8.8への到達性を毎秒確認、3回到達出来なければVRRP ID:10の処理を停止、3回到達出来るようになれば復帰させることとして、ネットワークモニタを有効化した。
 このトリガ動作により、IX2025のWANが8.8.8.8に3秒間到達出来なければVRRP広告への応答をしなくなり、次に大きいプライオリティを持つRTX1100がマスターに昇格して192.168.0.1として動作する。
再び到達出来るようになればVRRP広告に応答して、プライオリティが低いRTX1100はバックアップ動作となり、IX2025がマスター動作を開始する。

 ネットワーク上の広告だけで動作しているので、サーバなどを用意する必要が無く、ルータの追加や削除は適切なVIP/VID/Priorityの設定をルータに行うだけで済む。
 実際、ルータのLANケーブルを抜いたり再起動したりしてもクライアント側は通信継続されるため、VRRPをデフォルト化しておけば障害対応だけで無く、構成変更や機器更新にも便利だ(新しいルータを導入した時にはPriorityを高くして設置すれば勝手に切り替わる)

(388)


カテゴリー: LAMP[Linux, Apache, MySQL, PHP] | コメントをどうぞ