Edited at

Google Cloud Platform ブログの膨大な情報を自分なりに整頓してみた


この記事について

Google Cloud Platform Japan Blog では日々様々な情報が発信されています。新サービスの発表、事例紹介だけでなく、ポイントを分かりやすく説明した資料、網羅的で重厚な資料、Google の謎テクノロジーについての紹介など、役立つ情報が豊富! ただ、情報量がとてつもなく多いので、分野ごと、項目ごとに整頓して、後で目当ての記事をすぐ見つけられるようにしたいと思い、この記事を書きました。

今年は Google Cloud Platform 10 周年と節目の年。改めて記事を掘り起こしてみると、新たな発見があるかも知れません。

また、時代ごとの変遷を感じ取れる資料として、記事後半にはサービスが公開された時期を年表にしたもの、Google が公開している論文リンク集も付録として作成しました。


各分野の記事


サービス全体を俯瞰する記事


Google Cloud Platform の概要がわかる記事

Google Cloud では、多くの方に各サービスの勘所をわかりやすく紹介するために、オンラインの番組を毎週木曜に放映しています。生で見るだけでなく、後で見返すこともできます。

放映内容は後日 Google Cloud Platform Japan Blog にもアップされます。特に全体の概要がわかる放映回は次のものです。

また、数多くのサービスの概要を PDF 2 ページでまとめた資料もあります。


東京リージョンの開設

リージョンの開設も記事になることがあります。東京リージョンの開始は2016年11月8日です!


GCP の特徴、強み

他社クラウドと比較した違いや、GCP の特徴・強みについて書かれた記事です。強みとしては、ライブマイグレーションやプレウォーミングの必要のないロードバランサ、インスタンス起動時間、グローバルな SDN ベースの高速なネットワークなどについて書かれています。


マルチクラウド

一方で、単一のクラウドだけでなく複数のクラウドを使う時代にもなってきました。その時代での対応方針について書かれたのが次の記事です。(2016年の記事なので少し古いかもしれませんが・・)


オンプレミスからの移行

移行にあたってはプロセスに従って、抜け・漏れなく手堅く進めたいです。そのためのガイドラインも提供されています。


クラウドの利点を活かす

単に VM を移行するだけだとインフラの運用コストが残ったままです。マネージドサービスを活用することで運用コストを低減しつつ、開発に集中でき、スケーラビリティも手に入れることができます。その紹介がこちら。


実際に試してみる

技術は実際に手を動かして試してみないと、手にしっかり馴染まないです。まず、試してみるためのガイドが用意されています。


GCPUG

ディベロッパーコミュニティの活動も盛んです。私もお邪魔させていただき、多くのことを学ばせていただきました。最新情報や便利なオープンソースソフトウェア、組織内でどう回しているかなど、生きた知見を学べる場です。主催者の方たちは大変だと思うのですが、本当に感謝です。


Podcast

Podcast もあります。英語を聞く練習にもなります。。


GCP のアイコンとアーキテクチャ図

プレゼンや設計図の作成に利用できるアイコンとアーキテクチャ図のサンプルも提供されています。


事例

事例も紹介されています。いくつかピックアップさせていただきました。


セキュリティ


Google のセキュリティを俯瞰する記事

セキュリティに関する Google の取り組みや GCP で利用できるサービスを網羅的に俯瞰するには Cloud OnAir が便利です。


セキュリティはクラウドをためらう理由ではなく、導入する理由に

アジリティと経費削減だけではなく、今やセキュリティがクラウド選定の理由となる時代です。


クラウドの安全性、Google が取得している認証

エンタープライズでの選定に耐えうるには、第三者機関による認証が欠かせません。主要な認証を取得していると書かれているのが次の記事です。


Google 内部のセキュリティ設計

Google 内部でどのようなセキュリティ設計を行なっているかが書かれた記事です。階層的、網羅的に厳重な対策が行われています。

また、カスタムチップの Titan により、ハードウェアベースの “信頼の基点”(Root of Trust)が確立されています。その紹介記事がこちら。


GCP 利用におけるセキュリティのガイドライン

