ただつらつらと日記が書かれていくようです。

カテゴリー: ITめいたこと (24ページ目 (31ページ中))

memcached 1.4.5をCentOS5でRPM作るとコケる件。

久しぶりにmemcachedのサイトを見てみたら、新しい1.4.5がリリースされてたので、RPMを作ってサーバにインストールしようとしたら、rpmbuildでコケた。サーバはx86なマシンで、CentOSの5.3が動いてる感じ。

rpmbuildが異常終了した後、画面に出てる文字列を眺めてみる。

(前略)

t/item_size_max……ok

t/line-lengths…….ok

t/lru…………….ok

t/maxconns………..ok

t/multiversioning….ok

t/noreply…………ok

t/stats-detail…….ok

t/stats…………..ok

t/udp…………….ok

t/unixsocket………ok

t/whitespace………skipped

all skipped: Skipping tests probably because you don’t have git.

Failed Test Stat Wstat Total Fail Failed List of Failed

——————————————————————————-

t/binary.t 255 65280 3361 6212 184.83% 240 243-244 251 255 258-3361

2 tests skipped.

Failed 1/39 test scripts, 97.44% okay. 3109/6475 subtests failed, 51.98% okay.

make: *** [test] エラー 255

エラー: /var/tmp/rpm-tmp.94575 の不正な終了ステータス (%check)

RPM ビルドエラー:

/var/tmp/rpm-tmp.94575 の不正な終了ステータス (%check)

うーむ。さっぱりわからん(汗)

なんとなーく、ビルドの過程は終わっているんだけど、make testが走りきらない感じですかね。

何回やってもラチがあかないので、調べてみたら、この辺とか、この辺に、なんとなく関係がありそうなことが書いてあった。

妄想の域は出ないけれど、memcachedが依存しているモジュールのバージョンの問題なのかも。具体的には、memcachedの1.4.4まではlibeventの1.1でも動作するけれど、1.4.5からlibeventの1.1ではダメで、1.4あたりを必要とするのではないかと。で、CentOS 5.4以前のRPMレポジトリに入っているlibeventは1.1で、CentOS5.5(現時点でリリースされてるのは、RHEL5.5の方だけ)になったらlibeventが1.4あたりにバージョンアップされる…と。結局、memcached1.4.5をビルドしようと思ったら、CentOS5.5のリリースを待って、アップグレードをかけなきゃいけないってことなのかな。あー。

昨日の「クラウドコンピューティングEXPO」の雑感のつづき

昨日、眠い目をこすりながら、書いた内容をぼんやりと反芻しつつ、追記。やっぱり、ASPもどきなアプリケーションベンダーさんのことはさておいて、いわゆるHaaS周辺のことを。

クラウド>レンタルサーバの条件

クラウドの中の1VM(以下、仮想サーバ)と、占有型レンタルサーバ1台(以下、物理サーバ)を比較してみると、結局、root権限付きのサーバが使えるというサービス内容にさしたる違いがあるわけでもなく、どっちでもいいじゃんという印象になる。仮想サーバには、すぐに調達出来て…とか、トラフィックに応じて従量課金で…とか、まぁ、いくつか特徴はあるんだろうが、それとて、いくつかは物理サーバを借りても実現不可能なことではないはずだ。また、余談ではあるが、クラウドEXPOにて、HaaSとして紹介されてた仮想サーバについて話を聞いてみると、お申し込みからX営業日以内には使えるようにしますので…ってレベルだった。それはレンタルサーバ屋で物理サーバを借りるのとリードタイムは変わらなかったりするわけで、AmazonのEC2くらいにシステム管理が自動化されていることが前提の話だろう。まぁ、ぱっと見た感じ、やっぱクラウドだよねぇと思えるようなサービスは見当たらなかったというのが正直な感想だ。

