アーカイブ

‘Linux’ カテゴリーのアーカイブ

Core i3-2100T + SSD + Scientific Linux6サーバに変更

このブログなどを管理しているサーバのハードウェアを更新しました。

更新理由は2つ
1)熱い:部屋の中で24時間稼働なのですが、何せ旧サーバーは電力食い虫で、電気代的にも節電的にも部屋の温度上昇面でも問題がありました。
2)うるさい:旧サーバーのストレージがHDDでしたので、24時間カラカラ言っていました。おかげさまで結構なアクセス数がある関係で部屋に居るとき常時カラカラ。この音をなくしたいなと。

そこで新サーバー構成は以下の通り。

CPU: Intel Core i3-2100T (Sandybridge)
M/B : GIGABYTE GA-H67MA-SUB3-B3 (rev.1.0) : H67チップセット
Mem : CORSAIR CMX8GX3M2A1600C9 : PC3-12800(DDR3-1600MHz) 4G x2枚セットを1枚だけ使用。1枚は不使用。
SSD (Main): Intel SSDSC2MH120A2K5 : 510シリーズ 6Gb/s MLC 120GB 2.5インチ @ EXT4 (discard)
SSD (Sub) : Intel SSDSA2MH080G2K5 : X-25M G2 3Gb/s MLC 80GB 2.5インチ @ EXT4 (discard)
DVD/CDドライブ:なし。USBドライブをインストール時のみ利用
CPUクーラー:XIGMATEK GAIA SD1283 : ファンは、Scythe 鎌FLOW2 12cm SP1225FDB12Lに換装。
ケース(超格安ケース・・・):GIGABYTE GZ-X1SPD-100
ケースファン:フロント、リア共に、Scythe 鎌FLOW2 12cm SP1225FDB12L
電源:Huntkey 絢風(AYAKAZE300) : 300W 80Plus GOLD
NIC : Intel PRO/1000 PT Server Adapter (EXPI9400PT)
OS : SL6 = Scientific Linux6 (RHEL6クローン) : 現状カーネル 2.6.32-71.29.1.el6.x86_64

消費電力測定(CPU, PCH, MEMあたり約0.1V程度電圧を下げるようにBIOSで設定。あまりちゃんと追い込んでいない)
1)SL6(Run mode3 : CUI))ログイン+アイドル時:28W (httpd,mysqld, qmail, 最低限必要なデーモン)
2)While(1)ループ1個:34W
3)While(1)ループ2個(Core i3-2100Tは2コアであるため2つループを回せばCPUは100%テンぱる):38W

というわけでアイドルは20W前後かなと予想しておりましたが意外と高かったです・・・。

雑感は、
・CPU/ケースファンは800rpmの物ですし、SSDになりましたので音はほぼ無音になりました。相当耳を近づけないとわかりませんので相当快適です。
・SandyBridgeはやはり良いチップセットですね。30W弱なので少し高めではありますが、もう少しCPUの電圧下げるなり(サーバとしての安定度とのトレードオフ)工夫してみようかなと。
・最大でも38W(電源ロス込み)なわけですから、もう少し低容量高効率の電源が出てくれば良いのですが・・。
・目につかないところに置くので格安のケースを用いましたが、やはり雑な作りでした。一方でHDDもないので多少雑なケースでも共振することはありませんし、問題ないでしょう。
・SSDを用いますので、WindowsでいうTrim機能を使うためにEXT4ファイルシステムは必須でした。そのためにもCentOS6がいつまで経ってもでない現状ではSL6の選択となりました。SL6で全く問題ありません。fstabにdiscardを指定。ちゃんと機能しているかはわからんのですが・・・。
・SSD mainとsubはsoftware raid0などを組んでいるわけではありません。SSDにraidはなんか違和感があるので。独立してマウントさせており、mainの重要なファイルをsubにsyncさせるバックアップ方式を取りました。その為、mainが故障した際に、前回syncまでの情報が失われる可能性と、復旧までにサーバーはダウンタイムがあることになりますが、個人サーバーですし、そもそもSSDが壊れる気がしませんし、良いのかなと。
・メモリは、4GBx2を買いましたが消費電力を下げる為、そもそもそんなにメモリは必要ない為1枚だけさしてあります。
・オンボードのわけわからんNICは使わずに、ここはちゃんとIntelのサーバー用Gigabit Ether (PCIx1)を使っています。