GCP を利用してサービスを構築する際、自組織内のポリシーをどのように設計するか、またどのように GCP のサービスを組み合わせてセキュリティを確立するかのガイドラインがこちらです。


Cloud IAM

IAM により権限の管理ができます。全体的なことについて書かれた記事がこちら。

より限定的な内容についての、プラクティスが書かれた記事がこちらです。

GCP では日々新機能がリリースされていますが、Compute Engine のより細かなリソースであったり日時でコントロールできる機能がリリースされています。


Cloud Identity-Aware Proxy

App Engine などの HTTPS でアクセスするアプリケーションに対して、アクセス制御ポリシーを組み込めるサービスです。ウェブサービスの前段にプロキシを配置して、そこにアクセス制御のコントロールを一任させるものです。


Cloud Endpoints

API 呼び出しの認証、認可を行うサービスです。


Cloud Armor

Cloud Armor は DDoS 攻撃への防御や IP アドレスベースのフィルタリングを設定できるサービスです。SQL インジェクション対策もアルファリリースで提供されているので、将来的にはアプリケーションレイヤも防護できるようになる?


Cloud KMS

暗号化、復号処理を行う鍵の管理を行うサービスです。


Cloud Audit Logging

監査ログを残すサービスです。


Cloud Security Command Center

自分の GCP プロジェクトに対してセキュリティの診断をし、可視化してくれるサービスのようです。


Cloud DLP API

リアルタイムに機密データの検出、分類、編集をしてくれるサービスのようです。定義済みの検出器があるほか、自分でカスタム検出器を定義することもできるようです。


技術的な対策の知見

クラウドの利用者としては知らなくてもいい知識も多いですが、勉強になる記事です。


コンピューティング


App Engine


歴史

App Engine は最古から存在する GCP のサービスで誕生から 10 周年になります。エンタープライズ向けのサーバインフラからではなく、開発にフォーカスした PaaS からスタートしているのが GCP らしいですね。ブログでは時々歴史に関する記事もポストされます。


概要を学ぶための資料


gVisor ベースの第二世代ランタイム

今年に入ってからのトピックとしては、gVisor ベースの第二世代ランタイムがサポートされるようになりました。


ランタイム

各言語のランタイムは新しいバージョンに対応していっています。


セキュリティ面の機能強化


事例


Compute Engine


概要をおさえる資料


マネージドインスタンスグループ

VM のデプロイ時にカナリアテストを行うなど、デプロイ方法の制御方法が豊富に用意されています。


管理に便利な機能

稼働中の VM インスタンスからイメージが作成できたり、削除からの保護といった有用な機能について書かれた記事です。

ディスクの高速データコピーには、スナップショットが便利という記事です。


起動高速化

プロファイリング方法や起動時間短縮方法について書かれた記事です。


ライブマイグレーション

謎の超技術の一つ。ゲスト VM に影響を与えず行われるマイグレーションについての記事です。


大規模利用

巨大なサイズの VM インスタンスは複数ノードに分散させるよりは一台に全て乗せたいケースに有用です。Intel Distribution for Python の scikit-learn を使用したときのパフォーマンス向上についても性能比のグラフが載せられています。

22 万コアて。。すごいです(小並感)。


Market Place

様々なオープンソースがプレインストールされた VM イメージが提供されています。なお、Cloud Launcher は現在は Market Place に改名されています。


Kubernetes Engine


歴史

Google が大きく関わっているプロダクトということもあり、歴史的な記事もいくつか掲載されています。


概要をおさえる資料

Cloud OnAir をはじめとして概要を知るための記事がこちら。


ソリューションガイド

マイクロサービスから、継続的デリバリのパイプラインまで、ソリューション設計に関するガイドです。


コンテナのセキュリティ

上記のガイドライン以外にもセキュリティに関する記事も公開されています。


Container Registry

Container Registry の脆弱性スキャン機能。イメージに脆弱性があるかどうかをスキャンし、結果をレポートしてくれるサービスです。


Spinnaker

