LKFT -Linux Kernel Feature Tracker- というblogを始めてみました。

なんか大げさなタイトルのblogなのですが。。

http://lkft.sirrow.info

に作ってみました。

Linux に増えたコンフィグを延々と1日に1回、自動でpostするだけのblogです。

なんでこんなものを作ったのかというと理由はとても簡単で、

Linux Kernel に興味を持っている人はたくさん居るはずだよなぁと。
でもLinux Weather Forecast をはそんなに更新頻度も高くない。
かといってLKMLをかたっぱしから読む根性もない。

という状態にある人はたくさんいると思っていて、じゃあ、簡単にLinux Kernelに追加された機能について知る方法はないのか?と考えてみました。

その結果、新しく増えたKernelのコンフィグとその説明を見ればある程度分かるんじゃないかというところにたどり着き、せっかくだからkernelを毎回みんながgit pullしてきて見るのも大変だろうし、blogにしてしまうかーということで、さくっと作ってみました。

これで、ある程度、新しいカーネルの機能について知ることができますし、さらに興味を持って深堀りするための入り口にも。。
なるといいな。

とりあえずはv3.0から追加された機能をずらっとポストしてみました。
今後は毎日1回ずつ新しい機能がポストされます。

 

当分はうまく動かないこともあるかもしれないけど。。まぁ、頑張ります。

EMC Style 2013 から EMCの戦略と企業文化を読み解く

どうも。ちゃーりーです。
先日から熱が出てしまい、動くのがしんどいので、会社を休んで布団でごろごろしています。
でも、布団でごろごろしていることにも限界があるので、暇つぶしに文章でも書こうと思います。

先日、EMCという会社が江南スタイルのパロディであるEMC Style 2013という動画をYoutubeへアップしました。

暇すぎるので、この動画の解説でもしようと思います。

EMCとはどんな会社なのか?

http://japan.emc.com/index.htm
トップページをみるだけでは一見してどのような会社か分かりずらいですが、ブロックストレージ(複数のハードディスクによって構成される巨大な外付けハードディスク)およびファイルストレージ(複数のハードディスクによって構成される巨大なWindowsファイル共有機能付きサーバ)を販売しているというのがメインの会社です。

他にも関連するさまざまな商品を扱っています。
そういえば、昨年かその前の年にVMwareを買収しました。今はVMwareはEMCの一部です。一般的にはVMwareよりも知名度が低い会社ですが、やってることはすごいです。

というわけで動画の解説

解説といっても何していいのか分からないのでTOEICのスコア695点の俺が必死で訳したりします。で、それとともにちょっとした脚注を付ける感じで。

Oopa EMC STYLE!
これがEMCのやりかただ!

They want that storage,
彼らはあのストレージを欲している

that performs all day and night
それは昼も夜もいつも働いてくれる

Storage that can also limit data latency
ストレージはデータの遅延も抑えてくれる
(ハードディスクに書き込むときには、ディスクを回転させたり、ヘッドをシークさせたりする必要がありますが、その時間を短くしてくれる。という意味です。レコードで再生したい場所に針を置くのは大変ですよね。その時間がめちゃめちゃ短いという意味です。)

Strage that gets extra hot, with a data rush
ストレージはもっとアツくなる データの大量の流入によって
(ここは非常に難しいところですが、たくさんデータを書き込むと、ストレージといってもただの計算機なので本当にCPUはアツくなりますし、データが増えるとストレージという分野自体の需要が増し、アツくなるとも取れます。)

EMC arrays optimized with FLASH!
EMCのアレイ(ストレージの別の呼び方です)はFLASHで最適化されているぜ!
(SSDは早いですよね。でも容量が少ないので、よく使うデータだけSSDの上において、そうじゃないものをハードディスクに置くという仕組みは、一般的なPCでもISRTという仕組みが入ってきていますし、MACならFUSION DRIVEという仕組みで似たようなことが実現されています。)

I’m the data YEAH!
私はデータを扱っている会社だ!

