SlideShare a Scribd company logo
Google confidential | Do not distribute
Google のインフラに見る基盤標準化と DevOps の真実
Etsuji Nakai
Cloud Solutions Architect at Google
2017/04/18 ver1.2
$ who am i
▪Etsuji Nakai
Cloud Solutions Architect at Google
Twitter @enakai00
https://www.dlmarket.jp/products/detail/501016
(同人誌)
Google における世界規模でのインフラ標準化
●
全世界のすべてのデータセンターで共通化されたインフラの提供
●
OS レイヤーを隠蔽して、アプリケーションレベルでの管理に集中
●
リソーススケジューラーによるアプリケーションデプロイの最適化
●
アプリケーションのオートスケールとサービスの抽象化
●
データストアとアプリケーションの分離
分散ソフトウェア技術で実現した
Datacenter as a Computer
ユーザー企業における IT の変遷
ユーザー企業における IT の変遷
1990   2000               2010
マルチベンダー環境の
インテグレーション
( SI によるワンストップ
サービス)
標準技術の採用で
ベンダーロックインを排除
シングルベンダーによる
ワンストップサービス
メインフレーム Unix 分散システム Linux/OSS オープンイノベーション
ユーザー企業が必要な技術を
自分で作り出す世界
コモディティ技術を
ベースとした技術革新
「専門家」に最適な技術を
提供してもらう世界
オープンイノベーションとは?
「オープンイノベーション」
コモディティ技術+組織を超えて生み出された知識・知見
を基礎とした技術革新
●
コモディティ技術を基礎として、新しい「アーキテクチャー」「開発手法」「ハードウェ
ア/ソフトウェア技術」を自ら作り出す。
⇒ 「自分たちが必要な技術は、自分たちが一番良く知っている」
●
成果をオープンコミュニティで共有して、技術の進化を加速する。
⇒ 「大切なのは技術そのものではなくて、それを活用する独自のノウハウ」
Google の技術が基礎となったオープンソースの例
●
Hadoop ( MapReduce を用いた分散データ処理基盤)
●
2004 年に Google が公開した MapReduce の論文を元に、外部のエンジニアが独自にオープンソー
スとして再実装
●
HBase (分散 Key-Value ストア)
●
2006 年に Google が公開した Bigtable に関する論文を元に、外部のエンジニアが独自にオープン
ソースとして再実装
●
Apache Beam (ストリーミング型分散データ処理ライブラリ)
●
Google が社内で独自開発していた MillWheel, FlumeJava の知見を元に、 Google のエンジニアが
オープンソースとして新規実装。 Cloud Dataflow の処理基盤上で利用可能。
●
Kubernetes (コンテナオーケストレーション・システム)
●
Google が社内で独自開発していた Borg, Omega の知見を元に、 Google のエンジニアがオープンソ
ースとして新規実装。
●
TensorFlow (機械学習のソフトウェアライブラリ)
公開論文から読み解くインフラ技術の「思想」
▪ 「謎技術」の実体は、徹底的な合理主義 
▪ 「技術的制約」に対する恐ろしいほどの洞察力
●
この制約を受けいれることが何が可能になるのか?
●
この制約を打破することで何が可能になるのか?
https://research.google.com/pubs/papers.html
http://www.school.ctc-g.co.jp/columns/nakai2/
DevOps の視点で考える標準化
そもそも DevOps って何でしたっけ?
▪ 開発チームと運用チームが一緒に会議すること?
▪ 開発チームが運用までやっちゃうこと?
▪ 運用チームがコードを書いて開発すること?
https://ja.wikipedia.org/wiki/DevOps
http://itpro.nikkeibp.co.jp/article/COLUMN/20131113/517746/
http://www.atmarkit.co.jp/ait/articles/1307/02/news002.html
Site Reliability Engineer
▪ Google の運用チームの名称
●
開発者と同じスキルセット+インフラの知識
●
運用作業 + 運用効率を改善するためのコード開発
●
運用作業は、業務時間の 50% 以下に制限
理想の DevOps を実現するための隠された視点
▪ レイヤーごとの責任分界点を明確にすることで、「本質的でない依存関係」をな
くして、全体最適化を実現
●
無駄な依存関係がないからこそ、インフラ・開発・運用の 3 チームが健全な協力関係を
確立可能に
▪ その上で「真に重要な依存関係」に叡智を結集
●
スケーラブルで運用効率性の高いアプリケーションに
必要なインフラ技術の提供
●
運用段階での効率性や安定性、スケーラビリティの確
保を前提としたインフラ/アプリケーションの設計
基盤開発
アプリケーション開発
運用
アプリケーション開発に真に必要な
コンポーネントを厳選して開発・提供
Google が開発した分散ソフトウェア技術の例
▪ 全世界のデータセンターで共通化されたインフラの提供
▪ スケーラブルで運用効率性の高いアプリケーションを実現する機能を提供
▪ インフラを隠蔽して、アプリケーションレベルでの開発/管理に集中
Google のインフラを一般開放した Google Cloud Platform
VIRTUAL NETWORK
LOAD BALANCING
CDN
DNS
INTERCONNECT
Management Compute Storage Networking Data
Machine
Learning
STACKDRIVER
IDENTITY AND
ACCESS
MANAGEMENT
CLOUD ML
SPEECH API
VISION API
TRANSLATE API
NATURAL
LANGUAGE API
技術者に向けたメッセージ
▪ インフラを構成するソフトウェアの特性を深く理解して、最適なアプリケーシ
ョン・アーキテクチャーを見極めることが重要
▪ それぞれの技術要素を根本から理解して、システム全体のアーキテクチャーを
俯瞰できる能力が必要
https://github.com/GoogleCloudPlatform/gke-gobang-app-example http://www.slideshare.net/strsk/google-container-engine-kubernetes
●
重要なのは、役割ではなく、知識範囲
としてのフルスタック
技術を根本から理解して使いこなす喜び
https://www.youtube.com/watch?v=H-tZUZGBo60&start=8540
http://togetter.com/li/1046340?page=6
まとめ
理想の DevOps を実現するための隠された視点
▪ レイヤーごとの責任分界点を明確にすることで、「本質的でない依存関係」をな
くして、全体最適化を実現
●
無駄な依存関係がないからこそ、インフラ・開発・運用の 3 チームが健全な協力関係を
確立可能に
▪ その上で「真に重要な依存関係」に叡智を結集
●
スケーラブルで運用効率性の高いアプリケーションに
必要なインフラ技術の提供
●
運用段階での効率性や安定性、スケーラビリティの確
保を前提としたインフラ/アプリケーションの設計
基盤開発
アプリケーション開発
運用
SRE基盤開発チーム
決して「謎技術」ではありません!
Google のインフラを一般開放した Google Cloud Platform
VIRTUAL NETWORK
LOAD BALANCING
CDN
DNS
INTERCONNECT
Management Compute Storage Networking Data
Machine
Learning
STACKDRIVER
IDENTITY AND
ACCESS
MANAGEMENT
CLOUD ML
SPEECH API
VISION API
TRANSLATE API
NATURAL
LANGUAGE API
Google Cloud Platform ユーザー事例(一部)
▪ 株式会社テレビ朝日の導入事例 : ニュースポータル「 favclip 」の先進的な開発環境を Google App Engine が支える
●
https://cloudplatform-jp.googleblog.com/2017/01/tv-asahi-favclip-google-app-engine.html
▪ AbemaTV での GKE 運用事例のご紹介
●
http://ameblo.jp/principia-ca/entry-12164657818.html
▪ 株式会社ディー・エヌ・エーの導入事例:エンジニアを開発に集中させるために Google App Engine を起用!
●
https://cloudplatform-jp.googleblog.com/2016/12/google-app-engine.html
▪ 株式会社メルカリの導入事例 : 先端技術を手軽に活用できる Google Cloud Platform はベストな選択肢
●
https://cloudplatform-jp.googleblog.com/2016/10/google-cloud-platform_28.html
▪ 株式会社 gloops の導入事例: ログ解析を Google BigQuery に移行してコストを 1/100 に。
●
https://cloudplatform-jp.googleblog.com/2016/08/gloops-google-bigquery-1100.html
Thank you!

