Tokyo2.0 に初めて行ってきた

ウタゴエの園田さんに勧めていただいて前から気になっていた Tokyo2.0 に行ってきた。

f:id:d_sea:20090719211658p:image

事前に園田さんと待ち合わせて1時間くらい喫茶店で軽くお互い会社でやっているサービスや取り組みを紹介しあう。2月にお会いした時よりも新しいことが増えていて具体的にチャレンジされている様子が分かり、今後の展開も具体的になっているのでウタゴエさんの今後は要チェックだなと思う。お互いの持ち味がお互いにとって補完できるような機会が今後あればいいなと思った。

さて、Tokyo2.0 はIT系の方々で集まる約月1回のネットワーキングパーティーで7割くらいは外国人だろうか。そもそもは日本で働くIT系の外国人が集まるためにできたとか。

園田さんに主催者の Andrew を紹介してもらう。ちょうどアップルジャパンに就職が決まったばかりで祝福されていた。アップルストア銀座店のバックヤードとしているらしい。

続いて Preferred Infrastructure の CEO 西川さんも紹介いただく。ちょうど hbstudy で Preferred Infrastructure が天才的エンジニア集団で最先端のみを追っかけるとんがった会社だということを教えてもらったばかりだった。お会いしてみたいなと思ったその数日後に実際お会いできてしまっているこのスピード感と不思議な感覚は何ともいい感じだ。

スピーカーの方々の内容はクラウドについて。外国人のプレゼンはやはりワールドワイドな視点になっていて、クラウドの定義が人それぞれでまだ定まっていないこと、でもそうは言っても実サービスはあってそれをレイヤ的に整理して話してくれた。ちょうど 自分なりにまとめたクラウドについてのエントリー で述べたようなレイヤの図に近いものも示されていた。自分の整理の仕方はある程度ワールドワイドな視点で通じることも分かった。

具体的サービス紹介というよりかはやや概念的な整理した情報の紹介という印象だったが、逆に日本人でここまでちゃんと整理できている方がまだいないので、貴重な機会だったと思う。

具体的事例紹介はあくしゅの山崎さんと Preferred Infrastructure の西川さんから両方とも Amaozn AWS に絡んだ話だった。SaaS, PaaS に絡んだ話はなかったところをみると、自前で作るには規模感が必要な時点で取っ付きにくいのかと思った。

あくしゅの山崎さんは Wakame の紹介をしていて、積極的に紹介されているのだなと感心した。山崎さんとはクラウド系やインフラ系の場でお会いすることが多くなって、逆に他のプレイヤーはいないことも分かってきた。

最後の Lightning Talk の時間で Andrew が気を使って呼んでくれて、Amazon EC2 フルサポートパックの紹介をさせてもらった。

勉強会とは違い、そこそこで好きな相手と好きなことをしゃべりあっていてプレゼンも見ているけど、見てなくてもいいみたいな緩い中、最後は暖かい拍手で終わって次回にまた会おうね、みたいな雰囲気で終了する。結構この感じって勉強会では出ないし、人と会って意見を交わして自分へのフィードバックを得ようと思っているからみんな積極的に振る舞えるんだと思う。この感じはと雰囲気は日本人だけで出すのは難しいんだろうな、と単純に思った。

あと、やはり英語力はあげないともったいないなと思った。さて、本当に勉強始めねば。

hbstudy#1 に行ってきました

hbstudy は株式会社ハートビーツが主催するインフラエンジニア勉強会で、記念すべき第1回目に参加してきた。

この「インフラエンジニア」という響きはやっと最近になってなじみがでてきたかなと思うが、組織に埋没しがちな裏方的な立場になるのであまり表にでてくる機会もなかったのだと思う。自称インフラエンジニアとしてはこういうインフラをキーとしたバプリックな集まりが開催されるのはうれしいし、ハートビーツさんの持っている経験、スキルがアピールできるいいきっかけになればとも思う。

最初にハートビーツ馬場さんからインフラエンジニアになろう、というお話で元ネタはこことほぼ同じかな。

あとは他社の方からKVMとWakameのお話。

KVM

Wakame 紹介

  • Wakame はスケジュールにそったスケーリングが可能だけど、負荷状態によってスケールするのは難しい
  • 負荷が急に来たとき(Y!のニュースに載っちゃったとか)スケールする速度が追いつくかどうか起動に数分かかってしまう時点でダメなのではというところなのだろう
  • # Y!アタックはさばこうとしてはダメなのかも。スケールの閾値を大幅に上回る場合は sorry page に飛ばすところまで自動化すればいいかと思った

懇親会では色々話した

  • preferred infrastructure がすごいらしい</p>
    • クラウドコンペ優勝者が絡んでいたらしい
  • 深海は好きなことをしながら一人で食っていけるかの実験をしています
  • オートスケーリングは開発するソフトウエアエンジニアとインフラエンジニアが一緒になって作らなきゃだね
  • Ylastic(Amazon AWSのwebビューア)を教えてもらった
  • AWS が出したロードバランサはL4スイッチとして簡単に使えますよ
  • ただ、オートスケーリングで増えたインスタンスは分散対象に自動で入ってくれないので何らかの仕組みが必要だよ
  • 開発に専念できる環境ができているのは会社の資本形態も結構影響するものだ

