楽天が、同社のサービスの開発環境として利用するプライベートクラウドに、OpenStackの活用を積極的に進めている。システムデザインの自由度や運用の柔軟性の確保、インフラ構築の自動化や迅速化を狙ったものだ。

写真●楽天 Global Operations Department Data Store Platform Group 佐々木 健太郎氏
写真●楽天 Global Operations Department Data Store Platform Group 佐々木 健太郎氏
[画像のクリックで拡大表示]

 IaaS(Infrastructure as a Service)レベルのクラウド環境を構築できるOSS(Open Source Software)には、OpenStackやCloudStackなどがある。中でもOpenStackは、新機能の開発や機能拡張が急ピッチで進められており、半年ごとに新版がリリースされている。当初は荒削りな面も目立ったが、バージョンアップが進むに従って実用性が高まったことから、クラウドサービス事業者だけではなく、自社データセンターを持つ一般の企業からも大いに注目されるようになった。最近は、OpenStackを利用して、AWS(Amazon Web Services)と同じような感覚で使えるプライベートクラウドを構築する動きが本格化している。

 楽天が開発環境として利用するプライベートクラウドにOpenStackを選んだ理由について、同社の佐々木 健太郎氏(Global Operations Department Data Store Platform Group、写真)は、「REST APIを介した疎結合の構成にすることで俊敏性が得られると同時に、インフラの抽象化に伴って拡張性も担保される。技術ドリブンで開発されているOSSの活用を社内に推進することにもつながる」と説明する。

有償製品と組み合わせて使う

 楽天の場合、OpenStackをはじめとして、ビルドやデプロイを自動化するJenkins、コンテナー管理のDocker、サーバーの設定や管理を自動化するChefといったOSSも利用している。しかし、OSS一辺倒というわけではなく、実績ある有償製品とOSSのベストミックスによる構成を目指している。

 一般に、有償製品の利用が中心だった組織がOSSの活用に取り組む際には、どういったコードをオープンにするかなどのOSS戦略を立てる必要がある。楽天の場合、「Take advantage of global developers and open source」(世界の開発者やオープンソースのメリットを享受しよう)というメッセージのもと、開発したコードを積極的にパッチとして開発コミュニティーに還元するという方針を打ち出している。同社は社内公用語が英語なので、グローバルなOSS開発コミュニティーとの間に言語の壁がないことも、そうした活動をスムーズに進める上で役立っているという。

 佐々木氏は、手探りでOpenStackを使い始めたそうだ。参考になる資料が見つからなければソースコードを読んで調べ、利用する上で不可欠な機能などが存在しないなら独自に開発したという。「ITインフラSummit 2015」では、OpenStack導入の経緯やオープンソース開発のポイント、開発に必要なチームビルディングなどについて具体的に解説してもらう。現場でOpenStackの導入を進めている佐々木氏の講演から、OpenStackをはじめとするOSS活用のポイントが浮かび上がってくることだろう。