More Related Content

PDF
「ITエンジニアリングの本質」を考える
PDF
Googleのインフラ技術から考える理想のDevOps
PDF
アジャイルプラクティス導入事例
PPTX
First git ops
PDF
TensorFlowプログラミングと分類アルゴリズムの基礎
PPTX
深層学習 環境構築 Azure
PDF
わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48
PPTX
Dockerのネットワークについて
「ITエンジニアリングの本質」を考える
Googleのインフラ技術から考える理想のDevOps
アジャイルプラクティス導入事例
First git ops
TensorFlowプログラミングと分類アルゴリズムの基礎
深層学習 環境構築 Azure
わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48
Dockerのネットワークについて

What's hot (20)

PDF
ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43
PDF
KubeFlowでどこまでいける?
PDF
GPU Container as a Service を実現するための最新OSS徹底比較
PDF
PFN 深層学習事例紹介、PFN/MSアライアンス テクノロジーアップデート
PDF
オルターブースが実践する .NET Core “ガチ” 開発
PDF
”試してみた”で終わらない サーバーレスアプリケーションの実践開発
PPTX
ニフクラでも できる!Kubernetes。
PDF
Kuberneteの運用を支えるGitOps
PDF
ChainerMNが即座に使える環境を提供するXTREME DNA HPC Cloud
PPTX
PFN x Microsoft Alliance
PDF
ダイ・ハード in the Kubernetes world
PDF
Visual StudioやAzureからAzure DevOpsを使う
PDF
C#ユーザー会 //build/ まとめ(サーバー編)
PPTX
[OCPJ PoCWG Engineering Workshop] Zabbixを用いたOCPベアメタル監視環境の自動構築
PDF
AzureDevOps ユーザーストーリーを作ってみよう - 201904
PPTX
「DevOps with GitLab」でDevOps環境をセットアップしてみた!
PPTX
Deep Learning Lab コミュニティ 企画概要
PDF
コンテナ導入概要資料2018
PDF
クラウドを最大限活用するinfrastructure as codeを考えよう
ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43
KubeFlowでどこまでいける?
GPU Container as a Service を実現するための最新OSS徹底比較
PFN 深層学習事例紹介、PFN/MSアライアンス テクノロジーアップデート
オルターブースが実践する .NET Core “ガチ” 開発
”試してみた”で終わらない サーバーレスアプリケーションの実践開発
ニフクラでも できる!Kubernetes。
Kuberneteの運用を支えるGitOps
ChainerMNが即座に使える環境を提供するXTREME DNA HPC Cloud
PFN x Microsoft Alliance
ダイ・ハード in the Kubernetes world
Visual StudioやAzureからAzure DevOpsを使う
C#ユーザー会 //build/ まとめ(サーバー編)
[OCPJ PoCWG Engineering Workshop] Zabbixを用いたOCPベアメタル監視環境の自動構築
AzureDevOps ユーザーストーリーを作ってみよう - 201904
「DevOps with GitLab」でDevOps環境をセットアップしてみた!
Deep Learning Lab コミュニティ 企画概要
コンテナ導入概要資料2018
クラウドを最大限活用するinfrastructure as codeを考えよう
Ad