自分が話すとしたら

  • 馬場さんからは iPhone アプリを開発してサーバ間パフォーマンスをこんなにあげました的なものがよいとのこと
  • 藤崎さんから BGP4 について。みんな知らない世界だからよいとな。でも、誰もついてこれないかも?
    • 話はしやすいけど
  • Amazon EC2使ったモデルや新機能を紹介してもいいかも

今後この場がインフラエンジニアのノウハウや勉強したことを交流するような、新しい流れを作ってくれればいいなと思う。

軌道共鳴のライブに行ってきた 久々に生音聞きにいった

前に一緒の会社にいて遊びでスタジオ入ったことのある方に会社紹介かねて久々に会った。その時に「最近ライブに全然行ってないんですよね~」と言ったらちょうどよく今やっているバンドのライブがあるとのことだったので、行ってきた。

そのバンド名は「軌道共鳴」。アマチュアバンドながらにすでに2枚目のミニアルバムを出していて iTunes からもダウンロードできるらしい。URL は http://or.kuro-music.com/

http://or.kuro-music.com/img/2nd_front-thumb.jpg?w=830

「和製 Dream Theater みたいですよ。」という感じの曲をやるらしい。

ライブに行く前に音源を入手して聞いてみた。おー、Dream Theater ぽい。どこかで聞いたフレーズも取り入れつつ、しっかり変拍子とかいれてプログレになってる。曲の感じとしては Dream Theater の 2nd アルバム “Image and Words” からの印象が強いかな。”Take the Time” みたいな曲もあったし。キーボードの音色はそのまんまな感じ。ボーカルのメロディーは Dream Theater ほどメロディアスではなく独特な感じを受けた。日本語onlyの歌詞だからかもしれない。

しかし、うまいなぁ。音いいなぁ。Dream Theater を弾きこなせるくらいだから当たり前なのかもしれないけど、

Dream Theater 好きな自分としては当日が楽しみになった。ライブの生音を聞きに行くのは本当に何年ぶりだろう。多分5年以上はたっている気がする。

ライブ当日の演奏もやはりうまかった。それぞれの演奏技術があるから難しい曲も演奏できている。特に目立ったミスはなかったと思う。特にドラム、すごいなこれは。安定しつつ手数の多い難しい変拍子とかたたけちゃうのか。。。ここまでうまい人たちは初めてかもしれない。大学の時に聞きにいった Dream Theater のライブよりちゃんと弾いているかもw

演奏とは関係ないけど音作りと言うか、それぞれのパートの音がはっきり聞こえるための音作りとかバランスとかって難しいなと思った。ドラムの手数が多くなって盛り上がっていく時にギターとキーボードが聞こえなる。その時に難しいフレーズ弾いているんだろうけど残念ながら聞こえない。今回の箱は座れるシートで50席くらいの小さいところだったので、距離が近くドラムが大きく聞こえがちなのかもしれない。

自分もスタジオで音を作る時に他のパートとかぶらないように気にしたいけどよく分からなくていつも適当にしている。

しかし、うまい人の演奏聞けて楽しかった~。また自分も練習したくなった。軌道共鳴の方々お疲れ様でした。また、機会があえば聞きにいけたらと思ってます。

Dream Theater 好きで興味ある方は今なら無料で音源が手に入るそうなので http://or.kuro-music.com/ をチェックしてみてください。

会社を通じて何をしたいか、まとめてみたメモ

先週、打ち合わせ中にパートナーさんからもらった質問で、自分としてもまとめるいい機会になったのでメモしておく。

その質問は「深海さんは会社としてどんなことをしたいですか。」というもの。

最近、会社のスタンスやフィールドを整理していたが、もっと大きな視点で何が実現できればOKかというところで、その場で考えながらまた思い返しながら質問に答えた。

この答えは会社を作る過程で描いていた訳だが、少し時間が経ち無意識ながらに持っているような状態になっていて、答えるのに少し間をあけた。結果的に思ったよりも整理できたのが意外だった。自分だけで理解しておくことと相手に伝えようとすることは言葉の使い方が変わってくるのだなと思った。

きれいな文章になってはいないが、箇条書きにしておく。

  • シェイクソウルに関わる顧客、パートナーの価値が一つ上がること</p>
    • 価値 : 売り上げ、スキル、効率化など、経営的インパクトに近い方がよい
    • 対象となる会社と一緒になって価値を上げていく感覚
  • 世の中の先端的なフィールドで求められるサービスを提供する
    • あまりに先端的すぎると実現要望薄く研究になってしまうので、時代の半歩先の部分がいい
    • 自分のところにないスキルがあれば、パートナーと一緒になって作っていく
    • パートナーシップ : 対等な関係、お互いのスキルを補完しあう関係、マイナス方向に引っ張りあうのはNG、上下関係もNG
  • シェイクソウルだからできることをやる
    • 誰もができる単純な仕事は、生み出せる価値が低いのでやる意味がない
  • 単発的に案件をこなすことはない。最終的には顧客自身ができなかったことができるようになることがゴール
    • 教育、レクチャーというサービスメニューは永続的なスキルの維持/向上するために作ったもの

