ページの先頭です。
サイト内の現在位置を表示しています。
  1. ホーム
  2. ソリューション・サービス
  3. NEC Cloud Solutions
  4. NEC Cloud System (OSS構築モデル)
  5. OpenStackコミュニティで活躍するコアデベロッパーの声
ここから本文です。

NEC Cloud System (OSS構築モデル)

OpenStackコミュニティで活躍するコアデベロッパーの声

クラウド基盤を構築するOSS(Open Source Software)として、重要な役割を果たすOpenStack。さまざまなプログラム開発のプロジェクトで、キーパーソンとなるのがコアデベロッパーの存在です。コアデベロッパーの役割とは?OpenStack普及・発展に向けた意気込みとは?
世界中からメンバーが参加して開発を行うOpenStackコミュニティにおけるコアデベロッパーの実像に迫ります。

元木 顕弘
NECクラウドプラットフォーム事業部
OSS推進センター 主任

大塚 元央
NECソリューションイノベータ
第四PFソリューション事業部 主任

OpenStackコミュニティはソースコードだけでなく、
開発環境や組織、意見交換もオープン。

まず初めに、OSSとOpenStackの概要について、簡単に教えてください。

  • 元木OSSは、オープンソース・ソフトウェアの略称です。誰でも自由に参照したり、自由に利用したりできるOSSは現在、OS、クラウド、ネットワーク、そしてアプリケーションなど、ICTシステムのさまざまな領域で活用されています。私たちが開発しているOSSであるOpenStackは、仮想マシン、ストレージ、ネットワークなどを連携してクラウド環境を構築するミドルウェアです。
  • 大塚OpenStackコミュニティでは、オープンなソースコードを使用するだけではなく、オープンな開発環境、オープンな組織や意見交換など、コミュニティ活動の全体をオープンにするという姿勢があります。オープン性を高めることでOpenStackの進化も加速します。

OpenStack活用によって、クラウド構築はどう変わるのでしょうか?

  • 大塚ひと言でいうと、ベンダに対する依存度が下がります。ソフトウェア利用に対するライセンス料金、機能強化やバージョンアップのサイクルなど、特定ベンダからの制約を減らして、TCO削減や機能強化のスピードアップが可能になります。
  • 元木OpenStackを使うと、必要な場所にクラウド環境を構築でき、クラウドのメリットをパブリッククラウド以外でも活用できるようになります。クラウドの本質はAPIによる連携であり、OpenStackはオープンでスタンダードなAPIを提供しているので、いろいろなシステムとの連携も容易に実現できます。このあたりがNFV分野でもOpenStackが注目されている理由の1つだと思います。

プログラム開発者の視点に加え、クラウド基盤の
運用者、利用者としての視点も大切。

OpenStack開発における、コアデベロッパーの役割とは何ですか?

  • 元木OpenStackコミュニティにはさまざまなOpenStack 開発プロジェクトがあり、世界各地にいるメンバーたちがそれぞれのプロジェクトに参加して開発を進めています。参加メンバーは小さなプロジェクトで10数人、大きな開発プロジェクトではその数が300人にも上ります。
    プロジェクトの規模によって数人から10数人のコアデベロッパーが存在します。コアデベロッパーは自身で開発も行いますが、他のメンバーとのいちばん大きな違いは、参加メンバーが書いたソースコードをプログラムとしてマージする権限を持っていることです。すなわち、プロジェクトのソースコードに対して責任を持っているということです。コミュニティは信頼の輪であり、実績が認められコミュニティで信頼が得られると、他のコアデベロッパーから推薦されコアデベロッパーになります。
  • 大塚コミュニティではメンバーのオープンな信頼関係が大切です。コアデベロッパーがソースコードを書いた場合でも、他のメンバーにチェックしてもらって、OKが出たコードを採用します。OpenStackコミュニティのプログラム開発では、メンバーたちからさまざまな意見や考えが寄せられます。世界中から集まるすべての意見を取り入れると議論がまとまらなくなり、開発の方向性が定まらないこともあります。そのため、メンバーたちから意見を聞きながらプロジェクト全体として考え方を整理し、開発の方向性を示していくのもコアデベロッパーの大切な役目です。

