3月 062009
 

最近 csup した 7.1-STABLE は powerd の挙動が変わったねぇ。僕は CPU のロードアベレージと速度を MRTG で取得していて毎日見ているのだけど、それで powerd の挙動が一目瞭然;-)。

今までとどう変わったか?と、言われれば、多分 C7i や PhenomII など Core 毎に速度が変えられるようになったのに対応したのでしょうなぁ。

MRTG のグラフを見ていたら、今までは

CPU クロック抑えつつロードアベレージがちょっと高め

だったのだけど、最近の STABLE では

CPU クロック高めでロードアベレージはちょっと抑え気味

って感じかな。まぁ、どっちでも構わないのだけど、CPU クロックを低くしていれば消費電力が抑えられるわけでして。地球環境を考えたら、僕的には今までのほうが良いなぁ。と思ってしまうわけです。サーバであっても CPU ロードアベレージが低ければクロックも低くなっていて欲しい。裏を返すと、多少ロードアベレージが高くても CPU クロックは低くても良い。みたいな感じかしら。

で、powerd で調整できないものか man みましたよー。で、オプションで CPU クロックの変動を抑制することができる;-)。

現在、AthlonX2 なサーバに設定している powerd のオプションはこんな感じ。

/usr/sbin/powerd -a adaptive -i 80 -p 750

 
Atom N330 なサーバに設定しているオプションはこんな感じ。

/usr/sbin/powerd -a adaptive -i 80 -p 500

 
まず、-a で adaptive を指定して「適切なモード」を設定します。 -i で CPU アイドルのパーセントレベルを指定して、最後に -p でポーリング時間を設定します。

経験上、ポーリング時間を変更すると細かな CPU クロックの調整ができます。大きく変えたい時は -i オプションの値を変更すれば良いかと思われます。

後は二時間位ブン回して、その間に MRTG で情報取得して更にオブションの値を細かく調整すれば良いかと思います。

それにしても、温度とか、この手の値って MRTG で取れると知ると知りたくなるんだけど、知らなくても全然問題無いのよねぇ。その気分的な問題が中々面白いんだけど;-)。

それにしても、CentOS で CPU 速度を落とそうとしても、ややこしいのねぇ。カーネルモジュールをロードしてもエラー吐いてダメだしさ。そー考えると CPU クロックを可変にするのは FreeBSD のほうが圧倒的に楽だね。GENERIC カーネルだと powerd を起動すれば良いだけだし。

そー考えると地球環境を考える人は FreeBSD 使うのかぁ?;-P。

2月 152009
 

ずばりっ。これを購入 。どうしてこれにしたかと言えば、安いのが一番。二番目が PCI スロットがあったから。でもってデアルコア;-)。

余った PC パーツは自宅のサーバが安定しないので交換のために買ったのがごろごろしているのでそれを流用することができるのです。 けど、必要なのはメモリと HDD だけなんだけど・・。

で、HDD は Hitachi HDP725032GLA360 GM3OA52A 320GB のやつ。これは、自宅サーバの Seagate ST3500320AS SD15 500GB をリプレスするために用意しておいた。そー。シーゲートの不良品対策のためにね。でもって HDD の中には既に FreeBSD/amd64 7.1-RELEASE がインストールされているのだけど、これをそのまま付けてブート。

あぁれぇーー。全然問題無くブートしてしまったじゃないのさ・・。と、言うことは AtomN330 は amd64 に対応していると言うことだね。でもって DualCore なんだけど HTT なので FreeBSD からは Core が 四つに見えてしまう。うーん。贅沢だぁ;-)。

ちなみに Windows は全く起動していないので知りません。FreeBSD の HDD は Athlon64 X2 でインストールしたヤツがそのまま動作しました。って感じです。

その後 7.1-STABLE にアップしました。dmesg はこんな感じ

USB 接続のカードリーダを積んでいるのだけど、これらはメティアを入れてなくともデバイス自体を FreeBSD 側で認識してしまう。 BIOS で disable にしても FeeBSD 側で認識してしまう。

後、オンボード NIC が 本当は rl0 で 100Mbps なのだけど、実際には re0 として認識される。これは、オンボード NIC が PCI-e に接続されているからですねー。考えてみると PCI-e 接続な rl0 なんて聞いたことないものねぇ。

なので、Giga NIC を PCI パスの空きスロットに刺したいがためにこのベアボーンキットを購入したのでありました;-)。

後、気づいた点としては CPU の温度が取れないですねぇ。coretemp.ko ダメでした。k8temp.ko も当然ダメでした・・。mbmon もダメでした・・。ふむー。

さてと。Core が四つもあるので使用感ですが、一応、ベンチマークを取ってみました。カーネルを make cleandepend && make depend した後に make を叩くのですが、この時の時間を計測してみました。

