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 - Mercari DAY
Search
Kenichi Sasaki
January 20, 2017
Technology
0
800
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
680
AWS Lambdaで作るGitHub bot/GitHub bot made with AWS Lambda
siroken3
3
9k
20 Jan 2017 / This is Mercari, This is an SRE - Mercari DAY/mercariday2017sre
siroken3
0
5.5k
Other Decks in Technology
See All in Technology
プラットフォームってつくることより計測することが重要なんじゃないかという話 / Platform Engineering Meetup #8
taishin
1
340
KubeCon EU 2024 Recap “Kubernetes Policy Time Machine: Where to Next?”
ryysud
0
200
Google Cloud Next '24でブログを10本書いた方法と勉強会を沸かせた方法
yasumuusan
0
280
長期間TiDBを使ってきた話 @ 私たちはなぜNewSQLを使うのかTiDB選定5社が語る選定理由と活用LT / Experiences with TiDB Over Time
chibiegg
2
870
FrontDoorとWebAppsを組み合わせた際のリダイレクト処理の注意点
kenichirokimura
1
480
Vertex AI を中心に 生成AIのアップデートを共有します
kaz1437
0
290
ここが嬉しいABAC ここが辛いよABAC #再解説+補足編
masahirokawahara
1
270
Reducing Cross-Zone Egress at Spotify with Custom gRPC Load Balancing Recap
koh_naga
0
190
Databricks における 『MLOps』
databricksjapan
2
160
コンテナセキュリティの基本と脅威への対策
kyohmizu
3
750
[PlatformCon 24] Platform Orchestrators: The Missing Middle of Internal Developer Platforms?
danielbryantuk
1
830
長期運用プロジェクトでのMySQLからTiDB移行の検証
colopl
2
820
Featured
See All Featured
VelocityConf: Rendering Performance Case Studies
addyosmani
320
23k
What's new in Ruby 2.0
geeforr
337
31k
Documentation Writing (for coders)
carmenintech
60
3.9k
The Language of Interfaces
destraynor
151
23k
Embracing the Ebb and Flow
colly
80
4.1k
A better future with KSS
kneath
231
16k
Pencils Down: Stop Designing & Start Developing
hursman
117
11k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
2
1.3k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
125
32k
The Invisible Side of Design
smashingmag
294
49k
Intergalactic Javascript Robots from Outer Space
tanoku
266
26k
Robots, Beer and Maslow
schacon
PRO
155
7.9k
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৴པੑΛγεςϜ໘͔Βࢧ͑Δ • ۀΠϯϑϥʹཹ·Βͳ͍ɻ৴པੑΛٻ