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

オープンソースは 1 つの連続体
オープンソース ソフトウェア / ソリューション(OSS)にかける Google の意気込みと、それぞれに必要とされる取り組み方の違いをいくつかご紹介します。
- Android など一部の OSS はオープンなコードベースを維持しつつ、開発は 1 つの組織が単独で行います。
- TensorFlow などのコミュニティ主導で変更が行われる OSS は多数の企業と個人の間の調整を必要とします。
- Linux や Kubernetes などのコミュニティ主導の戦略を持つ OSS には協調的な意思決定が求められ、「コントロール」よりも「コンセンサス」を受け入れる必要があります。
オープンソース ソフトウェアはさまざまな考え方と、ユーザーとの継続的なフィードバック ループを可能にします
オープンソースは Google にとって非常に重要なものであり、企業理念の中で 2 か所にわたり言及しています。また、従業員だけでなく、すべての開発者にオープンソースを導入するように推奨しています。
2019 年には、10,000 名を超える Google 社員が、GitHub と git-on-borg にホストされている 70,000 を超えるオープンソース リポジトリに積極的に関わりました。GitHub では、Google 社員は 570,000 を超える議題を作成し、150,000 を超える pull リクエストを開き、36,000 以上の push イベントを作成しました。Google の 2019 年のオープンソースへの投稿について詳しくは、ブログをご覧ください。
Linux、LLVM、Samba、Git といった皆様がご存知のプロジェクトにも Google 社員が積極的に参加しています。
Google では定期的に内部プロジェクトの一部をオープンソース化しています
Google が始めたプロジェクトの主なものをご紹介します。
Google はオープンな API の使用に積極的に取り組んでいます
オープンな API は、すべての人がお互いの成果を応用しながら、協力してソフトウェアの改良を繰り返すことを可能にします。また、企業や個人の開発者にサービス プロバイダの選択の自由を与えます。同業者の審査を受けたある調査によると、オープンな API は業界全体のどのエコシステムにおいてもイノベーションを加速させていることが明らかになっています。オープンな API では、独立していながら互換性のある実装を行うため、確立された API を再利用する権利が不可欠です。Google Cloud は、Open API イニシアチブへの参加、Open API 仕様への関与、gRPC のサポートを通して、さらには Cloud Bigtable の HBase API との互換性、Cloud Spanner と BigQuery の SQL:2011(拡張機能を含む)との互換性、Cloud Storage の共有 API との互換性を介して、オープンな API のサポートに尽力しています。
注目のオープンソース

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

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

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

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