ひとしきり答た後、そのパートナーさんは「なんだか、VCみたいですね」と言った。

お金しか出さない日本のVCを連想した自分はその時は同意しなかったが、投資対象とする会社をサポートして、あらゆる面の価値を上げて exit を目指すような VC の理想を考えるにそれはおおむねあたっているかと思った。ただ、こちらはお金は出さずに実践的な技術面でのアプローチが強いことになるけど。

答えの視点に常に対象物がある理由は、シェイクソウルは会社のサイズが大きくない(今後も大きくするつもりもない)ので単体の価値を高めたところで何もしなければ意味はない。対象物に何を提供できるかでシェイクソウルの価値が測れるし、存在意義が出てくるのかと思う。

幸い会社を作って5ヶ月が経過したが、優良なパートナーと一緒に Amazon EC2 フルサポートパックのような、時代の半歩先のサービスを作れているし、徐々にシェイクソウルの存在を知ってもらえて興味を持っていただけているのでおおむねこの考え方で良かったし、これからもまだ行けそうだと思っている。

やりたいことをやれ

誰かのお勧めな本として紹介されていていたのと、本田宗一郎の本は今まで読んだことなかったので読んでみた。

やりたいことをやれ

</div>
</div>

書かれているものはこの本のために書き下ろしたのではなく、おそらくそれまで本田宗一郎がインタビューや執筆した文章内から抜粋したものを集めた文集になっている。1ページに1話。少ない文字数なので、回りくどくなく単刀直入な主張、考え方が並ぶ。

恥ずかしながら初めて本田宗一郎の考え方に触れたのだが、一経営者のイメージとは少し離れた技術者としてのこだわりや実践主義のようなものが強く押し出されていて自分としては意外だった。

特徴としては以下にまとまるかと思う。

  • 自身が技術屋であり続ける</p>
    • 営業周りはパートナーであった藤沢氏を信頼して任せ切っている
  • 実践主義
  • 時代の変化は激しくそれに対応しないと取り残されてしまう危機感
  • 若者は年寄りに埋没するな
  • 子供や若者の芽をついばむ教育はするな

この本自体は2005年9月の初版だが、実際発言されている時期はもっと前かと思う。そう考えると当時から先見性の高さや個人が組織に埋没しない考え方を持っていて、これは今でもなお新鮮に感じる部分だった。技術にこだわる部分は、なぜ本田技研という別会社が存在する理由としてよく分かった。

大きな有名な会社というとどうしても大企業病が必ずあると思ってしまうし、実際みてきた会社はそうであることがほとんどだったが、この文章を見る限りそれは起きないような気がするくらい、チャレンジングで余計な政治色や力関係がなくスピード感を大事にしたベンチャーのようなイメージを持つ。

インターネットによって、技術者(エンジニア)が世の中に起こせるインパクトが最大化された。技術の進展のスピードはますます上がり、常に新しい技術、アプローチ、サービスが登場する。それをキャッチできずに古いものに埋没するものは時代の先端フィールドから退場させられる。これらは現代の出来事として実感を込めて確実にいえることとして、認識されているかと思う。

本田宗一郎が述べている内容は現代の考え方にマッチしていて、古くささによる落胆よりかはもっと前に進むための励ましや触発を与えるの文章のように感じた。

もしかしたら古い、新しい問わず、昔から技術を中心にチャレンジしてきた人の普遍的な考え方なのかもしれない。今はその普遍的な考え方がネット上ではよく見えやすいのかもしれない。自分としては転職を重ねつつ働いてきながらやっとつかんできたことが、かなりの部分でマッチしていたので、そう思いたいと思うし、またそうであってくれたらそれなりの時期を過ごしてきた自分の今までに対して良かったと思えるうれしいことでもある。

うれしさと励ましをを与えてくれた、そんな本だった。

</div>

Android Bazaar and Conference 2009 Spring に行ってきました

iPhone 3GS(いつの間にか “S” の前のスペースはなくなっているようだ)発売日のこの日に 日本Androidの会 主催の Android Bazaar and Conference 2009 Spring が開かれ、行ってきました。

聞けたセッションは4つ。自分にとってもこれからアプローチしようとしている Android なだけに、今まで取り組まれてきてらっしゃる方々のセッションは現状どこまで行っているのかも含め是非聞いてみたかった。

会場の部屋は満席で若干の立ち見が出る盛況ぶり。その日のワールドビジネスサテライトでも「携帯の今後」のような切り口として、iPhone 3GS 発売のニュースと合わせてこのカンファレンスの紹介もされていた。

参加者の層はやはり若く、20前半から後半でほぼ9割くらいだろうか。ソフトウエアエンジニアさんばかりなのだろう。女性率1%未満。一部、白髪のおじいちゃんらしき人たちも混ざっていたが、メモも取らずにPCでブラウジングにいそしんでいたり、爆睡しているだけだったので、関係者ではなく主旨知らずに入っちゃったよな方々かと思う。

以下つたないメモと自分なりの一言感想。

当日の資料は公開される予定らしい。

A-1 オープンソースアプリ戦略