では、レン鯖じゃなくて、クラウドがいいよねぇと思えるのは、どんなサービスだろうか。ここで、あえて仮想サーバと物理サーバという表現を使わなかったのは、結局、既存の物理サーバの枠組みで、束ねられたリソースをそのまま仮想化して仮想サーバを用意したところで、それらの違いというか、クラウドの特長は見出しづらいと思うからだ。逆に言えば、クラウドというのは実態としては、物理サーバのリソースの束であり、それらをユーザに提供する際に、適切な「サービス」に分解して提供することになる。そのサービスの切り方というか、枠組みを工夫しないといけないんじゃないだろうか。そう考えると、物理サーバを束ねて、(また、同じ枠組みで切り直して)仮想サーバをサービスとして切り出すのは、ただ穴を掘ってただ埋める的というか、なんとなく無駄な営みに見えてくるのは私だけだろうか。

…と書いた時点で、リソースの束を物理サーバの枠組みでサービスを切り出すのがアレなわけだから、なんとなくクラウドがいいよねぇと思えるようなサービスのあり方のひとつは、AmazonのS3みたいな、リソースを機能で切り出したサービスなんだろうなぁとぼんやり思う。S3の場合、データの出し入れを実現するストレージとして存在しながらも、容量無制限の感覚で使えるというのは、物理サーバの制約(実際はOSの制約かな)というか、枠組みから自由になれるというメリットをユーザに提供するわけで、これはただレン鯖を並べてストレージとしての容量を確保するだけでは実現できない。

結局、Amazonを賞賛するだけになるのもアレだけど、良質なリソースを調達、保有するだけでは、売れるクラウドなサービスを作れないんだろうなと思う。例えば、「適切なサービスを設計しうるコンセプトやアーキテクチャを設計出来るか」とか「リソースを束ね、かつ、サービスに分解しうるソフトウェアを開発できるか」といった能力が決め手になりそうな気がする。そして、(個人的に、クラウドらしいサービスを提供しているような気がする)Amazonにしろ、Googleにしろ、端的に言えば、クラウドを内製する能力というか、自分達が必要とするものをきちっと自分たちで作り上げられる能力を持っていることと、クラウドらしいサービスを外に提供していることは、無縁ではないのかもしれない。

疎に結合できるということ。

今のHaaSのような、仮想サーバのインスタンスを借りるようなサービスが使い辛いのは、既存のサーバ群との組み合わせがしづらいことだと思った。例えば、自社で保有するサーバ群を使いながら、HaaSを使おうとすると「Webレイヤーは自社で、DBはHaaSで」みたいなアーキテクチャだとやっぱり、WebとDB間のネットワーク的なレイテンシーが気になってしまう。その逆もアレだし、どこかにロードバランサを置いて、自社サーバのクラスタと、クラウドのクラスタに振るってのも強引というか、クラウドじゃなくて、レン鯖のクラスタでコトが足りるんじゃないかと思うし、最終的には移行するかしないかというオオゴトに発展してしまうのではないか。そういう意味では、スタートアップな人たちは、今のHaaSは使い易いんだろうなぁ。

一方、例えば、「データをどれだけ入れても、さくっと出てくる」のに「容量無制限」なストレージサービスだったり、嫌になるほど、膨大だったり、ややこしかったりする計算をぶん投げると、並列化して計算してさくっと返してくれるような計算機サービスがあれば、自社サーバ群が苦手で、クラウドが得意な処理を切り出して、クラウドに処理をぶん投げられて楽なんだけどなぁと妄想してしまうが、クラウドEXPOをうろついてみたけれど、これだってサービスは見当たらなかった気がする。既存のリソースを持ってる人たちが、クラウドのリソースと、割と疎結合でつながれるようなサービスってないなぁとも思った。

東京ビッグサイトでやってる「クラウドコンピューティングEXPO」とやらに行ってきた。

ちょいとクラウド周りの情報収集のために東京ビッグサイトまで出かけてきた。その雑感をメモ。

f:id:y_fudi:20100513011841j:image

「クラウド」って?

まぁー、正直、百花繚乱というか、クラウドに関係がありそうなソリューションが自己申告で展示会に出てきてる印象。従来であれば、ASPという括りだったんじゃないのかと思えるようなアプリケーションベンダー(例えば、グループウェアとか)と、仮想化されたサーバを提供するようなキャリア(ま、ホワイト何とかの人たち)が同じ会場で、「ウチのクラウドが…」と語り始めるのは違和感がある。ITギョーカイとして、「クラウド」って言葉の定義というか、これまでの既存の概念と何が違うのかというあたりがさっぱり整理されていないなぁというか…。