Atom N330 : 1600MHz : make -j4
1173.13 real      2342.58 user       158.38 sys
Athlon64 X2 4000+ : 2200MHz : make -j2
584.00 real       657.92 user        50.86 sys

 
CPU 速度がまぁ、だいぶ違うのだけど、それでも Athlon64 X2 の make -j2 のほうが圧倒的に早いよねぇ。まぁ、当然だろうけどさぁ。後、Atom 側は S-ATA が 150。これもちょっとは影響するかな。

と、言うことで Atom な CPU ではもう少し遊ぶ予定。その後は自宅の安定しないサーバのバックアップとして利用する予定。 Atom 側からサーバに対してアクティブ監視とパッシブ監視を行い、応答が無くなったら、サーバの持っていた IP アドレスを alias して Atom のバックアップ機でサービスを継続できるようにする予定。データ自体はもう既に rsync で Atom 側に送っているので、同期もばっちりb(^^)。

んー。会社のミッションクリティカルなサーバみたいだ;-)。

後は、専ら検証機として利用するかなぁ;-)。

11月 122008
 

渋谷に新しくヤマダ電気が出来たのだけど、そこの特売で今はディスコンのバッファロー(FreeBSD 的には MELCO)の WLR-UC-G が 1,480yen で売っていた。

USB 接続の無線 LAN アダプタで、WindowsXP 上では AOSS と言うソフトウェアルータを利用して無線アクセスポイントになれる。と言うヤツ。

Windows 専用のアプリケーションをインストールすると無線アクセスポイントになれるんだけど、これを FreeBSD に接続してフツーに無線 LAN アダプタに利用できないかなぁ。と思い、購入。まぁ、FreeBSD で動かなければ WindowsXP で iPod Touch 用に利用すれば良いかな。とも思ったんだけど。

で、FreeBSD に早速接続してみた。kldload if_* とかした後で。けど、かわいくないなぁ。ugen0 に落ちてしまった。しくしく。

さてと。格闘はここから。まず、WLR-UC-G はどんなチップが乗っているのか? google で探すのだけど、どうも解らない。Linux 方面での実績を調べてみたのだけど、それも無いみたい・・。あらら。結局どんなチップを使っているのか google では解らなかったので、しょーがない。Windows に付属の CD からドライバをインストールして調べてみた。すると、Ralink Technology Corp. と言う所のドライバを利用しているみたい。ふぅ。

ちなみに FreeBSD に接続した時の usbdevs -v はこんな感じ。

port 5 addr 2: high speed, power 300 mA, config 1, WLR-UC-G(0x0119), Buffalo(0x0411), rev 0.01

 
ただ、こいつ、しゃらくさいことにプロダクト ID を二つ持っている。AP モードにした場合は 0x0119、クライアントモードにした場合は 0x0116 となる。これを覚えておいてと。

これ位の情報が手に入ると後は簡単。FreeBSD で Ralink Technology Corp. 用のカーネモジュールが無いか調べてみたら if_rum と言うのがあるじゃーん。と、言うことで最新の 7.1-STABLE のソースコードを持ってきてエントリを追加します。

でもって出来たパッチはこの辺りにおいておきます。

http://www.icmpv6.org/Prog/FreeBSD_patches/MELCO_WLR-UC-G.patch

プロダクト ID を二つ登録したので AP モードでもクライアントモードでもどっちでも 無線 LAN アダプタとして利用可能です。けど、クライアントモードで利用したほうが安心かも;-)。

実際に利用するするためには色々なカーネルモジュールをロードする必要がありまずが、ここでは割愛させていただきます;-)。 僕が試した感じでは ifconfig rum0 up して、ssid 付けて dhcp でアドレスが付きました。後 ifconfig rum0 scan も利用できました。

FreeBSD において AP モードは利用できないけど、ハードウェア自体は利用できるようになりました。めでたしめでたし。と言うことにしましょう;-)。

5月 102007
 

デスクトップと NotePC の FreeBSD は最新の 6.2-STABLE にしていたんだけど、サーバはなかなか最新にする勇気が無かった・・。

そー。sendmail 回りがガガガとバージョンアップしたからねぇ。メールの送受信に問題が発生すると困るのでなかなかその勇気がでなかった(^^;;。

ちなみにうちのサーバは sendmail+procmail で courier-imap を利用していて、更に majordomo が動いているので sendmail は結構真剣に作らなければならないのでした。

majordomo はバーチャルホストで複数のドメインを利用しているので以前に書いた local-host-names を利用しないようにするための sendmail.cf にしなければいけないしねぇ。

と、言うことでちゃんとバックアップして、恐る恐る最新の STABLE にして、ただちに sendmail.cf を作って一応事なきを得た。と言う感じ。

作業中、spam がガンガン届くんだけど、これって、MTA の設定に不備がないかの目安になってある意味役に立つかも;-)。spam が届かなくなったら sendmail.cf の設定が悪いんだって事だからねぇ・・。

ちゅーこってこれで自宅の全ての UNIX ベースの OS は sendmail-8.14.1 になったな;-)。