13:30-14:10 佐々木さん

  • Apache2.0 のライセンスに収める</p>
    • 下 BSD, GPL
  • Map は 独自IPアプリ 付けれる # IP: 違う意味で使っている?
    • Apache2.0 錠にすればクローズにすることができる
    • ソースコードを公開しなくてもいい
  • OPhone の実例 China Mobileが発売する3G端末</p>
    • レイアウト iPhone みたい
    • Android Source Code + Linux チューニング して独自にカスタマイズされている
    • Android というよりかは OPhone のイメージ
    • 精華大学関連ベンチャー エンジニア200名
  • Android プラットフォームに付け加えている
    • CMTV, CMTV API, TV アプリケーション(Java)
    • OMS API, WAP ブラウザ, eBook, Launcher, Java VM
    • BAE(ウィジェット), MAPS(独自)
    • Webkit(HTMLファイル対応可能になる) # Webkit の最新版を持ってきている
    • Apache 2.0 上のライブラリなので公開されることはない
    • Linux Kernel のフルチューンナップしている # コストがかかる部分 品質にでる
  • 必要な機能を足して短期間で製品化することが可能になった
  • オープンな部分とクローズドな部分を組み合わせることで個性的なものを作る</p>
    • WordPress + スキン変更(テーマだろうな) + plugin
    • 小さな会社でも大きなことができる
  • 何でもできてしまう
  • “Droidget” ウィジェットをそのままデスクトップとして使う
  • スマートフォンとネットブックに特化したアプリ
  • Google App Engine 上にデータを保存して、端末から情報を落としてくる
    • クラウドと連動して成り立つ
  • Webkit 上で動くものはすべて動く
  • ウィジェットのダウンロードセンターも立ち上げて行く予定
    • Javascript で見せている
  • Webkit を使えることの自由、楽に作れる</p>
    • iPhone アプリは上層のコンテンツ部分のみ、Android はプラットフォーム戦略をとることができる
  • 小さな会社なので必ずしもオープンソース化がベストはない タイミングもある
  • コンテンツに近いものはオープンになりにくいクローズで、ミドルウエアやライブラリはオープン化
  • 前提として Android でどうやってビジネスを成り立たせるか考える
    • ミドルウエアでも Java で実装できる
  • 感想 : 今まで iPhone アプリのようなちょっとしたアプリのようなイメージまでしかなかったが、もっとレイヤの低い部分までいじれてしまう広い世界なことを初めて知った。
    今後、Android をベースに色々な携帯OSが出てくることは確実かと思う。そうすると Android はプラットフォームを完全掌握ではなくて、サポートするような黒子的立ち位置なのかと思った。
    しかし、結局それを載せるのは携帯メーカになるので、小さな会社がやれることは限られ、そこまでいじるのはメーカもしくはキャリアになる気がしている。そうすると、今まで日本がやってきたキャリア主体の端末作りと同じ構造になって、意外とオリジナル携帯OSは日本にははまるのかもしれないと思った。

A-2 講演A-2 動き出したAndroidによる新ビジネス

14:20-15:00 今村さん

  • 期待したモバイルの話はなし
  • Google Wave コミュニケーションツール
  • リッチモバイル 指を使ったユーザインターフェイス すでに実用されている デモムービーあり
    • # 自分の感覚と同じだな
OESF
  • Open Embedded Software Foundation</p>
    • Android を組み込み向けに復旧させる業界団体
    • www.oesf.jp
  • 感想 : キーボードを使わない UI とかは自分も今後注目していた部分だったが、内容は結局何を伝えたかったのか分からない。グダグダ感満載で、タイトル負けしていた。

A-3 セカイカメラのつくりかた

15:10-15:50 頓知ドット株式会社 CTO 近藤さん

  • カメラを除くと画像やテキストが浮いているように見える
  • コンセプト
    • CLICKABLE World
    • WYSIWYG Method
    •  ??
  • 撮った写真をサーバにアップしてすぐ反映 はやい、本当?
  • 必要なもの : 位置情報、センサー(向き)、カメラ、UI
  • 加速度センサー</p>
    • lowpass filter
    • 浮いているタグがカメラが揺れるとゆらゆら動く
    • 急な動きに追従するフィルターを Android に適用している
  • PlaceEngine</p>
    • 無線LAN電波を利用して位置、空間を推定する技術
    • GPS が届かない場合に対応
  • iPhone オートフォーカスは撮る時に時間がかかってしまう
性能チューニング
  • 起動時間、onDraw の時間
  • tips は豊富にある Android Developers Blog
    • The Developer’s Guide
    • Google I/O のマテリアル
  • ViewStub 起動時間の短縮
    • ビューは後で読み込むようにして1割短縮</p>
      • テキストや写真を読み込む時にその時読み込むので遅くなる
  • 背景画像を NULL 指定 早くなった
    • 2.0(Donut)で対応予定らしい
  • バッテリーライフについて</p>
    • 書き方とかGPSよりネットワークの方が電源使わないとかのティップスが Google から提供されいてる
  • 感想 : カメラで写っているものに対して見せるので、見せ方とか動き方とか今までの web とかと全く異なる観点で作らなくては行けなかったのだなと思った。苦労が多かったと思うが、内容を聞いてこのサービスの新しさをさらに感じた。

