0924_Bold Challenge_@tjun

92cdcff298e89e2fcd2fb705155c2d4b?s=47 mercari
September 26, 2019

0924_Bold Challenge_@tjun

「メルペイの信頼性へのチャレンジ」
株式会社メルペイ Engineering Manager 高木潤一郎(@tjun)
金融サービスであるメルペイには、いつでも安心して使える信頼性が求められます。メルペイを立ち上げて約半年間運用する中で、サービスの信頼性を実現するためにどのような取り組みをしてきたのか、どんなところが大変だったのかを話します。

■イベント詳細
https://mercari.connpass.com/event/145803/

■採用サイト
https://careers.mercari.com/jp

92cdcff298e89e2fcd2fb705155c2d4b?s=128

mercari

September 26, 2019
Tweet

Transcript

  1. #BoldChallenge 1 メルペイの信頼性へのチャレンジ 2019-09-24 Junichiro Takagi @tjun

  2. #BoldChallenge 2 @tjun Merpay, Inc. ├ SRE └ Engineering Manager

    Junichiro Takagi
  3. #BoldChallenge 3 信頼性とは? Agenda メルペイをリリースするぞ!!! 何も信頼できない! 今後の Challenge 02 03

    04 01
  4. #BoldChallenge 4 信頼性とは? Chapter 1

  5. #BoldChallenge 5 メルペイは金融サービス ➔ いつでも使えて当たり前 ➔ お金が正しいのが当たり前 正しく作って常に動かし続ける必要がある、高い信頼性が求められる 信頼性とは?

  6. #BoldChallenge 6 メルペイは金融サービス ➔ いつでも使えて当たり前 ➔ お金が正しいのが当たり前 正しく作って常に動かし続ける必要がある、高い信頼性が求められる 信頼性とは? Bold

    Challenge = 信頼性 100% を目指す!!!?
  7. #BoldChallenge 7 Velocity Reliability 新機能、チャレンジ、変化 改善、reactive、維持

  8. #BoldChallenge 8 信頼性をどう実現するか 目指す信頼性を定義する 実現できているかどうか確認する 達成しつづける仕組みを作る 02 03 01

  9. #BoldChallenge 9 SLO (Service Level Objective) 「サービスの実現すべき数値」を決める 例: iD決済のリクエストの99.99% は成功する

    目指す信頼性を定義する
  10. #BoldChallenge 10 SLOを決める = 目指す信頼性の目標を決めるだけでなく、 次のチャレンジへのチャンスを作る基準 SLOと信頼性とお客様の体験 お客様の 体験 信頼性

    (&コスト) SLO SLO以下で 体験が悪い状態 目標以上の信頼性を実現するには 高いコストと時間がかかる 参考: https://cloud.google.com/blog/products/devops-sre/shrinking-the-impact-of-production-inc idents-using-sre-principles-cre-life-lessons
  11. #BoldChallenge 11 SRE(Site Reliability Engineer)? すべてのエンジニア? 信頼性を誰が実現するか? 信頼性は組織全体で作るもの

  12. #BoldChallenge 12 メルペイをリリースするぞ!!! Chapter 2

  13. #BoldChallenge 13 メルペイのリリースの難しさ 自分がこれまで 経験してきたサービス • 最初はほとんど使う人が いない • 最小限の機能でまずは

    出して少しずつ改善 • すべて新規開発 メルペイ • メルカリの規模のリクエストが来 る • 金融サービスなので最初から 高い信頼性が求められる • メルカリとの接続、メルカリから の機能移行もある
  14. #BoldChallenge 14 自分とSREがやってきたこと 2018/04 tjun入社 1人目のSRE 2018/05 Mercari Microserivices Platform

    と働くためdeeetさんの隣へ 2018/06- Database選定 Platformの改善 2018/07- メルペイのインフラ構築 SLOなどの仕組み作り 2018/10 インフラリスクへの対応 運用に向けた準備 2018/12 リリースへ向けて…!
  15. #BoldChallenge 15 マイクロサービスアーキテクチャ ➔ マイクロサービスにまたがる決済トランザクション ➔ 独立した開発・リリース・運用をする仕組み ➔ Kubernetes on

    Google Cloud Platform ➔ マイクロサービス間のObservability ➔ マイクロサービスにおける信頼性 技術的なチャレンジ
  16. #BoldChallenge 16 SREがマイクロサービスの信頼性のためにやったこと 見出し ルールや仕組み作り 共通インフラの構築 • インフラの設計構築 • リスク洗い出して対応

    • キャパシティプランニング • SLO • リリースフロー • 障害対応フロー • Production Readiness • QA環境の構築 • 負荷試験 • モニタリング設定 • 設定レビュー リリースのためのサポート ※ SREだけじゃなく、アーキテクト /hidek/PM Office/Microservice Platform team/ Risk team を中心に多くのエンジニアが一緒に対応した
  17. #BoldChallenge 17 いろいろ大変なことがあったが、2019年2月13日 メルペイリリース! 2019年2月 メルペイリリース!

  18. #BoldChallenge 18 何も信頼できない! Chapter 3

  19. #BoldChallenge 19 理想 フルマネージドなDB使っているし、 Kubernetesは AutoScale, Auto Healingするので安心! テストもQAもしっかりやっているので、リリー ス時だけ気をつけておけばOK!

    連携サービスも、金融サービスとして 実績のあるシステムなので、問題ない!
  20. #BoldChallenge 20 現実 そんなことはない! クラウドでも大小さまざまな問題は発生す る。インフラの問題もあれば、設定がよくな かったこともある 期待通りに動かないこともある。 使っているライブラリの問題なこともある 連携するパートナーのシステムで

    障害が起きることもある
  21. #BoldChallenge 21 Observability • SLOやさまざまなメトリクスを見える状態にする • SLO違反となるような問題をAlertして、気づけるようにする Incident Response •

    Incidentが起きたときに、すぐ気づいて対応することが重要 • 技術的な対応だけではなく、関係者への連絡等組織的なしくみが必要 障害は起きるという前提で考える
  22. #BoldChallenge 22 信頼性とは、サービスをリリースしたら 達成できるものではない サービスを運用・改善していくことで、 サービスの成長とともに信頼性を高めていく 信頼性へのChallengeは始まったばかり Reliability

  23. #BoldChallenge 23 今後の Challenge Chapter 4

  24. #BoldChallenge 24 信頼性とは? メルペイが提供する機能の中で すべてのお客様が利用する 一番重要な機能 最初の質問

  25. #BoldChallenge 25 信頼性をどう実現するか 目指す信頼性を定義する 実現できているかどうか確認する 達成しつづける仕組みを作る 02 03 01

  26. #BoldChallenge 26 Velocity Reliability 新機能、チャレンジ、変化 改善、reactive、維持

  27. #BoldChallenge 27 Velocity Reliability 新機能、チャレンジ、変化 改善、reactive、維持 信頼性も高めたいけど新たなサービスも提供していきたい

  28. #BoldChallenge 28 ソフトウェアを使って、より少ないコストで信頼性を 達成し続けるための仕組みを作る • より安定した共通基盤を作る • マイクロサービスの各チームが、より簡単に サービスを改善し続けるための仕組みを作る 今後のメルペイの信頼性へ向けて

  29. #BoldChallenge 29 Next Bold Challenge 信頼性を達成し続ける仕組みを作り、 メルペイの新しいチャレンジを 加速する

  30. #BoldChallenge 30 Thank You!

  31. Mercari Bold Challenge に共感してくださった方は 『Mercari Careers』を検索! お気軽にお問い合わせください。

  32. #BoldChallenge #BoldChallenge