レンタルサーバでいいじゃん。

個人的に、ハードウェアの仮想化に興味があったので、上記のアプリケーションベンダーの皆さんの話は割愛(…けど、雰囲気的には、アプリケーションベンダーの数がやっぱり多かったんだけど)で、いわゆる、HaaSといわれているようなサービスを提供するベンダーに話を聞いてみた。まぁ、なんつーか、XenやVMwareとか、簡単に仮想化できるミドルウェアが増えてきたから、(データセンターの利用効率を上げたい)通信キャリアのみなさんが自社のデータセンターに片っ端からサーバ詰めて、仮想化ミドルをインストールしてみただけなんじゃないのかっていう…、そんな印象。むしろ、安いHaaSだといろんなものがシェアされてるので、リソースの割り当て状況とか、微妙に気になるなぁ。例えば、誰かが24時間ずっと重いバッチが走らせているようなVMを動かしているとして、そのVMと同じ物理サーバには同居したくないなぁとか。

シェアリングすると言ってもね。

そういえば、安いHaaSだと、結構、いろんなものをシェアしてることがわかった。例えば、某HaaSはオプションでロードバランサを提供しているみたいなんだけど、ロードバランサ用にVMのインスタンスを立てて、keepalivedいれて…というものではなくて、ネットワークのどこかに置かれたアプライアンスのロードバランサをシェアするというサービスらしい。クソ高い、アプライアンスなロードバランサを安価で使えるというメリットはあるのかもしれないが、例えば、自分以外のお客さんのトラフィック急増でロードバランサが過負荷に陥っても、まぁ、ベストエフォートですからねぇと、生ぬるい笑みを浮かべるしかないと思うと、ちょっと切ない。

スペック感がよくわからん。

まー、どこでもそうなんですが、HaaSって、スペックに「CPU:1コア」とか「HDD:30GB」とかさらりと書かれている。これがまた結構ややこしい。同じCPUの1コアでも、例えば、CeleronとXeonでは計算能力がわりと違ってたりするだろうし、同じXeonでも古いのと新しいのではスペックが違うしなぁ。ディスクにしても、RAID5で構成されたRAID Arrayの上の30GBと、SSDの30GBではいろいろと違うんじゃないかという…。まぁ、運用していって、もし、能力が足りなくなってきたら、追加インスタンス起動っていうシンプルなルールでスケールアウトしていきゃいいんだろうけど、事前に見積もりして、いわゆるHaaSの方が安そうだって結論は得ておきたい。そうなると、なんかもうちょっと詳細なスペックが提示できないもんだろうか。

で、本当にメリットあるのか。

まぁ、HaaSとかはじめちゃうベンダーさんは、品質のいいデータセンターに、割と高いサーバを並べてるから、この値段なんですと言われると、そうなんだろうけれど、例えば、Webアプリ屋さんがVMをずらーっと並べてスケールアウトしたときに、本当に物理サーバを抱えていくよりメリットが出てくるんだろうかという気がした。例えば、コスト面でのメリット。最近のWeb系アプリをやってる人たちは自作でサーバを作れたりするし、自前でロードバランサもなんとかできちゃったりする。そういう人たちがハードウェアを所有するコストは、意外と安かったりするんじゃないだろうか。そういう人たちがHaaSに移行するメリットって何かあるんだろうか(遠い目)

うーむ、眠くなってきたので、とりあえず、こんな感じで。

クラウド大全 第2版 サービス詳細から基盤技術まで
日経BP社出版局
日経BP出版センター
売り上げランキング: 2026
おすすめ度の平均: 5.0

5 流行に強い日経

久しぶりにPCを作ってみた。~Phenom II x4 945とか使ってみるテスト~

ゴールデンウィークだって言うのに、することも特にないので、PCを新しく作ってみることにした。

それまで使ってたPCは、DELL製のIntel Core2 DuoのE6300を搭載しているマシンなので、Webを見てる分にはパワー不足を感じることはないけれど、FPS系のゲームを動かすと解像度を落としたりするなどの小細工が必要で、なんだかなーという不満を感じていたし、チップセット的に新しいCore2 Duoなどに換装することもできなさげ…ということで新調することになった。