B-4 Androidで3Dグラフィクスを極める道 Vol.2

16:00-16:40 高橋さん

  • OpenGES GL sunのjavaのリファレンスを未た方がいい
  • vol.1 より 高速化のために GPU に処理させる
    • 圧縮テクスチャ 成功、Matrix Palette API未実装、Verex 宿題(説明終わらず)
  • 圧縮テクスチャ
    • メモリ使用効率が向上、伸長はハードウエアで行われる
    • Android で ATITC は使える 裏技を使う
      • 定数定義がないので直接値を指定する たまたまHTCで動いた</p>
        • 0x8C92 …ATITC_RGB
        • 0x8C93 …ATITC_RGBA
  • Matrix Palette : java だけだと遅い ボーンアニメーション、スキニングをハードウエアで実現できる
  • OpenGL がベース
  • Google Developer に伝えた
  • 感想 : まだ3Dでちゃんと描くにはまだまだ前段階という印象。実行環境から手探りで確立させようとしている状態

クラウドとは。について自分なりに整理する

今、「クラウド」は確かに旬なキーワードになっているが、その内容はかなり広範囲になってしまっているのでどこをさして使っているのかよく分からない(そもそもどこも指してなくて、イメージで使っている人たちも多い)ので、自分なりにクラウドという単語の中身について整理してみる。

前提としては雲のような巨大なサービスプラットフォームがあって、ユーザはインターネットを返してあらゆる端末からそのサービスを利用することが可能な環境となる。基本的にはその巨大なプラットフォームは、

  • 多くのサーバを置くことのできる広大なデータセンタ
  • 十分な帯域を持ったネットワーク
  • 多数の物理サーバ
  • 落ちない/落ちても影響を最小限に抑えられるアーキテクチャ

を持っていることが条件と言える。

クラウドを構成する技術要素としては、仮想OS、クラスタリング、分散並列処理なども入ってくると思うが、これらは規模の大きなインフラを持っているところが今まで培ってきた技術で、Google, Amazon といったところがクラウドをサービス化したのはすごくよく分かる。

大事なのはユーザがどこまでクラウドが提供するサービスに対して制御できるか、がサービスによって結構異なっている。ということ。クラウドサービスの内容をレイヤごとに整理すると、それを使うユーザがどこまで制御することができるのかが分かりやすい。

図に整理してみるとこのような感じ。

OSI参照モデルよりかはシステムを作る時の要素を依存している順に並べて、それをレイヤとした。

f:id:d_sea:20090624113245p:image

クラウドには SaaS, PaaS, HaaS と3つほどサービス提供形態があるが、それぞれ説明してみる。

SaaS
基本的に特定のサービスを利用するだけの形態。いわゆる ASP と同じと思ってよいと思っている。SaaS と ASP は違うと説明しているところもあるが、ユーザから見ればインターネット上でサービスしており、PC依存やネットワーク依存がない環境を提供できていると言う点では変わりはない。
ユーザから見れば使うだけのサービス。
PaaS
開発プラットフォームまで提供されている形態。開発プラットフォームとはある開発言語に特化したサービス提供環境のイメージ。基本的にはユーザがその言語でプログラミングしたソースを PaaS 上に置くことで、インターネット上でサービス提供が可能になる。サーバを買うことなく誰でもインターネット上に web サービスなりを展開することができる。
ただし、ある程度の利用用途を想定して環境が用意されているので、やれることの制約はある。さらに Google App Engine は無料だがストレージ容量、アクリケーション数や PV のリミットがあり、サービス環境的にも制限されている。Force.com は月額課金だが同様に制限がある。
なので、環境としては言語の制約はあれど誰でも自由にサービス提供者になれるのだが、本格的な展開を目指すのであればふさわしくない環境となっている。
HaaS
サーバのOSのレイヤまでユーザが制御することが可能な形態。仮想 OS なのでカーネルをいじることはできないが、root 権限をユーザが持ち専用サーバを持つことが可能になる。しかもいくらでもサーバを立ち上げることが可能。サーバをどのように利用するかはユーザの自由であり、最初からweb-DBのような多層の複数台構成を組んでしまうことも可能だし、クーロンでスクリプトを走らせたりどんなアプリケーションをインストールしてもいい。物理サーバではなく仮想サーバが立ち上がるので、OS 自体の起動は数分で終了する。今までのサーバを買う際の納期やラックスペースや電源の心配がなく、どんどん立ち上げることが可能。
レンタルサーバとは異なるのは敏速なスケーラビリティに対応したサーバの起動環境とストレージや最近ベータ版として提供されたロードバランサーやオートスケーリング機能などの付加的な機能の充実だろう。

レイヤの幅を見るに自由度は HaaS の方があるのだが、結局専用サーバを提供されているのと同じことなので、アプリケーションのインストールから設定などサービスするための構築作業もユーザ自身が行わなくては行けない。また、サーバを運用する責任もユーザ自身になるため、バックアップをどうするか、負荷の検出をどうするか、はユーザが考え、策を投じる必要がある。

そういう意味ではサーバ運用に長けたインフラエンジニアがやはり必要になる。

