Google Cloud Platform Japan Blog
最新情報や使い方、チュートリアル、国内外の事例やイベントについてお伝えします。
Google の新しい専門職 : CRE が必要な理由
2016年10月19日水曜日
私がテクノロジーにかかわるようになってから 25 年が経過しましたが、その間にほぼすべてのことが変化しました。研究室にあったコンピュータは今や私たちのポケットの中にあり、四六時中つながっている状態です。そして、こうしたコンピュータを使えば、最も楽観的なサイエンス フィクションに匹敵するようなことまで可能になりつつあります。
25 年前と同じようなものはほとんど存在しません。ただ、カスタマー サポートだけは別です。サポートは(基本的に)今でもコール センターでヘッドセットを付けた人たちが担当しています。
新しい世界では、そのような古いモデルは不十分です。私たち Google はそんな状況を変えたいと考えています。
Google は先ごろ、Customer Reliability Engineering(CRE : 顧客信頼性エンジニアリング)という新しい専門職を
発表
しました。この新たな役職に就く人のミッションは、Google と
Google Cloud Platform
のお客様とが運用に関して運命共同体となり、お客様が Google に委ねている重要なアプリケーションに対するお客様側の管理権限を高め、金銭的なものよりも意義のある運命を共有することにあります。
お客様が感じる不安
クラウドを導入している組織を外から見ていると、非常に不安を感じているのがよくわかります。
その妥当な理由を把握するまで少し時間がかかりましたが、最終的に次のような考えに落ち着きました。
人は、自分の環境を管理したいと進化的に思ってしまうのです。これは、生き抜くための特性として本当に価値のあることです。そのため管理できないと感じると、あまりいい反応を示さなくなります。危険度が高ければ高いほど、管理できないことに対して、より大きく反応してしまいます。
ここで、基本的なパブリック クラウドのビジネス モデルを考えてみましょう。これを要約すると、次のようになります。
「物理的なインフラと(ある程度の)データを管理することは断念しましょう。不安が生じますが、その代わりクラウドによってさらに大きなイノベーションを得ることができ、コストが低減し、セキュリティは高まり、安定性も増します」
完全に合理的な取引ですが、私たちの中にある最も進化的な衝動の 1 つに逆らうことになります。お客様がこのビジネス モデルに不安を感じるのも当然です。
私は過去 5 ~ 6 年の間に、安価な料金と引き換えに不安を飲み込むことをよしとしないお客様がたくさんいることを学びました。特にクラウドに関しては、ほとんどの企業で危険が伴うため、なおさらです。ところが、クラウド業界はこうした現状を理解するための取り組みを十分に進めているとはいえず、すでに一部の著名な企業はオンプレミスに戻ってしまっています。
クラウド プロバイダーは、この危機的状況を自らの意思で無視しています。クラウドを導入していない圧倒的多数の企業にアプローチするには、こうした不安に対応することが必須条件の中心となるにもかかわらず、そのことから目を背けているのです。
サポート チームのミッションとは
組織内におけるサポート チームの役割は、以前は非常にわかりやすいものでした。質問に答え、問題を素早く効率的に解決することです。しかし今では、すべての IT サポート チームの役割は、結局のところほぼ FAQ やヘルプ センター、確認リスト、手続きといったものになっています。
クラウド テクノロジーの時代において、これは完全に間違っています。
不安を抱えるお客様は、その気持ちを理解してもらいたいと考え、思いやりや人間性を求めているのです。「そう感じているのは自分たちだけではなく、プロバイダーも自分たちのことを真剣に考えている」といったことを感じ取りたいのです。何と言っても、お客様は私たちのプラットフォームやツールにビジネスを委ねているのですから。
今、この時代において、真に適切なサポート チームのミッションはたった 1 つです。それは、お客様の不安をゼロにすることなのです。
人は不安がなければ、うまく動いているプラットフォームから真剣に移行するために時間を費やし努力しようなどとは考えません。移行の決断に至るのは、払拭できない不安から始まるのです。
不安は 1 を信頼性で割った数値に等しい
お客様が不安を感じる最も大きな原因が信頼性であることは間違いありません。ただし、目に見えにくい原因も存在します。
クラウドを利用しているお客様は、実際あまりクラウド プロバイダーの信頼性を気にしてはいません。それよりも、製品化されているアプリケーションの信頼性を気にしているのです。稼働しているクラウドの信頼性については、間接的に気にしているに過ぎません。
アプリケーションの信頼性は、次の 2 つによって成り立ちます。
クラウド プロバイダーの信頼性
アプリケーションのデザインやコード、運用などに内在する信頼性
1. については、すでに業界内でも課題として認識されています。大手クラウド プロバイダーでは、この課題のみに対応するエンジニアを何千人も雇っているほどです。
Google はこの分野の専門職を作り上げた草分け的存在で、Site Reliability Engineering(SRE : サイト信頼性エンジニアリング)という専門職を設けています。
ちなみに、この SRE については書籍も出版されています。
では、2. についてはどうでしょうか。製品化されたアプリケーションのデザインや実装、運用に内在する信頼性に関して、誰か気にかけている人はいるのでしょうか。
今のところ、気にかけているのはお客様だけです。
ところが、これに対する業界内での標準的な回答は次のとおりです。
「ここにホワイト ペーパーや成功事例があり、コンサルタントもいます。あまり変なことをしなければ、アプリケーションもまあ大丈夫ですよ」
クラウド業界ではお客様に対し、私たちのプラットフォームに生計を預けてくださいと提案します。ビジネス パートナーになりましょう、そして管理することは断念してくださいとお願いします。その代わり私たちは、…… ホワイト ペーパーを提供しますから、と言うのです。
お客様が不安に思うのも、ごもっともです。というか、不安に感じるべきですよ!
クラウド プロバイダーがどれだけ革新的だとしても、スピードや規模を提供したとしても、この取引ではお客様は常に不公平さを感じることでしょう。特に、夜中の 3 時に何かおかしなことが起こった場合はそうですよね。
もしかして、私の言うことは大げさすぎると思っていませんか?
数か月前、Dropbox はパブリック クラウド プロバイダーの利用を止め、オンプレミスに戻ると
発表
しました。この選択に関し、同社は決断に至るまでのプロセスを時間をかけて説明し、「自社の運命は自社で管理したい」という強い思いを示しました。管理できないことの不安が積み重なって限界に達し、同社はクラウド プロバイダーのもとを去ることにしたのです。
初めての SRE
Google が CRE という専門職を作った背景には、これまでの 10 年にわたる SRE という専門職の道のりがあります。SRE の歴史について詳しくない人のために、ここで少し説明しておきます。
…… むかしむかし、2 つの王国が戦争していました。開発者王国と運用者王国です。
開発者王国は、ユーザーにとって面白く便利な機能を開発し、提供することに専念していました。同王国では、イノベーションが早ければ早いほど良いとされていたのです。開発者民族の理想の世界では、開発が中断されることは決してなく、新しくて魅力的な製品が展開されていました。
一方、運用者王国では、出荷されたシステムの信頼性を気にかけていました。というのも、夜中の 3 時に何かが起こったら、呼び出されるのは運用者民族だからです。いったんシステムが安定すると、運用者民族はもう何も新しいものは提供したくないと考えていました。新しいバグは 100 % 新しいコードから発生するためです。
この 2 つの王国は何十年にもわたって戦い続け、多くの血が流されました(まぁ本当の血ではありませんが、メールって結構炎上しますよね ……)。
そんなある日、Benjamin Treynor-Sloss という人がいい考えを思いつきました。
Google の Vice President である Benjamin Treynor-Sloss。SRE の父と呼ばれている
彼は長年にわたる争いの根底にある思い込みが間違っていることに気づき、この問題を全く新しい方向に持っていったのです。それは、エラー予算という考え方でした。
開発するシステムは(おそらくペースメーカー以外は)どれも 100 % ずっと稼働し続ける必要はない、というのがその考えです。システムが中断されることはありますが、ユーザーは自分のことに精一杯なので気づくことはないというのです。
つまり、ほぼすべてのシステムに、利用できないことに対する許容範囲をほんの少し(ゼロではなく)設けるということです。そのダウンタイムは予算とみなします。システムのダウンタイムが予算内に収まれば、そのシステムは健全というわけです。
たとえば、可用性 99.9 % のシステムが必要だとしましょう。これは、このシステムを利用できない時間が 0.1 % あっても大丈夫だということです(1 か月を 30 日だとすると、43 分に相当します)。
システムが 43 分以上ダウンするようなことをしない限り、何でも思う存分開発し展開できます。ただし、予算をオーバーした場合は、開発時間のすべてを問題解決とシステムのさらなる安定化に向けたコードを書くことに費やさなくてはなりません。より安定したシステムを開発すれば、翌月にエラー予算をオーバーする可能性が低くなり、より多くの新しい機能を開発したり展開したりできるのです。
要するに、エラー予算によって開発者民族と運用者民族のお互いの思惑を一致させることができ、好循環が生まれるのです。
こうした考えから、SRE という専門職が誕生しました。
Google では、SRE と開発者の間に基本的な合意事項があります。システムが一定の条件を満たしている場合、SRE はシステムの稼働時間と健全な運用に責任を持つこととする、というものです。その条件は次のとおりです。
システムが(開発中に)Production Readiness Review(PRR : 製品化準備調査)という厳しい検査プロセスに合格すること
システムを開発した開発チームが、(モニタリングなど)重要なサポート体制を保ち、定期検査や検視などの重要なイベントに積極的に関与すること
システムが定期的にエラー予算をオーバーしないこと
開発者が SRE との関係でこうした責任を果たさない場合、SRE はシステムから離れることになります(もちろん呼び出しにも応じません!)。
このような基本的な関係を構築することで、Google には協力し合うという企業カルチャーが生まれ、高い信頼性と驚異的スピードのイノベーションにつながったのです。
CRE のミッションは何か
Google では、お客様に対しても同じようなアプローチが必要だという結論に達しました。SRE の原理や教訓をお客様に適用すると、CRE にたどり着くのです。
CRE チームは、お客様の基幹アプリケーションにおける主要な要素を、コードからデザイン、実装、運用手順に至るまで綿密に調査します。そこで見つけたものを取り出し、アプリケーション(および関連チーム)に対して厳しく PRR を実施します。
このプロセスの最終段階で、Google はお客様に対し「ここに御社システムの信頼性に関するギャップがあります。これが御社のエラー予算です。信頼性を向上したい場合は、こういった変更が必要です」とお伝えします。
また、呼び出しをする場合やチケット発行に関する基準にお互いが合意できるよう、共通のシステム モニタリング体制を構築します。
Google の PRR に合格するには、お客様の側で多くの作業が必要となります。しかし、その努力の結果、次のような成果に結びつくのです。
呼び出しに関する共通認識が生まれる。お客様がユーザーに呼び出されないようになれば、Google も呼び出されることはない。
最重要事項に関するチケットが自動で生成され、エスカレーションされることになる。
CRE チームがお客様の悲惨な現場の対処に参戦する(お客様が必死でがんばったとしても、悲惨な出来事は避けられないため)。
Google のデザイン調査や製品調査を経たシステムが手に入る。
追加料金は 0 ドル
さて、大いに価値があるこのサービスに対し、なぜ Google は課金しないのでしょうか。
Google の SRE において最も重要な方策は、呼び出しの際に使われるページャを手放すことができるという点なのです。CRE にしても同じことが言えます。お客様の側において適切にバグが修正されなかったり、共同での検視作業や衛生的な運用が行われなかったりしたときは、Google はページャをお客様にお返しすることになります。
ここで気をつけていただきたいのは、0 ドルというのは無料と同じではないということです。Google レベルの厳しい運用基準を達成するには、お客様の側でも継続的に責任を持っていただかなくてはなりません。
これには時間も努力も必要です。達成に向けては Google もお客様を支援しますが、それでもお客様が自ら取り組む必要があります。この契約がどういったものかについては、上で紹介した書籍『
Site Reliability Engineering
』をご覧いただき、そこに書かれた概要に取り組む意思があるかどうか自ら問いかけてみてください。
企業がお客様に対して「一緒にやっていきましょう」と言うことが流行していますが、企業側がその役割をきちんと果たしているケースは多くない、というのが実情です。
真に「一緒にやる」人たちは、双方に対する義務感があり、お互いの責任を背負っています。共通のゴールに向けて共同で作業し、相互にやり取りする金銭よりも重要な運命を共にするのです。
このプログラムはすべてのお客様に適しているわけではありません。実際、努力が必要なので、お客様の大半は申し込まないのではないかと私たちは見ています。
ただ、数十億ドルものビジネスをクラウド上で行っている大企業が、このような機会を見逃すのは愚かな行為だとも思います。この機会をリスクから逃れる練習だと考えてみてください。しかも、どんな CEO でも飛びつくような価格で入手できるものなのです。
新たなソーシャル契約で不安を軽減
過去数週間、Google は CRE という専門職とその計画についてお客様にひっそりとお伝えし、その関心度を探ってきました。多くのお客様は最初に大きなため息をつき、肩の力が抜け、そして安心した表情になっていきます。
Google がこのような投資を行っているというだけで、お客様の不安が軽減されているのです。
もちろん、これは奉仕活動ではありません。単にビジネスとして理にかなっているだけです。こうした原理や実践が、お客様が Google を使い続ける大きな動機となります。技術的にロックインするのではなく、人間関係を通じて構築される一体感につながるのです。
お客様の重要なアプリケーションに特有の信頼性が備わることにより、Google のプラットフォームの実質的な信頼性も向上します。その結果、Google のイノベーションの速度も高まります(これこそ Google が本当にやりたいことなのです)。
クラウドのお客様へ。これはお客様にふさわしい新たな
ソーシャル契約
です。
クラウド事業を拡大し、イノベーションを進めたいとお考えのサービス プロバイダーの方へ。私たち Google と一緒に取り組み、事業を拡大させましょう。
Google と同じクラウド プロバイダーの方にも、こうした新しい専門職を広めるようご協力いただきたいと思います。これこそが、すべてのお客様が本当に必要としていることなのですから。
* この投稿は米国時間 10 月 10 日、Director of Google Customer Reliability Engineering である Dave Rensin によって投稿されたもの(投稿は
こちら
)の抄訳です。
- Posted by Dave Rensin, Director of Google Customer Reliability Engineering (CRE)
0 件のコメント :
コメントを投稿
12 か月間のトライアル
300 ドル相当が無料になるトライアルで、あらゆる GCP プロダクトをお試しいただけます。
Labels
.NET
.NET Core
.NET Core ランタイム
.NET Foundation
#gc_inside
#gc-inside
#GoogleCloudSummit
#GoogleNext18
#GoogleNext19
#inevitableja
Access Management
Access Transparency
Advanced Solutions Lab
AI
AI Hub
AlphaGo
Ansible
Anthos
Anvato
Apache Beam
Apache Maven
Apache Spark
API
Apigee
APIs Explore
App Engine
App Engine Flex
App Engine flexible
AppArmor
AppEngine
AppScale
AprilFool
AR
Artifactory
ASL
ASP.NET
ASP.NET Core
Attunity
AutoML Vision
AWS
Big Data
Big Data NoSQL
BigQuery
BigQuery Data Transfer Service
BigQuery GIS
Billing Alerts
Bime by Zendesk
Bitbucket
Borg
BOSH Google CPI
Bower
bq_sushi
BreezoMeter
BYOSL
Capacitor
Chromium OS
Client Libraries
Cloud API
Cloud Armor
Cloud Audit Logging
Cloud AutoML
Cloud Bigtable
Cloud Billing Catalog API
Cloud Billing reports
Cloud CDN
Cloud Client Libraries
Cloud Console
Cloud Consoleアプリ
Cloud Container Builder
Cloud Dataflow
Cloud Dataflow SDK
Cloud Datalab
Cloud Dataprep
Cloud Dataproc
Cloud Datastore
Cloud Debugger
Cloud Deployment Manager
Cloud Endpoints
Cloud Firestore
Cloud Foundry
Cloud Foundry Foundation
Cloud Functions
Cloud Healthcare API
Cloud HSM
Cloud IAM
Cloud IAP
Cloud Identity
Cloud IoT Core
Cloud Jobs API
Cloud KMS
Cloud Launcher
Cloud Load Balancing
Cloud Machine Learning
Cloud Memorystore
Cloud Memorystore for Redis
Cloud monitoring
Cloud NAT
Cloud Natural Language API
Cloud Networking
Cloud OnAir
Cloud OnBoard
cloud Pub/Sub
Cloud Resource Manager
Cloud Resource Manager API
Cloud SCC
Cloud SDK
Cloud SDK for Windows
Cloud Security Command Center
Cloud Services Platform
Cloud Source Repositories
Cloud Spanner
Cloud Speech API
Cloud Speech-to-Text
Cloud SQL
Cloud Storage
Cloud Storage FUSE
Cloud Tools for PowerShell
Cloud Tools PowerShell
Cloud TPU
Cloud Translation
Cloud Translation API
Cloud Virtual Network
Cloud Vision
Cloud VPC
CloudBerry Backup
CloudBerry Lab
CloudConnect
CloudEndure
Cloudflare
Cloudian
CloudML
Cluster Federation
Codefresh
Codelabs
Cohesity
Coldline
Colossus
Compute Engine
Compute user Accounts
Container Engine
Container Registry
Container-Optimized OS
Container-VM Image
Couchbase
Coursera
CRE
CSEK
Customer Reliability Engineering
Data Studio
Databases
Dbvisit
DDoS
Debugger
Dedicated Interconnect
deep learning
Deployment Manager
Developer Console
Developers
DevOps
Dialogflow
Disney
DLP API
Docker
Dockerfile
Drain
Dreamel
Eclipse
Eclipse Orion
Education Grants
Elasticsearch
Elastifile
Energy Sciences Network
Error Reporting
ESNet
Evernote
FASTER
Fastly
Firebase
Firebase Analytics
Firebase Authentication
Flexible Environment
Forseti Security
G Suite
Gartner
gcloud
GCP
GCP Census
GCP 移行ガイド
GCP 認定資格チャレンジ
GCPUG
GCP導入事例
gcsfuse
GEO
GitHub
GitLab
GKE
Go
Go 言語
Google App Engine
Google Apps
Google Certified Professional - Data Engineer
Google Cloud
Google Cloud Certification Program
Google Cloud Client Libraries
Google Cloud Console
Google Cloud Dataflow
Google Cloud Datalab
Google Cloud Datastore
Google Cloud Endpoints
Google Cloud Explorer
Google Cloud Identity and Access Management
Google Cloud INSIDE
Google Cloud INSIDE Digital
Google Cloud INSIDE FinTech
Google Cloud Interconnect
Google Cloud Launcher
Google Cloud Logging
Google Cloud Next '18 in Tokyo
Google Cloud Next '19 in Tokyo
Google Cloud Platform
Google Cloud Resource Manager
Google Cloud Security Scanner
Google Cloud Shell
Google Cloud SQL
Google Cloud Storage
Google Cloud Storage Nearline
Google Cloud Summit '18
Google Cloud Summit ’18
Google Cloud Tools for IntelliJ
Google Code
Google Compute Engine
Google Container Engine
Google Data Analytics
Google Data Studio
Google Date Studio
Google Deployment Manager
Google Drive
Google Earth Engine
Google Genomics
Google Kubernetes Engine
Google maps
google maps api
Google Maps APIs
Google Maps Platform
Google SafeSearch
Google Service Control
Google Sheets
Google Slides
Google Translate
Google Trust Services
Google VPC
Google マップ
Google 公認プロフェッショナル
GoogleNext18
GPU
Gradle
Grafeas
GroupBy
gRPC
HA / DR
Haskell
HEPCloud
HIPAA
Horizon
HTCondor
IaaS
IAM
IBM
IBM POWER9
icon
IERS
Improbable
INEVITABLE ja night
inevitableja
InShorts
Intel
IntelliJ
Internal Load Balancing
Internet2
IoT
Issue Tracker
Java
Jenkins
JFrog
JFrog Artifactory SaaS
Jupiter
Jupyter
Kaggle
Kayenta
Khan Academy
Knative
Komprise
kubefed
Kubeflow Pipelines
Kubernetes
KVM
Landsat
load shedding
Local SSD
Logging
Looker
Machine Learning
Magenta
Managed Instance Group
Managed Instance Group Updater
Maps API
Maps-sensei
Mapsコーナー
Maven
Maxon Cinema 4D
MightyTV
Mission Control
MongoDB
MQTT
Multiplay
MySQL
Nearline
Network Time Protocol
Networking
neural networks
Next
Node
NoSQL
NTP
NuGet パッケージ
OCP
OLDISM
Open Compute Project
OpenCAPI
OpenCAPI Consortium
OpenShift Dedicated
Orbitera
Organization
Orion
Osaka
Paas
Panda
Particle
Partner Interconnect
Percona
Pete's Dragon
Pivotal
Pivotal Cloud Foundry
PLCN
Podcast
Pokemon GO
Pokémon GO
Poseidon
Postgre
PowerPoint
PowerShell
Professional Cloud Network Engineer
Protocol Buffers
Puppet
Pythian
Python
Qwiklabs
Rails
Raspberry Pi
Red Hat
Redis
Regional Managed Instance Groups
Ruby
Rust
SAP
SAP Cloud Platform
SC16
ScaleArc
Secure LDAP
Security & Identity
Sentinel-2
Service Broker
Serving Websites
Shared VPC
SideFX Houdini
SIGOPS Hall of Fame Award
Sinatra
Site Reliability Engineering
Skaffold
SLA
Slack
SLI
SLO
Slurm
Snap
Spaceknow
SpatialOS
Spinnaker
Spring
SQL Server
SRE
SSL policies
Stack Overflow
Stackdriver
Stackdriver Agent
Stackdriver APM
Stackdriver Debugger
Stackdriver Diagnostics
Stackdriver Error Reporting
Stackdriver Logging
Stackdriver Monitoring
Stackdriver Trace
Stanford
Startups
StatefulSets
Storage & Databases
StorReduce
Streak
Sureline
Sysbench
Tableau
Talend
Tensor Flow
Tensor Processing Unit
TensorFlow
Terraform
The Carousel
TPU
Trace
Transfer Appliance
Transfer Service
Translate API
Uber
Velostrata
Veritas
Video Intelligence API
Vision API
Visual Studio
Visualization
Vitess
VM
VM Image
VPC Flow Logs
VR
VSS
Waze
Weave Cloud
Web Risk AP
Webyog
Wide and Deep
Windows Server
Windows ワークロード
Wix
Worlds Adrift
Xplenty
Yellowfin
YouTube
Zaius
Zaius P9 Server
Zipkin
ZYNC Render
アーキテクチャ図
イベント
エラーバジェット
エンティティ
オンライン教育
クラウド アーキテクト
クラウド移行
グローバル ネットワーク
ゲーム
コードラボ
コミュニティ
コンテスト
コンピューティング
サーバーレス
サービス アカウント
サポート
ジッター
ショート動画シリーズ
スタートガイド
ストレージ
セキュリティ
セミナー
ソリューション ガイド
ソリューション: メディア
データ エンジニア
データセンター
デベロッパー
パートナーシップ
ビッグデータ
ファジング
プリエンプティブル GPU
プリエンプティブル VM
フルマネージド
ヘルスケア
ホワイトペーパー
マイクロサービス
まっぷす先生
マルチクラウド
リージョン
ロード シェディング
運用管理
可用性
海底ケーブル
機械学習
金融
継続的デリバリ
月刊ニュース
資格、認定
新機能、アップデート
深層学習
深層強化学習
人気記事ランキング
内部負荷分散
認定試験
認定資格
料金
Archive
2019
8月
7月
6月
5月
4月
3月
2月
1月
2018
12月
11月
10月
9月
8月
7月
6月
5月
4月
3月
2月
1月
2017
12月
11月
10月
9月
8月
7月
6月
5月
4月
3月
2月
1月
2016
12月
11月
10月
9月
8月
7月
6月
5月
4月
3月
2月
1月
2015
12月
11月
10月
9月
8月
7月
6月
5月
4月
3月
2月
1月
2014
12月
11月
10月
9月
8月
6月
5月
4月
3月
2月
Feed
月刊ニュースレターに
登録
新着ポストをメールで受け取る
Follow @GoogleCloud_jp
0 件のコメント :
コメントを投稿