で、とりあえず、今回はQuad Coreにしたいなぁと思いつつも、予算はそこそこ削減したいよね…ということで、CPUはAMDのPhenomIIにすることにした。現行のC2D E6300よりも多少のTDPの上昇は許せるということで「PhenomII X4 945」を選択。まぁ、Intel系のプロセッサでももちろんQuad Coreなプロセッサがあるんだけど、実際はDual CoreにHyper Threadingの組み合わせだったり、本当のQuad CoreなCore i5 750なんかは、「PhenomII X4 945」と比べると、ちょっと高いなぁという印象だった。

AMDのPhenomII X4 945の箱

AMDのPhenomII X4 945

で、マザーボードは、Intel系のプロセッサを選んだときよりも選択肢が少ないので、ささっと決められた。どうせなら新しいチップセットを搭載したのがいいかなぁと思ってみたりしたり、どうせならUSB3.0がオンボードで乗ってたらいいかなぁということで。Asusの「M4A87TD/USB」にしてみた。

M4A87TD/USB

AMDのPhenomII X4 945が乗っかったところ

んで、後は適当にDDR3なメモリーを選んでみた。今回はUMAXのヒートスプレッダ付きのメモリ。

新しいPCに使ったUMAXのメモリ

で、試しにWindows7をインストールして、Windowsエクスペリエンスインデックスを測ってみたら、総合で5.9だった。プロセッサは7.3だし、メモリも7.5。グラフィック系も6.4もあるんだけど、ハードディスクのスコアが5.9。よって、総合で5.9。まぁ、SSDとかにしないと向上しそうにもないので、ま、仕方ない。

まぁ、割と安く作れたし、OKとしますか。

AMD PhenomII X4 945(95W) HDX945WFGMBOX
AMD
売り上げランキング: 29457

ジャストシステムと一太郎と思い出と。

とってもどうでもいいことだけれど、ジャストシステムの一太郎が25周年らしい。近頃は、すっかりWordに押されている感があるが、官公庁や教育関係では未だに使われている…のはともかくとしても、25周年記念ということで、ジャストシステムのサイトで初代の一太郎Ver1.0の起動画面のスクリーンセーバーがダウンロード可能になっている。このニュースを見たときに、ふと、ずっと昔に、一太郎Ver3とか一太郎Ver4をいじくっていたことを思い出した(いや、まぁ、一応、ランドセルを背負っていたんですけどね)

当時、学校にあった、NECのPC-9801で(えーと、当時だと、PC-9801VX2とかPC-9801UV11とかだな…。VXはi80286搭載してるけど、UVはNEC製のV30を搭載してて、なんかちょっとがっかりみたいな。そういえば、PC-9801UVに搭載されてたフロッピードライブはうるさかったぁ…遠い目)MS-DOSのVer3.3とかを起動して、config.sysをいじくってFEPとしてATOK6を読み込んでみたり、LOGOでカメを動かすアプリを書いて悦に入ったりして…。うーむ、懐かしい。今、使ってるPCは、4GBのメモリに320GBのHDDを搭載しているけれど、当時のメインメモリは640KBだったが、そもそもHDDがついてるマシン自体がレアだった。それに、HDDが付いていてもせいぜい40MB(しかも、SASIって、今では絶滅済みの規格だった)だった。それでも、フロッピー換算すると、やたらと広大なディスクだと思っていたし、滅茶苦茶に高速なストレージで驚いた。当時の感覚からすると、隔世の感ありまくりだ。

そういえば、当時は、一太郎だけではなく、p1.exe(えーと、アルガって名前だったかな)とか松とかいろんなワープロソフトがリリースされていて、結構、機能拡張競争だとか行われて…結構、見ててもおもしろかったような気がする。で、それがWindows時代がやってきた途端にばたばたと挫折するベンダーが増えてきてほとんど死に絶えたわけで、最近、ちょっとイマイチな感じのジャストシステムだけど、このWindowsの波で死ななかったのは、それなりに賞賛に値するかもしれないなぁ…と。

…えーと、なんなんだ、このエントリーは(汗)

光ファイバーが切れて、ひかり電話が使えなくなる(涙)

ある日、電話が使えなくなった。