継続的デリバリと継続的デプロイの違いは、本番環境へのデプロイに人手を介するかどうかです。Spinnaker は人による承認プロセスを挟むこともできます。継続的デリバリを実現するプロダクトです。


GitLab、GitHub からのデプロイ

GitLab から GKE にデプロイする方法が紹介されている記事です。

こちらの記事は Google Cloud Platform Japan Blog の記事ではないのですが、GitHub からも連携できるようになっています。


Cloud Services Platform

今年の 7 月に発表された Managed Istio、GKE On-Prem、Knative などに関する記事です。


マイクロサービスの開発例

API の公開にはマイクロサービスがぴったりです。この記事では、Kubernetes を使って構築した例が紹介されています。


事例


サーバレス

サーバレスと一言で言っても Function as a Service にとどまる話ではありません。Cloud OnAir の放送では Cloud Function を中心に据えつつも、幅広い観点から紹介しています。

こちらは Google のサーバレスに対する目指す姿、方向性が書かれた記事です。


Deployment Manager

インフラをコードで定義し、自動的に構築できるサービスです。


Infrastructure as Code


データ

Google では、ビッグをつけずに単にデータというらしいです。


データ分析基盤

全体像については Cloud OnAir が分かりやすいです。


データベースセキュリティ


Cloud Storage

ストレージクラスについての記事。長期アーカイブデータ用の Coldline でも瞬時にデータにアクセスできるのは驚きです。

パフォーマンス向上に関する Tips 集です。

データ保護のため、権限のチェック、機密データのチェック、対策のための行動、そしてこれらの行動を日常的に回すことについて、書かれた記事です。

Pub/Sub と連携できます。


Cloud SQL

今は第 2 世代が提供されています。競合サービスとの性能比較のデータも載っています。

こちらは 2014 年の記事です。

PostgreSQL も正式リリースを迎えています。


Spanner


サービスの概要


理論面の解説

従来の常識を覆すサービスということもあり、理論面の解説記事もあります。


事例


Bigtable


概要をおさえる資料


サービスの公開アナウンス

Google 社内での歴史からユースケースまで書かれています。


事例


Datastore


BigQuery


概要をおさえる資料


便利な機能や使い方


理論面の解説


事例


Data Studio


BigQuery のデータをダッシュボードで可視化


Dataflow


Dataproc


Pub/Sub


ネットワーク


概要


設計ガイド


海底ケーブル


ネットワークインフラの技術


HTTP/2


ロードバランサ


VPC


Cloud NAT


Dedicated Interconnect


CDN Interconnect


Network Service Tiers


機械学習


機械学習プロジェクトの進め方

要件定義からモデルの構築、運用までのライフサイクル全体に渡って、全体的な視点を提供してくれる資料です。

こちらは「機械学習とは何か、ディープラーニング、AI との違いは何か」のとっかかりの部分から理解するのに適した資料です。

他にも様々なガイドが提供されています。


AutoML


概要をおさえる資料


技術記事


事例


TensorFlow

GCP のサービスではないですが、Google の主要ソフトウェアということで・・


技術記事


事例


TPU

専用のプロセッサを用いることで、特定用途の計算を低消費電力で、高速に解くことができます。コストに対する性能比も高くなります。なお、Colaboratory でも無料で TPU を使うことができます。

技術面を掘り下げた記事が多いです。

Publickey の記事ですが、TPU 3.0 は液冷のようです。冷却効率が高く、かつ消費電力を抑えることができるので、電気代削減だけでなく、環境負荷にも考慮されたソリューションだと言えます。

また、Edge TPU はエッジ用の TPU です。エッジ側では使える電力や設置スペースが限られるなどの制約がありますが、それらの制約を克服しつつ高速な推論処理を行うことができます。


GPU

機械学習や HPC をはじめとして、GPU のコンピュータクラスタは需要が高まっています。GPU も利用可能です。


Dialogflow


事例


学習済みモデルの API

特定用途のモデルを作成するには自前で訓練する必要がありますが、学習済みモデルで事足りることもあります。


事例


Datalab


IoT


Develop


Cloud Shell


Cloud Source Repositories


API Design


gRPC


Stackdriver


