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
48
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
77
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
Kiroでインフラ要件定義~テスト を実施してみた
nagisa53
3
310
LLMで構造化出力の成功率をグンと上げる方法
keisuketakiguchi
0
550
Amazon Qで2Dゲームを作成してみた
siromi
0
120
✨敗北解法コレクション✨〜Expertだった頃に足りなかった知識と技術〜
nanachi
1
610
Segment Anything Modelの最新動向:SAM2とその発展系
tenten0727
0
520
LLM 機能を支える Langfuse / ClickHouse のサーバレス化
yuu26
6
690
AI時代の経営、Bet AI Vision #BetAIDay
layerx
PRO
1
1.8k
猫でもわかるQ_CLI(CDK開発編)+ちょっとだけKiro
kentapapa
0
3.4k
帳票構造化タスクにおけるLLMファインチューニングの性能評価
yosukeyoshida
1
240
AIのグローバルトレンド 2025 / ai global trend 2025
kyonmm
PRO
1
120
SRE新規立ち上げ! Hubbleインフラのこれまでと展望
katsuya0515
0
170
AIに頼りすぎない新人育成術
cuebic9bic
3
180
Featured
See All Featured
Writing Fast Ruby
sferik
628
62k
The World Runs on Bad Software
bkeepers
PRO
70
11k
The Language of Interfaces
destraynor
158
25k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Code Reviewing Like a Champion
maltzj
524
40k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.8k
How STYLIGHT went responsive
nonsquared
100
5.7k
Code Review Best Practice
trishagee
69
19k
Art, The Web, and Tiny UX
lynnandtonic
301
21k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Facilitating Awesome Meetings
lara
54
6.5k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
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の信頼性を支えるエンジニアリングチーム (オライリー・ジャパン)