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
20 Jan 2017 / This is Mercari, This is a SRE - ...
Search
Kenichi Sasaki
January 20, 2017
Technology
0
840
20 Jan 2017 / This is Mercari, This is a SRE - Mercari DAY
Presentation at #mercariday
Kenichi Sasaki
January 20, 2017
Tweet
Share
More Decks by Kenichi Sasaki
See All by Kenichi Sasaki
メルカリのAllforOneな開発と運用/MercariAllforOneDevAndOps
siroken3
0
720
AWS Lambdaで作るGitHub bot/GitHub bot made with AWS Lambda
siroken3
3
9.3k
20 Jan 2017 / This is Mercari, This is an SRE - Mercari DAY/mercariday2017sre
siroken3
0
5.6k
Other Decks in Technology
See All in Technology
飲食店データの分析事例とそれを支えるデータ基盤
kimujun
0
220
B2B SaaSから見た最近のC#/.NETの進化
sansantech
PRO
0
960
マルチモーダル / AI Agent / LLMOps 3つの技術トレンドで理解するLLMの今後の展望
hirosatogamo
38
13k
100 名超が参加した日経グループ横断の競技型 AWS 学習イベント「Nikkei Group AWS GameDay」の紹介/mediajaws202411
nikkei_engineer_recruiting
1
170
アジャイルでの品質の進化 Agile in Motion vol.1/20241118 Hiroyuki Sato
shift_evolve
0
190
rootlessコンテナのすゝめ - 研究室サーバーでもできる安全なコンテナ管理
kitsuya0828
3
390
アジャイルチームがらしさを発揮するための目標づくり / Making the goal and enabling the team
kakehashi
3
170
Storybook との上手な向き合い方を考える
re_taro
5
1.6k
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
3.2k
あなたの知らない Function.prototype.toString() の世界
mizdra
PRO
2
530
iOS/Androidで同じUI体験をネ イティブで作成する際に気をつ けたい落とし穴
fumiyasac0921
1
110
強いチームと開発生産性
onk
PRO
36
12k
Featured
See All Featured
RailsConf 2023
tenderlove
29
900
Documentation Writing (for coders)
carmenintech
65
4.4k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
250
21k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
840
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
93
17k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
16
2.1k
For a Future-Friendly Web
brad_frost
175
9.4k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Building a Scalable Design System with Sketch
lauravandoore
459
33k
Transcript
This is Mercari, This is an SRE Mercari DAY 2017
@AcademyHills Kenichi Sasaki
Introduce myself • Kenichi Sasaki (@siroken3) • Mercari, Inc (JOIN
at 2014/7) Site Reliability Engineering (SRE) Team • αʔόϓϩϏδϣχϯάɾσϓϩΠͷඋ • ։ൃڥͳͲͷඋ
Agenda • Site Reliability Engineering (SRE) ͱ • MercariͱMercariͷSRE •
Mercari SREͷࣄྫ • ·ͱΊ
SRE ͱ
4JUF3FMJBCJMJUZ&OHJOFFSJOH w (PPHMF͕ఏএ w (PPHMFͷ༷ʑͳϓϩμΫτɾ αʔϏεΛԣஅͯ͠ɺαΠτ ͷ৴པੑΛ্ͤ͞Δ 4PGUXBSF&OHJOFFS5FBN
SRE ͷ࠾༻(US) Facebook, Twitter, Apple, eBay, Microsoft.. 3,662
SRE in JP • 2015/11 Mercari Tech Blog ʹͯհͯ͠Ҏ߱ ͕ू·Δ
• “ΠϯϑϥνʔϜվΊ Site Reliability Engineering (SRE) νʔϜʹͳΓ·ͨ͠” http://tech.mercari.com/entry/2015/11/18/153421 • 2016/06 SRE Tech Talk#1 • https://connpass.com/event/34825/
SRE Tech Talk#2! • https://eventdots.jp/event/609456 • 2017/01/23 12:00 క
SREͷ࠾༻(JP) 40!
Mercari & Mercari SRE
Infrastructure UK ४උத JP US ͘͞ΒΠϯλʔωοτ ੴङDC AWS GCP
Architecture US nginx nginx nginx ©2011 Amazon Web Services LLC
or its affiliates. All rights reserved. Client Multimedia Corporate data center Traditional server Mobile Client IAM Add-on Example: IAM Add-on ence ) Assignment/ Task Requester Workers DNS-RR App App App App App App MySQL MySQL memcached memcached nginx nginx nginx ©2011 Amazon Web Services LLC or its affiliates. All rights reserved. User Users Client Multimedia C d Mobile Client Internet AWS Management Console IAM Add-on Example: IAM Add-on Human Intelligence Tasks (HIT) Assignment/ Task Requester Workers Amazon Mechanical Turk Non-Service Specific DNS-RR App App App App App App MySQL MySQL memcached memcached EC2 EC2 EC2 EC2 EC2 EC2 EC2 EC2 EC2 EC2 EC2 EC2 EC2 JP ΫϥυͰ ಉ͡ߏ util util cloud cloud util util EC2 EC2
Mercari SRE Team
Mercari SRE • 2015/11 ͔Β SRE ʹมߋ ͦΕ·ͰΠϯϑϥνʔϜ • ϝϯόʔ5ਓ
• શһ͕౦ژΦϑΟεۈ
SREʹมߋͨ͠ཧ༝ • ʮΠϯϑϥʯ͔ΒΠϝʔδ͢ΔۀͷΛ͑Δ • ϝϧΧϦΛ5ɾ10ͱ͍ͬͯͨͩͨ͘͘Ίͷʮ৴པੑʯ • εϚϗͰ24͖࣌ؒͳ࣌ʹɺ͖ͳॴ͔ΒΞΫηε͕དྷ Δɻ͍ͭͰշదʹΞΫηε͕Ͱ͖ΔʮՄ༻ੑʯͱ ʮύϑΥʔϚϯεʯ •
ιϑτΣΞΤϯδχΞϦϯάͰ͜ΕΒΛղܾ͍ͯ͘͠νʔϜ • (ւ֎/USͰ௨͡Δ໊শ)
Mercari SREͷۀ • APIαʔόɺϛυϧΣΞͷՄ༻ੑɺύϑΥʔϚϯεͷ ҡ࣋ɾ্ • OnCall (োରԠͷ൪) • ϩάऩूɾੳج൫ͷߏஙɺӡ༻
• αʔόϓϩϏδϣχϯάɾσϓϩΠͷඋ • ηΩϡϦςΟͷ୲อ
Mercari SREࣄྫ • Gaurun - push notification server • ngx_luaʹΑΔBalancer֦ு
• PHP daemon class preload • URL Shorten Service • ChatOpsˍZero DownTime Deploy • etc…
ChatOps Deploy
ChatOps Deploy • ϝϧΧϦ • SCMͱͯ͠GitHubΛ࠾༻ • IssueTrackerͰͷ༷ݕ౼ • GitHub
PullRequestͰͷϐΞϨϏϡʔ
Google Calendar + ChatOps
Inside ChatOps @jp-go-bold: yes check PullRequest check Issue Tracker exec
Ansible merge PR git clone git clone composer install deploy application preprocessing ϐΞϨϏϡʔࡁ Ϛωʔδϟঝೝࡁ
·ͱΊ
·ͱΊ • ϝϧΧϦC2CϚʔέοτϓϨΠεɺ৴པੑॏཁ • SRE৴པੑΛγεςϜ໘͔Βࢧ͑Δ • ۀΠϯϑϥʹཹ·Βͳ͍ɻ৴པੑΛٻ