その点、PaaS はリミットがかかっているがサーバ内の構築や運用を行う必要がないので、インフラ部分の心配はいっさいいらない。

一長一短ではあるが、PaaS と HaaS は巨大なリソースをユーザ自身が利用できて、安くサービスを提供できるという点では、今までとは概念が変わってくるのだと思う。利用用途か自分がどこまで見たいかによって選択するのが現実的なのだろう。ただ、現状では本気でサービスを立ち上げて狙うのであれば必然的に HaaS を選ばざるを得ない状況かと思う。

この新しい概念を理解して利用できるところがこれから新しいネットのプレイヤーとして現れてくるだろうし、既存の環境に埋もれていたエンジニアたちが可能性に満ちた素敵な世界に個人でもチャレンジしていけるようなことにつながっていくのだと思っている。

ネットに関わっていると言っても internal/external で全く違うと意識した方がいい

あるサーバメーカの方に聞いたお話の内容が、結構現状のネットを中心としたビジネスの特徴を明確化している気がしたのでまとめてみる。

そのメーカではインターネットを使ったシステムは internal と external の2つの特徴に分けられて、その2つは全く考え方とアプローチが異なるためにそれぞれに対してマッチするサーバを開発しているということだった。

それぞれの特徴をまとめると、

  • internal とは</p>
    • ITを業務で利用する企業内IT、業務ASP的なシステム
    • 利用者はその会社の社員でシステム責任者は情シス担当者
    • SIer にお金を払って作らせるケースが多い
    • 信頼性やセキュリティの意識が強くそのためのコストはいたし方ないという考え方
  • external とは
    • みずからサービスなりを提供している形態、サービスプロバイダやインターネットサービス運営会社
    • 利用者は不特定多数のコンシューマで会社としてサービス提供している
    • 自分たちで開発、自分たちで作っちゃうスタンス
    • なるべくベンダ異存のないプラットフォームを好む
    • なるべくお金はかけたくないしそもそも最初はお金持ってない

というお話で、external 側の消費電源やスペースへの要求レベルが高く、今までちゃんと提供できていなかったので、そこをターゲットとしたサーバを作ってますとのことだった。

自分としては internal は社内で使うシステムのサーバを IDC に置いて、firewall をきつめに設定して社内からのみアクセスできるネットワークを作って業務中はアクセスあるけど、お休みの日は使われないような運用をイメージした。一方、external ははてな、Yahoo!やGoogleなどいわゆるコンシューマを相手に24時間ネットサービスを提供し続けているところとイメージした。

自分の中では何気なく分けていたのだけどそれを明確化していて、しかもすでに戦略を打っているところはさすがメーカ、手堅いな。と思ったところだった。

その後、自分なりに反芻してみるとこの分け方はシステムの特徴だけにとどまらず、作ることに対する文化そのものも異なることに気づいた。結構肝なのがこの2つは同じ IT というジャンルにまとめられてしまって、働いている人たちも混同していて「ITやってます」とか言ってしまっていて、分ける意識がなく過ごしてしまっていることがあるかと思う。

この internal/external は大事にしたいポイントなど考え方や文化からして全く異なる別ものだと思った方がいい。仕事の回し方や考え方とビジネスのスタンスの面から自分なりにまとめてみると、

  • internal</p>
    • 信頼性、確実性を重視
    • 工数主義 : 数の論理で問題解決する
    • スピード遅い
    • スキルよりも調整能力が必要
    • しっかりした雇用形態と緩やかな給料上昇率
  • external
    • スピード重視
    • パフォーマンス主義 : いいパフォーマンスする人はすごいと思われる
    • スキルがない人はいりません
    • 小さくたって世界を変えられるぜと思える
    • いつ辞めるか/辞めさせられるか分かりません

これくらい違うと思う。法人営業のSEをしていた時に internal 側にいて、サービスを立ち上げた時に external 側にいて両方を見てきた自分にとっては internal をやっている人と external をやっている人とは根本的な考え方が違うので一緒に仕事をするのは難しいというか、そもそもスタンスが違うのでそのギャップから問題が出るケースがほとんどだと思っている。振り返ってみるとベンチャーのスピードを大手のメーカや法人顧客を多く抱えるIDCに求めても実際ついて来れなかったし、その会社のシステム上そもそも無理だったりしている。

で、自分はどちらでプレイしているのか分かっているのも結構大事で、internal な世界の中で external やってみようと言うのはそれは難しく、自宅に帰ってから個人レベルでやるか、本当に仕事としてやりたいなら external をやっているところに転職してしまうのがいいのだろう。自分のやっている仕事が実際どちらなのか分かっていれば自分のキャリアを描きやすくなるだろうし、転職するにしてもその会社がどちらかを見極められれば無駄な面接は減るだろう。

同じように会社を作るなりして自分でビジネスを展開する時にどちら側に立つかというのも結構大事で、どちらもやるというのはやはり難しいことだと思う。

そういう意味では、ShakeSoul は external で生きていく会社にしたくて、そのフィールドにどっぷり浸かるために作った訳で、最初は internal で直近の売り上げを短期的に、、、なんて考えていたことが矛盾していることに気づかされた。具体的にどういう理想を描いて追求していくかは別エントリーにまとめたいと思うが、これからも external な世界で生きていくための模索とチャレンジを続けていこうとやっぱり思うのだった。