Viewers also liked (20)

PDF
PRML11.2-11.3
PDF
Introducton to Convolutional Nerural Network with TensorFlow
PDF
Googleにおける機械学習の活用とクラウドサービス
PDF
MySQL Fabric with OpenStack Nova
PDF
OpenStack Neutron IPv6 Lessons
PDF
[CEDEC+KYUSHU 2017] 最新モバイルゲームの実例からみるUE4のモバイル向け機能・Tipsを全部まるっとご紹介! + UE4.18 モバイ...
PPTX
RDBのDBAから見た GCP Managed Database
PDF
GitHubとクラスメソッド勉強会資料_DevOpsとAWS
PDF
Ansible npstudy-shtsuchi
PDF
英語が苦手な人もre:Inventを乗り切れるか?
PPTX
Zabbixによるオートスケーリングクラスタ監視とオペレーション自動化
PDF
[ICLR2017読み会 @ DeNA] ICLR2017紹介
PDF
Semi-Supervised Classification with Graph Convolutional Networks @ICLR2017読み会
PDF
ICLR読み会 奥村純 20170617
PPTX
医療データ解析界隈から見たICLR2017
PDF
言葉のもつ広がりを、モデルの学習に活かそう -one-hot to distribution in language modeling-
PDF
ICLR2017読み会 Data Noising as Smoothing in Neural Network Language Models @Dena
PDF
170614 iclr reading-public
PPTX
当たり前を当たり前に:Agile2017レポート
PDF
PRML11.2-11.3
Introducton to Convolutional Nerural Network with TensorFlow
Googleにおける機械学習の活用とクラウドサービス
MySQL Fabric with OpenStack Nova
OpenStack Neutron IPv6 Lessons
[CEDEC+KYUSHU 2017] 最新モバイルゲームの実例からみるUE4のモバイル向け機能・Tipsを全部まるっとご紹介! + UE4.18 モバイ...
RDBのDBAから見た GCP Managed Database
GitHubとクラスメソッド勉強会資料_DevOpsとAWS
Ansible npstudy-shtsuchi
英語が苦手な人もre:Inventを乗り切れるか?
Zabbixによるオートスケーリングクラスタ監視とオペレーション自動化
[ICLR2017読み会 @ DeNA] ICLR2017紹介
Semi-Supervised Classification with Graph Convolutional Networks @ICLR2017読み会
ICLR読み会 奥村純 20170617
医療データ解析界隈から見たICLR2017
言葉のもつ広がりを、モデルの学習に活かそう -one-hot to distribution in language modeling-
ICLR2017読み会 Data Noising as Smoothing in Neural Network Language Models @Dena
170614 iclr reading-public
当たり前を当たり前に:Agile2017レポート
Ad