<SSDに関して>
・hdparmにてデバイス情報を取得しました。
SSD(Main):20110520_ssd510_hdparm : Intel 510 120G
SSD(Sub):20110520_ssdx25mg2_hdparm : Intel X-25M G2 80G

SSD(Main)がSATA3.0対応ですし、Windows下でのベンチマークも優れているはずです。
そこで、ベンチマークを計測してみました。

SSD(Main) 510シリーズ
# hdparm -ft /dev/sda

/dev/sda:
 Timing buffered disk reads:  558 MB in  3.01 seconds = 185.43 MB/sec

SSD(Sub) X-25G2シリーズ
# hdparm -ft /dev/sdb

/dev/sdb:
 Timing buffered disk reads:  798 MB in  3.00 seconds = 265.88 MB/sec

結果としては、SSD(Main)の方が遅い・・・。この点今調査中です。なんでだろう・・。何か情報をお持ちの方は教えて下さい。
* 参考:http://journal.mycom.co.jp/articles/2011/02/28/ssd510/index.html このあたりをみてもウチの510シリーズは遅すぎる・・・。

追記:CPU/Memのパワーまで加味されちゃうみたいですが、Bonnie++で計測したところ、いろいろな点で510シリーズの方が上回っていました。
まぁ、とりあえずこれで使ってみよう。

カテゴリー: Linux, PC タグ:

Lenovo G560eにLinux(Scientific Linux6)を入れて低消費電力GPS+センサーロガーを構築。

2011/06/13追記:このシステムを使って、福島まで放射線を計測に言ってきました→”東京日本橋から福島第一原発周辺まで車で放射線計測をしてきた(その1)”

************ 以下本分 *************

ちょっとした計測実験を予定しています。車にGPSを載せて走った位置のロギング(logging = 保存)+あるセンサーの値をその時間・位置をタグつけて保存する実験です。
ある程度長時間実験が想定されるため、車のシガーライターからDC/ACインバーターを介してACにして、そのACからその実験装置を動かさなければなりません。
そうなると、システム全体の消費電力を極力下げる必要があります。(使用予定のDC/ACインバーターは最大200W, 定格100W)。持っているSony Vaio Type Zは強烈なCPUのため、ノートの癖に最大100W越えという大電力でこれはパス。そこで、低消費電力ノートパソコン+計測システムを構築することにしました。

GPSは、秋月のGPSモジュールを購入。便利な時代になりました。
・GPSモジュール:RS232Cレベルコンバータ内蔵GPSモジュールGT-720F | 3200円
・RS232C – USBコンバータ:GPS用USB変換ケーブル | 1200円

4400円でGPS位置計測が出来てしまうという恐ろしい時代。USB変換ケーブルを通して、Baudrate 9600bpsで接続すれば、NMEAフォーマットで吐き出します。なんて簡単。
上記のGPSセットのUSBコンバータは、内部チップがProlific PL2303なのでLinuxでも認識可能だと判断し、計測PCは、Linuxにすることにしました。

さて、Linuxが動きそうなノートPCで消費電力が少ない物・・。とういうことでIntel Atom搭載のネットブックを探し始めました。
ネットブック向けのAtomも、N550というデュアルコア(TDP 8.5W)がリリースされているのでそれが搭載されているネットブックを物色。
一番安くて35000円位。価格コムで値段の安い順でソートを掛けると、その隣にLenovo G560eというノートPCを発見。

公式サイト:Lenovo エッセンシャルノートパソコン G560e

Thinkpadという名前は付けてもらえなかった格安シリーズのGシリーズ。その中でも最も安いノートPC

CPU : Intel Celeron T3500 2.1GHz (2Core/HTなし)
Mem : 2GB(PC3-8500 DDR2 SDRAM) : 最大8GB, 1スロット空き
HDD : 320GB(5400rpm) @ 2.5inch
DVD : DVDスーパーマルチドライブ
OS : Win7 Home Premium (6t4bit)
Video : GM45 統合4500MHD : 1366×768 px
Wireless 802.11b/g/n
Wired Ethernet : Atheros AR81 : 10BASE-T / 100BASE-T (Gigabitに対応していないのに注意)
内蔵カメラ:30万画素
カードスロット:5 in 1
質量:2.6kg
寸法:376x249x17.3-34.9mm

という仕様で34000円。同価格のAtom N550機よりも圧倒的に魅力でした。
といういわけでノートPCは、このLenovo G560eに決定。即納で次の日到着@NTT-X購入


