オープン クラウドに価値を置く理由

オープン性により、革新の高速化、セキュリティの厳格化、ベンダー ロックインからの解放が実現されます。Google は、クラウドにおけるオープン性の重要性がこれまで以上に増していると認識しています。

オープンとはアプリを自由に移植できること

オープン クラウドは、特定のクラウドに縛られることが、目標達成の妨げになってはならないという信念に基づいています。オープン クラウドは、共通の開発および運用アプローチを使用しながらアプリを複数の異なるクラウドに配信することで、その時々で優先すべき目標の達成が容易になるという考え方を採用しています。それは目標がチーム全体の共通スキルを最大限に活用することであっても、イノベーションを急加速させることであっても変わりありません。オープンソースは、IT 投資の行方をお客様が自由に決定できるようにするという意味において、オープン クラウドを可能たらしめる要素のひとつです。多くのお客様がコンテナの管理に Kubernetes を、また機械学習モデルの構築に TensorFlow を採用し、オンプレミスと複数のクラウド上で同時にこれらを稼働させているのはその一例です。

オープンソースは 1 つの連続体

OSS に対する Google のコミットメントと、それぞれに必要とされる取り組み方の違いをいくつかご紹介します。

  • Android など一部の OSS はオープンなコードベースを維持しつつ、開発は 1 つの組織が単独で行います。
  • TensorFlow などのコミュニティ主導で変更が行われる OSS は多数の企業と個人の間の調整を必要とします。
  • Linux や Kubernetes などのコミュニティ主導の戦略を持つ OSS は協調的意思決定と「コントロールよりコンセンサス」の受け入れを必要とします。

オープンソース ソフトウェアはさまざまな考え方と、ユーザーとの継続的なフィードバック ループを可能にします

Google は、オープンソースをとても重要なものと位置づけており、企業理念の中で 2 回取り上げています。また、従業員とすべてのデベロッパーに、オープンソースに取り組むように奨励しています。

BigQuery を使用して GHarchive.org データを分析した結果、2017 年に 5,500 人を超える Google 社員が約 26,000 のリポジトリにコードを提供していました。作成した pull リクエストは 215,000 を超え、数え切れないほどのコミュニティに参加して、450,000 ものコメントをやり取りしていました。オープンソースに対する Google の貢献度の比較分析では、正規化されたデータに基づくオープンソースへの貢献度の高い企業の相対的な位置付けをご確認いただけます。

Linux、LLVM、Samba、Git といったプロジェクトは、皆様もその名前をお聞きになったことがあるかもしれません。Google 社員は、こうしたプロジェクトに積極的に参加しています。

Google は今までずっと、素晴らしいパートナーであり続けてきました。特に、自分が始めたわけではないプロジェクトのコミュニティにも熱心に参加する姿勢に感銘を受けています。

- Lyft 社エンジニア Matt Klein 氏

Google では定期的に内部プロジェクトの一部をオープンソース化しています

Google が始めたプロジェクトの主なものをご紹介します。

Google は オープンな API の使用に積極的に取り組んでいます

オープンな API は、すべての人がお互いの成果を応用しながら、協力してソフトウェアの改良を繰り返すことを可能にします。また、企業や個人の開発者にサービス プロバイダ選択の自由をもたらします。同業者による審査を受けた調査では、オープンな API が業界全体のあらゆるエコシステムにおいてイノベーションを加速させていることが明らかになっています。独立していながら互換性のある実装を作成することにより、確立された API を再利用する権利は、オープンな API の実現にとって不可欠です。Google Cloud は、Open API イニシアチブのメンバーシップ、Open API 仕様への関与、gRPC のサポートを通して、また、Cloud Bigtable の HBase API との互換性Cloud SpannerBigQuery の SQL:2011(拡張機能を含む)との互換性、Cloud Storage の共有 API との互換性を介して、オープンな API のサポートに尽力しています。

Google Cloud Next 2017(3 日目)のオープン性に関する基調講演を観る

注目のオープンソース

KUBERNETES

コンテナ オーケストレーション用のオープンソース システム

Google は、12 年以上にわたり研究・開発資源を投入した Kubernetes を完全にオープンソース化しました。緊密で方向性を持ったエンジニアリング、オープン性、そしてコミュニティ形成に向けた努力が相まって、Kubernetes を GitHub で最も活発なプロジェクトの 1 つにしています。このプロジェクトには 1,500 を超えるコントリビューターによる 45,000 件を超えるコミットがあり、それらは今も増え続けています。この驚異的なイノベーションの速度は、Kubernetes コミュニティにおける業界間のコラボレーションとリーダーシップの賜物です。Kubernetes オープンソース プロジェクトと、コンテナ化されたアプリケーションのデプロイに最適な環境であるマネージド サービスの Google Kubernetes Engine の詳細をご確認ください。

TENSORFLOW

機械学習用のオープンソース ライブラリ

2015 年に Google がオープンソース化して以来、TensorFlow は GitHub で最も活発な機械学習コミュニティになるととともに、機械学習ツールキットの分野でデファクトの地位を確立しました。このプロジェクトは人類にとって重要なものであるため、Google は、このプロジェクトをオープンソース化してすべての人がオープンに共同作業ができるようにする必要があると認識していました。TensorFlow オープンソース プロジェクトと、マネージド サービスである Google Cloud Machine Learning Engine の詳細をご確認ください。このサービスは、TensorFlow モデルを用いた大規模トレーニングをマネージド クラスタ上で実施するための最良の方法です。

ISTIO

マイクロサービスを接続するためのオープン プラットフォーム

Istio は、マイクロサービスを接続、管理、保護するための統一された方法を提供するオープン プラットフォームです。マイクロサービスのコードを変更することなく、マイクロサービス間のトラフィック フローの管理、アクセス ポリシーの適用、テレメトリー データの集計のすべてをサポートします。

ANDROID

Android では、機械学習を利用したウィルス検出やクラウド セキュリティから、AI を活用したスマートなコンテキスト アシストまで、Google の最新のイノベーションを活用できます。Android Enterprise モバイル管理のウェブページで詳細をご確認ください。