Similar to Googleのインフラ技術に見る基盤標準化とDevOpsの真実 (20)

PDF
39 works:ドコモにおける オープンイノベーションプログラムの紹介
PDF
Google for Mobile: Google スケールで構築する! ゲームインフラと分析環境 - 橋口 剛
PDF
大企業におけるイノベーションはどうやって起こす?@立命館大学
PDF
オープンソースのトレンドとビジネス活用2014 〜メリットと安心・安全に活用するポイント〜
PDF
活動報告とビーコンITの取り組み
PDF
Google Cloud Platformのエンタープライズ最新活用事例
PPTX
大規模分散システムの現在 -- GFS, MapReduce, BigTableはどう変化したか?
PPTX
OSS Market Momentum In Japan
PPTX
20201023 Builders Box 2nd Enterprise Architect
PDF
20141018 osc tokyo2014講演(配布用)
PDF
Intel presentation at cloudian seminar 2014
PDF
2023/10/30_CloudOperatorDaysTokyo_開発チームと共に取り組むGCPリソースのGitOps化実践
PDF
マイクロサービスに至る歴史とこれから - XP祭り2021
PDF
Open stack概要 lpi-opcelサミット(当日用)
PDF
オープンアーキテクチャ,オープンソースソフトウェア時代の標準化フレームワークを使用したプロジェクトマネジメント
PDF
【S 1】「クラウドが破壊するもの、創造するもの」新野淳一氏
PDF
Microsoft open tech night 2020 feb18
PDF
Cloud Days Tokyo 2015 "オンプレミス環境のクラウド化と運用を楽にする OpenStack ソリューション ~ハイブリッド・クラウドを...
PDF
Microsoft MVP から見たクラウド サービスの現状と今後について
 