SRE、CRE

SRE = Site Reliability Engineering(サイト信頼性エンジニアリング)、CRE = Customer Reliability Engineering(顧客信頼性エンジニアリング)です。実は、Google Cloud Platform Japan Blog にも多くの記事が投稿されています。また、書籍『SRE サイトリライアビリティエンジニアリング

――Googleの信頼性を支えるエンジニアリングチーム
」という分厚い本も出版されており、エラーバジェットをはじめとした様々な概念、そして信頼性を高めたりコントロールするためのプラクティスを学ぶことができます。


その他


データセンター


HPC


リリース時期

GCP の各サービスのリリース時期を並べた表です。

サービス名
リリースレベル
日付
記事

Google App Engine
-
2008/04/07
Introducing Google App Engine + our new blog

Cloud Storage
preview
2010/05/19
Google Storage for Developers: A Preview

BigQuery
preview
2010/05/19
BigQuery and Prediction API: Get more from your data with Google

GA
2011/11/14
Google BigQuery Service: Big data analytics at Google speed

Cloud SQL
preview
2011/10/06
Google Cloud SQL: your database in the cloud

GA
2014/02/11
Google Cloud SQL now Generally Available with an SLA, 500GB databases, and encryption

第2世代
2016/08/17
Cloud SQL Second Generation performance and feature deep dive

Google Compute Engine
preview
2012/06/28
Google Compute Engine launches, expanding Google’s cloud offerings

GA
2013/12/2
Google Compute Engine is now Generally Available with expanded OS support, transparent maintenance, and lower prices

Cloud Datastore
beta
2013/05/15
Ushering in the next generation of computing at Google I/O

GA
2016/08/16
Google Cloud Datastore serves over 15 trillion queries per month and is ready for more

Google Container Engine(現: Google Kubernetes Engine)
alpha
2014/11/04
Unleashing Containers and Kubernetes with Google Container Engine

GA
2015/08/26
Google Container Engine is Generally Available

Cloud DNS
GA
2015/04/13
Google’s network edge: presence, connectivity and choice for today’s enterprise

Cloud BigTable
beta
2015/05/06
Announcing Google Cloud Bigtable: The same database that powers Google Search, Gmail and Analytics is now available on Google Cloud Platform

GA
2016/08/18
Google Cloud Bigtable is generally available for petabyte-scale NoSQL workloads

Cloud VPN
GA
2015/05/20
-

Container Registry
GA
2015/06/22
Container Engine & Container Registry Updates - New Features & Pricing

Deployment Manager
GA
2015/07/22
-

Cloud Dataflow
GA
2015/08/12
Announcing General Availability of Google Cloud Dataflow and Cloud Pub/Sub

Cloud Pub/Sub
GA
2015/08/12
同上

HTTP(S) Load Balancing
GA
2015/10/29
Bringing you more flexibility and better Cloud Networking performance, GA of HTTPS Load Balancing and Akamai joins CDN Interconnect

Cloud Dataproc
GA
2016/02/23
Google Cloud Dataproc managed Spark and Hadoop service now GA

Cloud IAM
beta
2016/03/24
How Google is bringing cloud computing innovation to the enterprise

Cloud Shell
GA
2016/08/03
Cloud Shell now GA, and still free

Stackdriver Logging
GA
2016/10/20
Google Stackdriver is now generally available for hybrid cloud monitoring, logging and diagnostics

Cloud Natural Language API
GA
2016/11/15
Google Cloud Machine Learning family grows with new API, editions and pricing

Internal Load Balancing
GA
2016/12/08
Building scalable private services with Internal Load Balancing

Cloud Spanner
beta
2017/02/14
Introducing Cloud Spanner: a global database service for mission-critical applications

GA
2017/05/16
Cloud Spanner is now production-ready; let the migrations begin!

Cloud Container Builder(現: Cloud Build)
GA
2017/03/06
Google Cloud Container Builder: a fast and flexible way to package your software

Cloud Functions
beta
2017/03/09
Google Cloud Functions: a serverless environment to build and connect cloud services