とりあえず、PBXは生きてそうだし、電話機もなんとなく電源が入ってるっぽい。で、ひかり電話なので、PBXの先をあさってみると、ONUとVoIPゲートウェイがいて、とりあえずランプは付いているので、電源は入っているという状況。どちらの機器も一目で壊れている状況ではなく…ということで、困った挙句にNTTの故障担当に電話して、電話越しにONUのランプを確認している時に、どうやら上流の機器と接続していない状況っぽいことが判明した。で、その一方で、ひかり電話のCAがダウンしているという状況もないので、NTTの局舎とオフィスの間の光ファイバー回線になにか障害が起こっていそうということが判明したので、担当者を派遣してもらえることになった。

で。

しばらくしてNTTの担当者がやってきて、ONUの上流にある光ファイバーを調べてもらった。光ファイバーに検査機器みたいなのを接続してみたところ(きっと、光ファイバーに可視光を流す機械だったんだろうな)、以下のような状況になっていた。

光ファイバーから漏れる光 その1

さらに、ズームするとこんな感じ。

光ファイバーから漏れる光 その2

…おっと光ファイバーから光が漏れてる(汗)

というわけで、ビルのMDFで光ファイバーがどうにかなったという状況でも、電線で光ファイバーが…という状況でもなく、結局は、オフィスの2重床の下側で光ファイバーが断線していたという、なんともシビれるオチだった。NTTの人に光ファイバーを局所的に交換してもらったところ、ONUの消えていたランプが点灯して、ほどなくしてひかり電話が復旧。めでたしめでたし。

でも、光ファイバーが折れて光が通らなくなるという状況(しかも、二重床の下側で!)の原因がなんなのかはついぞ判明しなかった。オフィスの配置をいじったときに二重床をいじったけれども、それで光ファイバーに余計な力がかかるというのもなんとなく解せない。

Twitterの解剖学とか

しばらく前のTwitterはしばらくやたらとクジラを表示していたような気がする(…ま、いわゆる503ってヤツですな)が、その裏でTwitterのエンジニアがどうやって、クジラを出さないようにしていったかというエントリーを発見。

ま、答えに至る過程はいろいろとあるんだけど、結局、負荷が高まった時のmemcachedに対するIOのレイテンシーが増えていることに気がついて、無駄なmemcachedへのアクセスをなくすこととその他の対策を講じることによって50%ほどのキャパシティ改善を実現したそうな。へー。

ぱっと見た感じ、無駄なデータの読み込みが原因ってことで、結論としては思ったより凡庸というか、ありがちな話ではあるけれど、ここに至る道筋が大変だったんだろうなと思う。特にTwitter級のデカさになると、データの巨大さ故に全体を把握するのがすさまじく大変だろうなー。まさに、

Unfortunately, we collected a huge amount of data and it was hard to understand.

って書いてある通りだろう(遠い目)。

でも、最近、パッと見た感じで、この辺が怪しいと思われるようなヤヤコシイ部分よりも、シンプルで大したことないと思い込んでいる部分に問題が潜んでいることが多くて困惑するので、なんだか考えさせられた。上記のTwitterの事例でいえば、普通に考えてmemcachedへのアクセスなんて高速に違いないと思うわけで、個人的には、シンプルで大したことない部分に分類してしまう(=ボトルネックなんて考えない)だろうし、関係ない部分をちびちびちいじって、ハマってしまうんだろうな。

…やっぱり、Webアプリは難しいなどと考えてしまう次第。

Subversionが「Apache Subversion」になるとか

Slashdot Japanの「Subversion は Apache Subversion へ」って記事によると、バージョン管理ソフトのSubversionがいつの間にか、Apacheのトッププロジェクトになってたそうだ。なので、Subversionが「Apache Subversion」という名前になるらしく。へぇー。

まぁ、改めて見てみると、apache.orgなんぞ見てみると、WebサーバのApacheを始めとしてすごーく数多いプロジェクト(サブプロジェクトまで数えるとすごいことになりそうだ)を抱えてるわけで、私もいろいろとApacheのプロジェクトの成果物で楽してるクチではあるな。でも、これだけのプロジェクトが全てアクティブだとすると、それはそれで凄まじいことなんだろうけど、実態はどうなんだろうということが気になった。