PDF
【HinemosWorld2014】B1-4_NTTデータ先端技術のOpenStack Hinemosソリューション
39 works:ドコモにおける オープンイノベーションプログラムの紹介
Google for Mobile: Google スケールで構築する! ゲームインフラと分析環境 - 橋口 剛
大企業におけるイノベーションはどうやって起こす?@立命館大学
オープンソースのトレンドとビジネス活用2014 〜メリットと安心・安全に活用するポイント〜
活動報告とビーコンITの取り組み
Google Cloud Platformのエンタープライズ最新活用事例
大規模分散システムの現在 -- GFS, MapReduce, BigTableはどう変化したか?
OSS Market Momentum In Japan
20201023 Builders Box 2nd Enterprise Architect
20141018 osc tokyo2014講演(配布用)
Intel presentation at cloudian seminar 2014
2023/10/30_CloudOperatorDaysTokyo_開発チームと共に取り組むGCPリソースのGitOps化実践
マイクロサービスに至る歴史とこれから - XP祭り2021
Open stack概要 lpi-opcelサミット(当日用)
オープンアーキテクチャ,オープンソースソフトウェア時代の標準化フレームワークを使用したプロジェクトマネジメント
【S 1】「クラウドが破壊するもの、創造するもの」新野淳一氏
Microsoft open tech night 2020 feb18
Cloud Days Tokyo 2015 "オンプレミス環境のクラウド化と運用を楽にする OpenStack ソリューション ~ハイブリッド・クラウドを...
Microsoft MVP から見たクラウド サービスの現状と今後について
 
【HinemosWorld2014】B1-4_NTTデータ先端技術のOpenStack Hinemosソリューション

More from Etsuji Nakai (20)

PDF
Spannerに関する技術メモ
PDF
A Brief History of My English Learning
PDF
TensorFlowによるニューラルネットワーク入門
PDF
Using Kubernetes on Google Container Engine
PDF
Lecture note on PRML 8.2
PDF
Machine Learning Basics for Web Application Developers
PDF
Your first TensorFlow programming with Jupyter
PDF
Deep Q-Network for beginners
PDF
Life with jupyter
PDF
TensorFlowで学ぶDQN
PDF
DevOpsにおける組織に固有の事情を どのように整理するべきか
PDF
PRML7.2
PDF
インタークラウドを実現する技術 〜 デファクトスタンダードからの視点 〜
PDF
Exploring the Philosophy behind Docker/Kubernetes/OpenShift
PDF
「TensorFlow Tutorialの数学的背景」 クイックツアー(パート1)
PDF
Docker活用パターンの整理 ― どう組み合わせるのが正解?!
PDF
Open Shift v3 主要機能と内部構造のご紹介
PDF
Docker with RHEL7 技術勉強会
PDF
分散ストレージソフトウェアCeph・アーキテクチャー概要
PDF
OpenStackとDockerの未来像
Spannerに関する技術メモ
A Brief History of My English Learning
TensorFlowによるニューラルネットワーク入門
Using Kubernetes on Google Container Engine
Lecture note on PRML 8.2
Machine Learning Basics for Web Application Developers
Your first TensorFlow programming with Jupyter
Deep Q-Network for beginners
Life with jupyter
TensorFlowで学ぶDQN
DevOpsにおける組織に固有の事情を どのように整理するべきか
PRML7.2
インタークラウドを実現する技術 〜 デファクトスタンダードからの視点 〜
Exploring the Philosophy behind Docker/Kubernetes/OpenShift
「TensorFlow Tutorialの数学的背景」 クイックツアー(パート1)
Docker活用パターンの整理 ― どう組み合わせるのが正解?!
Open Shift v3 主要機能と内部構造のご紹介
Docker with RHEL7 技術勉強会
分散ストレージソフトウェアCeph・アーキテクチャー概要
OpenStackとDockerの未来像

Googleのインフラ技術に見る基盤標準化とDevOpsの真実