こんな外装。


うん。安っぽい。がまぁ十分でしょう。ACアダプタも小さい!


なんとテンキー付き。Atom機ネットブックに比べたらかなりデカイです。


Windows7がプリインストールされています。最初で最後の起動なので記念撮影(笑
リカバリー領域(専用パーティション)にこのWin7が入っていて、メディアによるリカバリーDVDなどは付属していません。
付属ソフトにてこのリカバリー領域をDVDブランクメディアに落とせますが、2~3時間掛かりそうだったので面倒なので却下。
というわけでこのPCに付属していたWin7のライセンスはなくなりました・・。


Linuxは、RHEL6 (RedHat Enterprise Linux6)クローンのScientific Linux6(以下SL6)です。今注目のディストリビューションですね。
Centos6がいつまで経っても出ないので、私はこの2ヶ月くらい前からこのSL6に移行しています。使い勝手はCentosと一緒(当たり前か・・・)

・Win7などの最初のパーティションは全て破棄してフォーマット
・Ext4パーティションとswapを切り出してBase + Development Toolインストール(X環境は入れず:消費電力低減の為)
・つまりCUIベースLinuxとして使います。起動プロセスが少なくて極めて快適です。Celeronでも全く問題なし。


消費電力を測って見ました。

・起動中22W (最大ピーク27W)
・ログイン画面待機:17W (ランモード3 : X/GNOMEなど起動なし。CUIベース)
・While(1) :デッドロックプログラムを実行:1個 : 21W
・While(1) : デッドロックプログラムを実行:2個 : 26W *Dual Core CPUなので2つ実行させればCPUが完全テンパっている状態です。
*留意:バッテリー満タンのため、バッテリー充電は止まっています。よって充電中であればもっと上がるでしょう。

なかなか低消費電力でした。

あとは色々な雑感を。

・GPSセットのUSB変換(Prolific PL2303)は、何のドライバも入れずにそのまま認識(デバイスファイル/dev/ttyUSB0に現れる)。
・uucpパッケージに入っているはずのシリアルターミナルソフトcuがなぜかuucpを入れてもインストールされない。その為、cuをソースコードで拾ってきて手動インストールした。# cu -l /dev/ttyUSB0 -s 9600で、GPSは取得可能。なんて簡単。
・今回の計測システムは、cuで取得される全GPSログをまずファイルにそのままダンプ保存。そのファイルに対してtailとgrepを使って最新のGAGGA列を抜き出す。phpのスクリプトでGAGGA列カンマ区切り取得をして、経度・緯度・高度・時間を取得。その数値をSL6内に立ちあげたmysqlサーバにinsert。このPHPスクリプトをcron + sleepを使って約15秒に1回立ちあげてGPSデータをmysqlサーバに保存してゆきます。なんて簡単。phpのコードを書いただけなので、ここまで作業時間約1時間。なんて単純なGPSロギングシステム。自転車で使っているGarminとか使えば良いじゃんとかのツッコミはなしで(Mysqlに入っていないと、もう一つのセンサーとの時間同期処理が後で面倒なので)
・Scientifix Linux6インストーラーは無駄にマウスを使うのですが、付属のトラックパッドマウスはドライバーがなく動きませんでした。USBの普通のマウスをさして対応可能です。もともとCUIインストールなので、インストール終了後は不要ですし。
・デフォルト起動状態では、NIC Atheros AR81は認識しません。moogme開発記録さんのブログ:Atherosのネットワークドライバをインストールなどを参考に(ドライババージョンが上がっているので適時読み替えて)対応。インストールはすんなり行ったけど認識しない。あれれ?と思ったけど、ifcfg-eth0のスクリプトが無かった。適当に書いて/etc/init.d/network restartで認識。Ethernetも問題なし。
・XウィンドウなしのCUIモード(ランモード:3)は不便と思われるかもしれませんが、ALT+F1,F2,F3でターミナルも切り替えられるのでマルチタスクも可能です。データのロギング程度はこれで十分かなと。

というわけで、GPSなどのセンサーを併せて常時約20W程度のロギングシステムが出来ました。なかなか良い感じです。

* /proc/cpuinfoを一応アップしておきました。興味があれば。cpuinfo

追記:こんなの組み込みでやれば10W以下は余裕とツッコミを受けましたが、もちろんそれはその通りですが、まぁ使い勝手や開発のし易さから今回はPC + Linuxベースで。

カテゴリー: Linux, PC タグ: