Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
SRE study group 2nd slide
Search
Korenaga Makoto
April 22, 2020
Technology
1
49
SRE study group 2nd slide
Korenaga Makoto
April 22, 2020
Tweet
Share
More Decks by Korenaga Makoto
See All by Korenaga Makoto
SRE study group 4th slide
hapoon
2
78
SRE study group 3rd slide
hapoon
1
57
SRE study group 1st slide
hapoon
1
58
Slackアプリを使ってデイリースクラムを効率化
hapoon
1
530
モノリシックからマイクロサービスへ
hapoon
0
110
Other Decks in Technology
See All in Technology
新卒(ほぼ)専業Kagglerという選択肢
nocchi1
1
2.4k
モバイルアプリ研修
recruitengineers
PRO
3
270
MySQL HeatWave:サービス概要のご紹介
oracle4engineer
PRO
4
1.7k
ZOZOTOWNフロントエンドにおけるディレクトリの分割戦略
zozotech
PRO
18
5.4k
夢の印税生活 / Life on Royalties
tmtms
0
280
浸透しなさいRFC 5322&7208
hinono
0
120
生成AI利用プログラミング:誰でもプログラムが書けると 世の中どうなる?/opencampus202508
okana2ki
0
190
退屈なことはDevinにやらせよう〜〜Devin APIを使ったVisual Regression Testの自動追加〜
kawamataryo
3
680
広島発!スタートアップ開発の裏側
tsankyo
0
240
実践アプリケーション設計 ①データモデルとドメインモデル
recruitengineers
PRO
3
270
自社製CMSからmicroCMSへのリプレースがプロダクトグロースを加速させた話
nextbeatdev
0
140
アジャイルテストで高品質のスプリントレビューを
takesection
0
120
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Done Done
chrislema
185
16k
Code Reviewing Like a Champion
maltzj
525
40k
GraphQLとの向き合い方2022年版
quramy
49
14k
Agile that works and the tools we love
rasmusluckow
329
21k
The Cult of Friendly URLs
andyhume
79
6.5k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.8k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
8
480
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
A designer walks into a library…
pauljervisheath
207
24k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
Transcript
Site Reliability Engineering 2nd DevOps unit study group Makoto Korenaga
アジェンダ 1. Googleのプロダクション環境 1.1. ハードウェア 1.2. システムソフトウェア 1.3. ソフトウェアインフラストラクチャ
1.4. 開発環境
Googleのプロダクション環境
ハードウェア • マシン ・・・ 1つのハードウェア(あるいは1つのVM) • サーバー ・・・ サービスを実装しているソフトウェア クラスタオペレーティングシステムBorgがマシン上で起動させるサーバーのリソース
割り当てを行う。
ハードウェア • ラック・・・数十台のマシンを配置 • クラスタ・・・1つないし複数の列(複数のラックで構成)で構成 • データセンター・・・複数クラスタを格納 • キャンパス・・・近くに配置されたデータセンター群 •
Jupiter・・・データセンター内で高速通信する為のClos Network装置 • B4・・・データセンター群を相互接続する地球規模のネットワーク
ハードウェア Google データセンター内の光景
システムソフトウェア Borg マシン群を管理する分散クラスタオペ レーティングシステム
システムソフトウェア D HDDやSSD含めたファイルサーバ Colossus 一般的なFSセマンティックに加え、レ プリケーションと暗号化を提供する ファイルシステム
システムソフトウェア 1. OpenFlowベースのSDN ネットワーク間での最善経路を事前に計算 2. Bandwidth Enforcer(BwE) 利用できる帯域を最大化する為に利用可能帯域を管理 3. Global
Software-Load Balancer(GSLB) 3.1. DNSリクエストに対するロードバランシング 3.2. サービスレベルでのロードバランシング 3.3. RPCレベルでのロードバランシング
システムソフトウェア Chubby ロックサービス(複数箇所のデータセンターに跨 がる) 非同期合意形成には Paxosプロトコル使用 Borgmon モニタリングプログラム サーバーメトリクスの定期スクレイプ
ソフトウェアインフラストラクチャ Stubby すべてのサービスで使用されるリモートプロシージャコール(RPC)。 オープンソースでgRPCとして公開。 Protocol buffers RPC間のデータやりとりに使用。 XMLと比較するとサイズは1/3〜1/10、速度は20〜100倍高速。
開発環境 AndroidやChromeのように独自のオープンソースリポジトリを除けば、Googleのソフ トウェアエンジニアは単一の共有リポジトリを使って作業している • 自分のプロジェクト外のコンポーネント不具合に遭遇した場合、自身でその問題を修正し変更の提案 (changelistもしくはCL)を所有者に送り、レビュー後メインラインに投入してもらうことができる • 自分のプロジェクトのソースコードに変更を加える際にはレビューが必要
• ソフトウェアのビルドはデータセンター内のビルドサーバーへビルドリクエストが送られ実行 • プロジェクトによっては push-on-greenシステムによりテストをパスした新バージョンが自動的にプロダ クション環境に送られる
次回予告
リスクの受容 サービスレベル目標 第参回
ありがとうございました 参照: SRE サイトリライアビリティ エンジニアリング Googleの信頼性を支えるエンジニアリングチーム (オライリー・ジャパン)