Data that spins inside you every day,
データはいつもあなたたちの中で渦巻いている

Data that’s auto-tiered by policy,
データは自動的にティアード管理される
(さっき書いた、FLASHとハードディスクのどちらにデータを置くかはあらかじめ決めたルールに基づき自動的に行われているという意味です。)

Data that’s bursty when them backups start,
データはバックアップが始まったときに大量の読み書きが発生する

Big Data
ビックデータ

Analytics…
データ解析

Yes you!
そうお前だ!必要としているだろう?

Yeah now you KNOW!
お前はしっているだろう!EMCのストレージを!

Now everybody scale out down the row!
今、すべてが水平分散でスケールアウトする!

Oopa EMC STYLE!
それがEMCのやり方だ!

An array that’s green
青信号のアレイ

and dedupe what is on it
格納されているデータは重複排除されている
(重複排除とは、同じデータを2個持っている場合、それを1つにまとめることで容量を削減してくれるような技術のことです。)

An array that scales out
アレイはスケールアウトする

when the time is right
スケールアウトすべき正しい時に

An array that is UP
ちゃんと動いているアレイは

is more sexy than a failed array.
落ちてるアレイよりももっとイイ感じだ

EMC ALWAYS UP LIKE THAT!
EMCのアレイ(とか)はいつもこんな感じで動いている!

I’m a VM YEAH!
私はVMを扱っている会社だ!

I start off small but
私はスモールスタートだけど

then I autoscale,
自動的にスケールアウトする
(たくさん計算機が必要になると、勝手にVMの数を増やしてくれる仕組みがあるのです。便利ですね。)

I vMotion when DRS says,
私はDRSに頼まれたときにvMotionする
(vMotionとは、起動中の仮想マシンを、動かしたまま別のマシン上に移動させるものです。あるPCの上で動いているゲームのエミュレータを途中でステートセーブして、別のPC上でステートを読み出して続けることと技術的には同じです。DRSはサーバの負荷などを見ながら、性能が足りなければサーバの電源を入れてそこに仮想マシンをを移動させたり、性能があまっていれば、サーバの電源を落とすとともに、そこで動いている仮想マシンを移動させたりしてくれる、そういう機能のことを言います。)

…that can handle any workload,
どんなワークロードでも捌ける
(そりゃIaaSっすからね。。)

VMware!
VMwareだ!
(VMware は仮想マシンの製品です)

virtualization!
仮想化だ!

Yeah YOU!
そうお前だ!必要としているだろう?

Old hardware gone!
古臭いハードウェアはもういらない!

Now everybody scale out down the row!
今、すべてが水平分散でスケールアウトする!

Oopa EMC STYLE!
それがEMCのやり方だ!

まとめ

というわけで、
適当な和訳と解説でした。

Now everybody scale out down the row!
今、すべてが水平分散でスケールアウトする

Oopa EMC STYLE!
それがEMCのやり方だ

ってのが印象的で、会社としての今の戦略はとにかく何でも水平分散可能にすることなのでしょう。
タイトルに2013と入っているので、少なくとも2013年の現在においてはそうだということらしいです。
来年は違うことを言っているかもしれませんが、それは、EMCは今の考え方にとらわれ続けるような会社ではないんだという意思表明なのでしょう。

以上です。

mixi のサーバに fedora が使われてるのってそんなに変かな?

twitter を眺めていると、mixi をホストするサーバに fedora が使われてることをディスる向きが非常に強いのですが、そーんなに盛大にディスらなくてもいいんじゃないかなって個人的には思ってます。

> Q. なんでRHELじゃないの?
>
> A. Fedoraで困ることもなく安定稼働させてきました。
>
> Q. RHELのOS代なんてゴミみたいなもんですよね?
>
> A. ヒント:サーバ台数。