INTEROP Tokyo 2009 に行ってきました もうネットワークは完全に成熟産業化したと思った

f:id:d_sea:20090611134602j:image

f:id:d_sea:20090611134619j:image

f:id:d_sea:20090611134624j:image

おそらく7年前から毎年、INTEROP に行っている。やはりネットワークに関する最大級の見本市だし、web 全盛の前時代はネットワークがコアテクノロジだった訳で行くのは必須くらいなものだった。

しかし、最近は web 開発の時代になってネットワークはあって当たり前なものにますます位置づけられて、新しい技術も生まれることなく高速化だけがホットトピックスになる状況だった。衰退ぶりが実感できたのは展示ホールの広さで、ここ最近は年々縮小していて、7年前は1~8ホールまですべて埋まっていたのに、3年前では6ホール分に減っていた。

今年はどうなのだろう?レイヤの上の方に幅を広げてきた自分にとっては、最近のネットワークだけの状況はあまり分からないながらも、このイベントの変化が現状を知る良い機会だと思って行ってみた。

なんと、今年は展示ホールは3ホール分。IMC や RSA など付属的な展示物を含めて3ホール分しか展示されていない。あー、ついにここまで来たのだなと現実を実感する。

確実にネットワークの産業は成熟化したと言っていい。新しいイノベーションは非常に起きにくくなっているし、高速化へ邁進するプレイヤーは体力のある一部のルータメーカにしぼられた。レイヤ1~4の幅の中での新しいことはほとんどなくなっている。

なぜかというと、

  • 高速化してもその帯域を必要としているところはごく一部であり、おおむね 1Gbps の物理帯域があれば十分なところがほとんど
  • 標準化によって異メーカ間接続が可能になり、つなぐことに関しては安定性、信頼性が高い環境が提供しやすい
  • ネットワーク機器を使う人たちのノウハウが時間とともにたまり、新しい技術や機器を習得しなくてもすんでしまう環境がある
  • ネットワークのレイヤで制御できることは非常に少なく、ソフトウエア側のアプローチでレイヤの高い部分も網羅した制御プロトコルやミドルウエアが多く開発されている

という状況があるからかと思っている。

展示をいくつか見て気づいたことメモ

  • Cisco が展示を出していなかった</p>
    • みんなが知っている存在になっているし、もうネットワーク業界にブランドを提示する必要はないからか
    • サーバに進出していることよりネットワークはもうOKと判断しているのかも
  • 人だかりが割とできていたところ
    • Palo Alto Networks : L4レベルどまりでなく、アプリケーションの振る舞いを可視化して制御する Firewall 製品を提供している
    • TippingPoint : 不正侵入や攻撃、ハッキングを防御する製品を提供している
    • ネットワークレイヤを超えてくるものまたは単純なセキュリティ機能からトレンドを追うような動的な制御を行う製品が注目されている
  • Juniper の 100G FPC の展示を興味深く見る人がほとんどいなかった
    • 高速化の興味を持つ人が少なくなったのか
    • そもそも Juniper の FPC を使うような大きめなルータを使う人が少なく気づかなかったのか

クラウドコンペを見て

今年の INTEROP に行く目的のもう一つはクラウドコンペの発表内容を聞くためだった。クラウドについてすでに取り組んでいる人たちがどんなことを実際行っているのか、どんなアイデアを持っているのか非常に興味を持って聞きに行った。

実際は全10ある中の2つのプレゼンテーションしか聞くことができなかったが、その2つはクラウドというよりかはクラウドに無理矢理こぎつけて、独自のネットワークの距離を測ったり、MapReduce のようなすでにあるものを使ってちゃんと動きました的な内容を発表していた。おそらくこのコンペに合わせてというよりかは今まで研究、検証してきた内容を発表する機会として発表者は利用したのかと思う。

発表内容のレポートはすべてではないが IT Pro の記事 にまとまっている。

そいういう意味では優勝チームの発表は是非聞いてみたかったが、内容を見るに自分たちでクラウドを作るためのアーキテクチャを確立し、開発したという点で真正面からクラウドに取り組んだ結果だけに優勝は当然かと思った。

期待して聞きにいってみたが、クラウドに対して真っ正面から取り組んでいるプレイヤーはほとんどいなかったし、まだ少ない状況だということがよく分かった。

そういう意味では ShakeSoul で Amazon EC2 フルサポートパック を展開していることは市場の中で結構なイニシアティブを持っていると思っている。

来年の INTEROP はどうなっていくのだろう?US の INTEROP は成り立っているのかどうか?

ネットワークレイヤしか、知らない/やってこなかったエンジニアはどうなっていくのだろう?

この大きな流れはもう戻ることはないと思いつつ、何とも言えないむなしさを抱えて予定よりも早く見終わってしまった幕張を後にした。

仮想化友の会 第9回 5月勉強会に参加してきました

メーリングリストの仮想化友の会は入っていたのですが、勉強会には行ったことがなかったのとネタが KVM らしいので聞いてみたい&どんなもんか見てみたいということで、初参加してみた。