コアデベロッパーとしての、お二人の具体的な活動を教えてください。

  • 元木ネットワーク部分を担当する「Neutron」とGUIである「Horizon」のコアデベロッパーとして活動しています。NeutronはSDNと密接に関係するプロジェクトで非常に活発に開発が行われています。Neutron全般の活動に関わっていますが、その中でも特にAPIやCLIといったユーザに見える部分に重点を置いて活動しています。クラウドの本質はシステム連携を支えるAPIにあると考えているのが大きな理由です。
    開発者として活動する一方、お客様のOpenStackを使ったプライベートクラウド基盤の構築・運用にも携わっています。運用者の立場も理解しながら、開発に携わっていくことはOpenStack全体の発展においても大事なことだと考えています。
  • 大塚クラウド活用では、いま「コンテナ」という技術が大きな注目を集めています。コンテナは1つのOS環境の中に分離した空間(コンテナ)を作成して、分離した空間ごとに異なるアプリケーションの実行環境を構築する技術です。コンテナ技術を使うと、仮想マシンに近い環境づくりを軽量化することができます。また、1つの空間の中に必要な環境をまるごと集約したコンテナは独立しているため、異なるバージョンのライブラリや実行環境が混在する環境を、1つのOS環境に集約できるというメリットがあります。さらに、軽量化によるポータビリティ性の高さや起動の早さは、クラウド運用を楽にしてくれる効果もあります。私は現在、OpenStackにおけるコンテナ技術の実装のキモとなる「Magnum」というプロジェクトに、コアデベロッパーとして参画しています。 
    元木と同様に、私にもプログラム開発者とは別の役割があります。NECには、「NEC Cloud IaaS」というOpenStackを採用したクラウド基盤サービスがあります。私は、NEC Cloud IaaSを利用したアプリケーション提供の業務も行っています。開発者だけでなく、利用者としての立場からもOpenStackに触れることで、OpenStackの今後の改善や品質強化に役立てて行きたいと思っています。

OpenStackのプログラムを活用する喜びや満足を、
世界中の人々に拡げたい。

コアデベロッパーとしての仕事のやりがい、開発への意気込みとは何ですか?

  • 元木私自身はクラウドの本質はAPIにあると考えています。APIを活用することで他のアプリケーションやシステムとの連携が可能になります。クラウドを支えるAPIをどのようにデザインしていくか、機能をモデリングしていくか、という点は興味深い部分です。これによってOpenStack自身の使い勝手も大きく変わって来ます。また、OpenStackコミュニティにおける、いろんな意見や知らない技術との出会いは、開発者としてとても刺激的で励みになりますね。
  • 大塚私は、チマチマと(笑)進めるプログラムの開発作業が好きです。やりがいは、自分で作ったプログラムをたくさんの人が認めてくれて、使う人が増えること。世界の人たちを喜ばせたり、アッと驚かすようなプログラムを開発したいです。海外のメンバーとの意見のやりとりは、チャットやメーリングリストを使って英語で行いますが、時差の開きが大きいアメリカとのやりとりがけっこう大変です。

最後に、お二人の今後の取り組みについて教えてください。

  • 元木Neutron などのコアデベロッパーとして開発コミュニティでの活動は継続していきます。その一方で、Neutronだけにとらわれずに、クラウドやコンテナなどの活用、運用性向上という一段上の観点から、OpenStackなどでの技術開発を進めていきたいと思っています。
    OpenStackでは個々のプロジェクトはかなり完成度が上がってきていますが、全体として見るとまだまだ不足している部分があるのも事実です。その意味では様々なプロジェクトにまたがる活動が増えていくと思います。
  • 大塚開発中であるMagnumのいち早い実用化を目指します。Magnumを使って、コンテナ技術をクラウド基盤に実装したサービスを、利用者の皆さんにできるだけ早く提供できるように力を注いで行きます。Magnumの活用実績を生み出すことで、コンテナ技術の導入が一段と加速・拡大すると期待しています。