Upgrade to Pro — share decks privately, control downloads, hide ads and more …

⾃律的な開発チームを⽀えるためのSLO運⽤

SansanTech
November 22, 2023

 ⾃律的な開発チームを⽀えるためのSLO運⽤

■イベント
【ユーザベース × Sansan】組織全体で向き合うSaaSプロダクトの信頼性向上への取り組み - UB Tech Vol.13
https://uzabase-tech.connpass.com/event/300220/

■登壇概要
タイトル:⾃律的な開発チームを⽀えるためのSLO運⽤
登壇者:技術本部 Bill One Engineering Unit 上司 陽平

■Bill One エンジニア 採用情報
https://media.sansan-engineering.com/billone-engineer

SansanTech

November 22, 2023
Tweet

More Decks by SansanTech

Other Decks in Technology

Transcript

  1. ⾃⼰紹介 じょーし(上司) Sansan株式会社 @paper2parasol - Sansan株式会社でBill OneプロダクトのSREチーム に2022年8⽉から所属 - 前職はSIer企業でコンテナ技術やSREの普及活動、

    AWS・AzureでのKubernetesサービスの設計・構 築に従事 - 現職ではSREのミッション定義、オブザーバビリ ティの向上、負荷試験による性能改善、IaC化など を推進 - 好きなものはラーメンとCloud Run
  2. プロダクト開発チーム 4 ⼈前後のチームが 12 個存在 SRE 機能開発 グローバル対応 機能開発 機能開発

    機能開発 コンプリケイテッド ・サブシステム グローバル対応 機能開発 機能開発 機能開発 機能開発
  3. マイクロサービスを採⽤ サービス 機能開発チーム 機能開発チーム サービス 機能開発チーム サービス 機能開発チーム 開発・運⽤ 開発・運⽤

    開発・運⽤ 主要マイクロサービスが10個程あり、 各マイクロサービスを1~2の機能開発チームで担当(重複あり)
  4. - SRE チームメンバの専⾨性が必要なタスクは SRE が主導する - 並⾏してそれらを機能開発チームに委譲する仕組みづくりを検討・推進する 信頼性向上 促進 SRE

    チーム ミッション 開発チームが⾃律的に動ける仕組みを整えつつ、信頼性と開発効率の 向上をリードする サービス 機能開発チーム 機能開発チーム サービス 機能開発チーム サービス 機能開発チーム 開発・運⽤ 開発・運⽤ 開発・運⽤
  5. Bill One サービス全体(≒BFF)のSLI/SLO Users サービス ・・・ SLO レイテンシ 99%tileが1000ms以下 エラー率

    0.1%以下 - ユーザリクエストのレスポンス レイテンシとエラー率をSLIと している - エラーバジェットが急激に低下 した場合にバーンレートアラー トを発報する サービス
  6. - 調査 - (Fast Burnの場合)即座に原因調査 - (Slow Burnの場合)適宜原因調査 - エラーバジェットが枯渇していない限り、原因不明の場合は各チームの

    判断で適宜調査を打ち切って良い - 対応・対策・改修 - チーム内で話し合い、任意で実施する - 誤検知削減 - 各チームが誤検知を減らすように適宜値を調整する バーンレートアラートの発報時の運⽤
  7. - エラーバジェットの残量を活⽤したアラートが作成できない - エラーバジェットを表⽰する機能はあるが枯渇前の検知などができない - 各チームに定期的に⾒ることを強制したくなかったのでバジェット枯渇 時の運⽤を保留している - 特定エンドポイントのエラー率やレイテンシのSLIにはログベースの指 標が必要

    - CUJ (Critical User Journey)を元にした重要なエンドポイントのみを 対象としたSLIを作成するときにサクッと作れると嬉しい - SLO 99.9%が最⼤ - Bill Oneの各サービスのエラー率は低いので必要に応じてより厳しい値 で運⽤ができたら良いかもと妄想している Google CloudのSLO機能の課題