あー、そういえば、使ってるSubversionのバージョンが古いまま放置されてる件、どうにかしないと(汗)

Vyattaでルータでも構築してみるか。って、まずNIC。

Vyattaというオープンソースなソフトウェアがある(開発はVyatta INC.)このVyattaはDebianベースのソフトで、x86サーバをCiscoのルータと競えるくらいのスペックに変えてしまう、ルータソフトウェア。で、Vyatta INC自体は、サポートが必要なら、サブクリプションを買ってくださいというRedHatに似たビジネスモデルで会社を営んでいる(あと、Vyattaをインストールしたアプライアンスも売ってるみたい)

で、ちょいとこのVyattaを使ってルータでも作ってみるかということでいろいろと企んでいたが、そもそもハードウェアどうするかというところで、適当なマシンを組み立てたけれど、前回の反省から、ちょっとNICには気を使おうと思っていた。

ま、こういうケアが意外と功を奏するものだ(…とはいえ、ややこしいことにはなっている)

まず、安NICを回避しようと思ったら、とりあえず、IntelのNICですよねーということ(発想は単純)で、最初は「Gigabit CT Desktop Adapter」(EXPI9301CT…で、コントローラはIntel 82574L)でも買おうかと思っていたんだけど、これが動作するためには「e1000e」ってドライバが必要…と。

だけど、今回のVyattaのターゲットバージョンは「Vyatta Community Edition 5」にしたけれど、このバージョンのベースになっているDebianのカーネルは2.6.26。で、この2.6.26には「e1000e」が入っていないとのこと。あー。

まぁ、ドライバを導入すりゃいいんだけど、どっちかというとルータにドライバ導入とかやりたくないような…。で、一方、従来のギガビットイーサネット用のe1000ドライバは持っているけれど、既にe1000で動作するIntel製NICが売ってなさげ(汗)ま、サーバ向けNICにあるけど、ちと高い。

というわけで、調べに調べてみた結果、HPのサーバ向けNICが古いコントローラを搭載しているらしいということに気がついた。それは、HPのNC110Tってやつ。しかも、9,000円。Intelのサーバ向けNICより、少し安い。これに使われているコントローラが「82572GI」って代物で、「Intel PRO/1000 PT Server Adapter」あたりに搭載されているコントローラ。このサーバ向けのPRO/1000PTは、Vyattaもサポートしているっぽいので、まぁ、なんとかなるだろうということで(汗)

HPのNC110T

新しく構築したマシンに挿してVyattaを起動してみたけれど、なんとなくうまく認識してるっぽい。後ほど、ちょっと使ってみる予定。

アプライアンスが仮想化される日

@ITで、こんな記事を見つけた。「米F5ネットワークス、2月中にBIG-IPのソフトウェア版を発表へ

最近、ハードウェアベンダーもソフトウェアベンダーも「クラウド」一辺倒になっていて、これはこれでおもしろいなぁと思って眺めていたけれど、一方で、ファイヤーウォールとかロードバランサのようなアプライアンス系のベンダーがどうするのかなと思って眺めていた。

…というのも、仮想化されたクラウドの世界には、彼らのケバケバしい色(…そんなイメージだけど、偏見だろうか…)のアプライアンスを持ち込めないわけで、なんにもしなければ、このままクラウドブームに乗り遅れることになるのに…と思っていたら、ロードバランサ等の大手のF5ネットワークスは、仮想化されたマシンで動く「ソフトウェア版のBIG-IP」をリリースして、クラウドブームに乗っかる気らしい。

まぁ、クラウドの中で仮想マシンをスケールアウトしていくアーキテクチャになると、BIG-IPみたいな、既存のアプライアンスが果たしている役割を担う何かが必要とされているのも確かなんだけろうな。でも、仮に、(アプライアンスが持っているらしい)ハードウェアの特殊性と優位性を取り除いて、仮想マシン上で動くソフトウェアとして、そのデキ(性能や堅牢性など)をオープンソースなソフトと競った場合に、プロプライエタリなアプリケーションにどれだけ優位性があるのか、ちょっと気になるところではあるな…と。

« Older posts Newer posts »