2008年のOSCの仮想化系のセッションを聞いた時に会場にいらっしゃった方々が多くみられていた。内容は Red Hat の方々による KVM の技術概要と Red Hat としての取り組み予定紹介。

資料は仮想化友の会webより入手できます : http://sites.google.com/site/kasotomo/study

参加者は Unix/Linux をいじってきましたと言う世代の方々と思われるので、web 開発系なコミュニティに比べれば平均年齢は+5したくらいか。2002年くらいにいた IRI のエンジニアたちが FreeBSD をいじり倒していた時代に軽くフラッシュバックする。

思ったのは、仮想化といっても完全ソフトウエアの話にはならず、必ずハードウエアとの絡みも出てくるので、ハードも含めて検証なりを進める敷居は高く、お手軽さはないので自然とちゃんとできるプレイヤーも少なくなる分野なのかと思う。

特に KVM は CPU でフォローする仕組みなので、ハードウエア依存が強い。ハートウエアに依存しないサーバ環境を作るための仮想化なのだけど、やはり大事なところでハードウエアがしっかり絡んできてしまうのはなんともしょうがないことなのだろうか。

何にせよ、仮想化は1つの手法であって目的ではないのだけどツールの一つとして利用する場合、仮想化するメリットやパフォーマンスを分かっておくことは大事なことなのだろう。

ということで、そろそろ仮想化環境についてもう少し詳細な技術情報なりノウハウなりを貯めたいと軽く思った次第。

以下、当日メモ

20090528

仮想化友の会 5月勉強会

19:00-20:40

KVM 技術解説

Red Hat 森若

  • QEMU : Windows/Mac/Linux 対応 便利だった</p>
    • dynamic なので遅い
    • 色々使えた ia64 使えた
  • KVM : QEMU を工夫して早くしてみた
    • ゲスト OS が I/O したい場合は仮想 I/O に対して、一度 QEMU に渡して
    • KVM-Linux 経由で実際の I/O する
  • 新しいモード Guest mode
    • センシティブ命令は実行できない
  • virtio
  • 共有メモリがあるから早くなる
  • シャドウページテーブル
    • ゲストの仮想アドレス=>ホストの物理アドレスのテーブル
    • MMU の仮想化の問題を助ける
      • ゲストの物理アドレス=>ホストの物理アドレスの変換がない
    • EPT の CPU だとすごく早かった
  • viroio について
    • virtio_ring のスライドの絵がすべて
  • virtio_pci
    • 仮想 PCI バス上に仮想デバイスが並んでいる
    • I/O命令は仮想環境がフックする
    • virtio_ring での virtqueue を作成して共有する処理もここで行う
  • virtio_balloon
    • 共有するバッファは virtio_baloon 構造体1つだけ
    • 仮想化側がいろいろやってくれるだろう前提とした仕組み
  • block/virtio_blk
    • 仮想ブロックデバイスを提供
    • リクエスト用の1つの virtqueue を使う
    • read, write, SCSI cmd を発行できる
    • リクエスト完了 used リングに追加のみ
  • net/virtio_net
    • 仮想ネットワークでバイスを提供
    • 送信、受信、コマンド送信用の3つの virtqueue を使用
    • 送信処理終了後に送信できなかったデータの送信、送信済みのskbの回収
    • block より工夫されている
  • char/virtio_console
    • 仮想コンソールでバイスを提供
    • 送信用、受信用の2つの virtqueue を利用
    • 一度のやり取りは PAGE_SIZE まで

Red Hat の仮想化戦略

Red Hat マーケティング 中井

  • Red Hat と MS 仮想化の相互運用制で合意</p>
    • 合意内容</p>
      • Red Hat 仮想化上で Windows 2000/2003/2008 サポート
      • Windows Hyper-V 上で Red Hat Enterprise Linux5.2/5.3 が動きます
  • KVM について
    • Qumranet イスラエルの会社を Red Hat が買収
    • SolidCE/SPICE も買収した 管理テクノロジ次世代仮想化
  • 今後
    • KVM は OS に統合、Xen は継続サポート
    • GUI ベースの管理ソフトを出す VMware Virtual Center みたいなもの
      • .Net でできている Windows で動くよ
      • ライブマイグレーション機能もあり
      • HA機能、イメージ管理の機能
    • Desktop の仮想化も提供
    • Hypervisor : VMware ESX みたいなもの
  • Qumranet はもともとクライアントデスクトップの仮想化用のソフトだった
    • Solid ICE VDI サービス名
    • 仮想化のエンジンは Linux, 管理のソフトとデスクトップの表示は Windows
    • デスクトップの表示は IE で ActiveX 利用
    • 早いのは独自のプロトコルを持っている SPICE? windows remote desktopより早い
  • Hypervisor
    • KVM : みる角度によって Linux と Hypervisor
    • ホスト 96コア、1TBメモリ # Linux そのもののスペックが適用される
  • 今後 3ヶ月から18ヶ月にわたって製品提供予定
  • 価格まだ秘密 でも VMware よりかは安くなるかも

QA

  • KVM は API 公開するの?</p>
    • VDSM 最初はクローズド、リブバートに持っていく構想あり
    • 今はリブバートに対応していない