mixi の5年前の状況を思えば、だいぶ事業が軌道に乗ってきているとはいえ、RHEL と RHELをサポートしているサーバを大量に導入するっていうのはちょっと金銭的に勇気がいるんじゃないかなぁって思いました。
5年前だと premium 会員を始めてから少し経ったくらいで、わりと金策に困っていた時期なのではないかなぁと。

mixi のサーバの台数がどの程度だったのかはあまり想像がつきませんが、サーバの台数が少なければ、サポート付きのOS買ってくる方が人件費と比べて安くつくんだろうけど、台数が多くなると技術者を雇った方が安いのかな。とか思いますし。

> Q. なんでCentOSじゃないの?
>
> A. 一時期、新しいバージョンでるでる詐欺に遭いました。
>
> Q. どうせこれからもアップデートしないのでは?
>
> A. 嘘だと思われるかもしれませんが、定期的にアップデートする予定です。

継続的なバージョンアップをこれからしていきたいと考えているなら、Fedora でいいんじゃないかなという気がします。
Fedora はコミュニティで開発していると見せかけて、実際には RedHat からお給料をもらっている RedHat の別動部隊が中心になって開発しているので、おそらく RHEL の開発をやめるまでは続くでしょうし。

CentOSに関しては 6.0 のリリースがすごーく遅れて、たしか RHEL 6.1のリリース直前にようやく CentOS 6.0がリリースされたような記憶があります。
Scientific Linuxは 6.0 が RHEL 6.0 リリース後、割と早い段階でリリースされて話題になったと思うのですが、その一方で、Scientific Linuxの開発のキーマンが RedHat に引き抜かれてしまって、今後の開発の雲行きがちょっと怪しいかも。という話もありました。

ただ、ここ最近は、CentOSやScientific Linuxの開発に関して、特に憂う声は聞かない気がします。でも、またメジャーバージョンが上がったときに問題が顕在化するかもしれないなー とは思ってしまうのも仕方ないなと。

なので、開発が滞りなく進むであろうと思えるという切り口での安心感では Fedora に CentOS や Scientific Linux よりも分があるんじゃないかなーと。思います。

> Q. NIC認識しないってどんなNIC?
>
> A. メーカー標準のNICです。実はRAIDも認識しなかったんです。2005年くらいの話です。

この NIC がどんなもので、そのドライバが vanilla に含まれていたものなのか、 Fedora 独自のパッチに含まれていたものなのかこの字面からでは判断できませんが、どちらにせよこれに対する反論として、 kernel だけ独自ビルドすればいいとか、ドライバだけ自分でとってくればいいとか、そういうのが考えられると思います。

ドライバはvanillaカーネルにもディストリビューションにも含まれていないので、外からモジュールを持ってきてビルドとなると、それこそとても不安です。外部のモジュールなんてどれくらいテストされてるかわからないですし。なので、新しいバージョンのカーネルを取ってきてビルドするという判断になります。

それでは、新しいバージョンの vanilla カーネルを kernel.org から持ってきてビルドしようとすると、今度はディストリビューションのカーネルに含まれているパッチが抜けてしまうという問題に当たります。
ディストリビューション独自のパッチを当てるために、パッチを全て新しい vanilla カーネルにリベースした後に、テストを行う工数ってどれくらいなのでしょうか。
ディストリビューションが独自にカーネルに当ててるパッチは数百、もしかしたら千を越えるかもしれません。Linuxカーネルは開発スピードが異様に早いので、そのままパッチが当たるとは到底思えないですし、vanilla に merge されて不要になったパッチもあるでしょう。結構複雑で難易度の高い作業だとおもいます。リベース作業だけでも日がくれるどころか年が暮れてしまいそうです。
しかも、相手はカーネルです。テストやデバッグが困難を極めることが目に見えるようです。
そんな負け戦とわかっている仕事、少なくとも僕なら絶対にやりたくありません。

そういう意味で、最初からデバイスを全部使えるカーネルを持っているディストリを使う判断も正しいと思います。

だから、個人的には mixi がそんなにおかしな判断をしているとは思いません。
がんばれmixi。(最近ログインしてないけど。。)