GA
2018/07/19
Bringing the best of serverless to you

Cloud Datalab
GA
2017/03/10
100 announcements (!) from Google Cloud Next '17

Cloud Machine Learning Engine
GA
2017/03/08
同上

Cloud KMS
GA
2017/03/16
Cloud KMS GA, new partners expand encryption options

Translation API
GA
2017/04/06
-

Cloud Speech-to-Text API
GA
2017/04/18
Cloud Speech API is now generally available

Cloud Vision API
GA
2017/05/18
-

Cloud Source Repositories
GA
2017/05/25
Cloud Source Repositories: now GA and free for up to five users and 50GB of storage

Cloud Identity-Aware Proxy
GA
2017/08/31
Cloud Identity-Aware Proxy: a simple and more secure way to manage application access

Cloud Firestore
beta
2017/10/03
Introducing Cloud Firestore: Our New Document Database for Apps

Cloud Interconnect
GA
2017/10/23
Google Cloud Dedicated Interconnect gets global routing, more locations, and is GA

Video Intelligence API
GA
2017/11/30
-

Cloud AutoML
alpha
2018/01/17
Cloud AutoML: Making AI accessible to every business

beta
2018/07/19
-

Cloud TPU
beta
2018/02/12
Cloud TPU machine learning accelerators now available in beta

GA
2018/06/27
-

v2 GA
v3 alpha
2018/08/31
What makes TPUs fine-tuned for deep learning?

v3 beta
2018/10/10
-

Cloud IoT Core
GA
2018/02/21
The thing is . . . Cloud IoT Core is now generally available

Cloud Armor
beta
2018/03/19
Introducing new ways to protect and control your GCP services and data

Cloud Data Loss Prevention (DLP) API
GA
2018/03/21
Take charge of your sensitive data with the Cloud Data Loss Prevention (DLP) API

Dialogflow Enterprise Edition
GA
2018/04/17
Dialogflow Enterprise Edition is now generally available

Cloud Composer
GA
2018/07/19
What a week! 105 announcements from Google Cloud Next '18

Managed Istio
alpha
同上
同上

Cloud Talent Solution
GA
2018/08/03
-

Cloud Text-to-Speech API
GA
2018/08/28
Announcing updates to Cloud Speech-to-Text and the general availability of Cloud Text-to-Speech

Cloud Memorystore for Redis
GA
2018/09/19
Announcing general availability of Cloud Memorystore for Redis

Data Studio
GA
2018/09/21
Unlock insights with ease: Data Studio and Cloud Dataprep are now generally available

Cloud Dataprep
GA
2018/09/21
同上

Cloud Security Command Center
beta
2018/12/05
Cloud Security Command Center is now in beta and ready to use


論文

いくつかのプロダクトについては論文で詳細が公開されています。なお、一部の論文のポイントはグーグル合同会社の中井さんが連載で紹介してくださっています。

また、論文の一覧を表にしました。

プロダクト名
発行年
論文

Google File Sysytem
2003
The Google File System

Bigtable
2006
Bigtable: A Distributed Storage System for Structured Data

Chubby
2006
The Chubby lock service for loosely-coupled distributed systems

Dremel
2010
Dremel: Interactive Analysis of Web-Scale Datasets

FlumeJava
2010
FlumeJava: Easy, Efficient Data-Parallel Pipelines

Megastore
2011
Megastore: Providing Scalable, Highly Available Storage for Interactive Services)

Spanner
2012
Spanner: Google's Globally-Distributed Database

MilWheel
2013
MillWheel: Fault-Tolerant Stream Processing at Internet Scale

Borg
2015
Large-scale cluster management at Google with Borg

Borg
2016
Borg, Omega, and Kubernetes

Maglev
2016
Maglev: A Fast and Reliable Software Network Load Balancer


Google の方の資料

Google の歴史やテクノロジーの掘り下げには Google の方が作成された資料もあります。その一部を紹介させていただきます。


最後に

記事が膨大で力尽きつつあります。。

なお、筆者は Google の回し者ではありません。(というより、仕事でクラウドを使ったことがありません・・。使いたいです!)