SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

キーパーソンインタビュー

いま付加価値を生み出せるのはソフトウェアだけ、貢献が世の中を動かしていると感じられれば人間は伸びる

NTTコミュニケーションズ クラウド・エバンジェリスト 村上 守氏インタビュー

  • X ポスト
  • このエントリーをはてなブックマークに追加

FreeBSDを使ってISP基盤システムを開発、きっかけは「予算がない」

――波乱のスタートでしたが、その後、初めてOSSを使ったのはいつですか?

1993年かな。そのころ、NTTもインターネットをやりたいということになったんですが、会社法の関係で、NTTが直接やるわけにはいかなかった。そこで、NTTPCコミュニケーションズでインターネット事業を立ち上げようとなりました。

インターネット事業にはISP基盤システムを開発する必要があります。SunOSを使いたかったんですが、内製なので買ってくるわけにはいかなかった。予算がないんですよ。どうしようと思っていたら、FreeBSDというただで使えるOSを見つけて、よしこれを使おうと。これがOSSを初めて使った事例です。FreeBSDは今でこそ簡単に入れられますが、当時はX Windowのコンパイルに十数時間もかかりましたね。

――そのときにNTTPCコミュニケーションズに出向されたんですか?

そのときはNTTに籍を置きながら、NTTPCコミュニケーションズに技術支援をするという形でした。

インターネットを始めるにあたり、ダイヤルアップ認証のしくみを作らなければならなかったのですが、そもそも黎明期の超初期段階なので製品は存在せず、買ってくることもできない。そこで、RFCドラフト段階でのリファレンスコードでオープンソースだったLivingston RADIUSを研究しました。ただ、クライアントが数台ならともかく、大規模になるとそのままでは使えないんです。なので、ソースコードを読んで、内部でどう処理しているかを勉強しながら、いかに高速に処理するか、スケールさせるかを考えました。リファレンスコードを修正するというより、それをもとに再実装したというところです。

――再実装したコードを開示しなかったのですか?

開示しませんでした。OSSとして開示すると、自分たちでコミュニティを作り、ソースコードを維持管理していかなければならない。でも、当時のNTTPCコミュニケーションズには、それだけの体力がなかったんです。ソフトウェアを作って売ることを生業としているわけではなかったから。もちろん、Livingston RADIUSに限らず、利用したOSSにバグを見つけたら修正用のパッチを用意するといったフィードバックは行っています。

村上氏の自宅の実験室
村上氏から提供いただいた写真。「自宅の実験室です。見えているだけで13台のサーバがあります。ノートパソコン以外のコンピュータはすべて自作。IPv4/IPv6デュアルスタックでインターネットにつながり、クアッドコアなCPUたちがいっぱいいて、合計72TBのストレージシステムもあるので、ちょっとしたクラウド環境の疑似・検証はここでできます」(村上氏)

生き残っていくOSSを選定することが大事、その基準は?

――その後、お仕事はどう変わりましたか?

1995年1月にInfoSphereのサービスが開始しました。しかし、関連システムの開発を行うエンジニアがいない。そこでNTTPCコミュニケーションズに出向したんです。Eコマースサイト、VPNサービス、顧客管理サービスなど、多くを内部で開発しました。

当時は革新的・画期的だった国際ローミングシステムの開発も行いました。国内のシステムはSunに移行していましたが、予算のないNTTの海外現地法人はPCベースのシステム。最初はFreeBSDを使っていましたが、時代の流れで増えてきたLinuxもそこで初めて利用しました。

2004年までNTTPCコミュニケーションズに出向した後、3年ほどNTTでNGN(次世代ネットワーク)の技術企画に携わり、その後、2007年にNTTコミュニケーションズに移りました。そこではOCNのVoIPサービスなどの開発を行っていましたが、2008年頃からクラウドが流行り始めました。

――数年ごとに時代の風が吹いてくるようですね。

風はね、自分で見つけて乗るものですよ。NTTコミュニケーションズでクラウドサービスを開発しようとなったとき、利用する仮想化ソフトウェアの候補として挙がったのがXenとKVM(Kernel-based Virtual Machine)でした。私はKVMを推しましたが、私以外は皆Xenを推す。私から見ると、KVMは名前のとおり、カーネルに統合されており、美しいんですね。開発元のQumranetがRed Hatに買収されたこともあり、最終的にKVMを採用しました。

――Red Hatによる買収に意味があったのですか?

Xenの開発元であるXenSourceを買収したCitrixは営利企業で、Xenの商用版を提供しています。そのため、買収された後は、Xenそのものの開発があまり進まなくなりました(注:2013年、CitrixはXenプロジェクトをLinux Foundationに移管しています)。一方、Red HatはKVMをRed Hat Linuxに統合し、サポートを提供するだけ。しかもRed Hatのコミュニティは世界一です。OSSとしてどちらが良いかは一目瞭然ですね。

2010年4月に開始したクラウドサービス、Bizホスティング ベーシックは、KVMの他にもMySQL、PHP、Perlなど、ほぼすべてをOSSを利用して開発しました。OSSを利用するにあたっては、生き残っていくOSSを選定することが大事だと考えています。

――生き残るかどうかの判断基準は?

美しいか、美しくないか。わかりやすいか、わかりやすくないか。コミュニティがアクティブか、アクティブじゃないか。いろいろな基準があると思います。

――「わかりやすい」というのは「シンプル」ということですか?

そう、コンセプトにしろ、コードにしろ、シンプルで、ぱっと見たときにコミットしようと思うくらいに単純明快なわかりやすさがないとだめですね。

あとは、パッチやメジャー/マイナーバージョンのリリースの頻度とか、コミュニティで発言している人数とかがどれだけ多いかも結構重要だと思う。

次のページ
ドキュメントを直すだけでもいい、貢献したという経験が大切

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
キーパーソンインタビュー連載記事一覧

もっと読む

この記事の著者

坂井 直美(サカイ ナオミ)

SE、通信教育講座の編集、IT系出版社の書籍編集を経てフリーランスへ。IT分野で原稿を書いたり編集したり翻訳したり。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/9337 2016/03/29 16:06

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング