$30 off During Our Annual Pro Sale. View Details »

オンコールよもやま話 / JAWS-UG SRE#7 OnCall Yomoyama

オンコールよもやま話 / JAWS-UG SRE#7 OnCall Yomoyama

JAWS-UG SRE支部 #7 の LT で話したオンコールよもやま話のスライドです。
https://jawsug-sre.connpass.com/event/291843/

Shoji Shirotori

November 07, 2023
Tweet

More Decks by Shoji Shirotori

Other Decks in Technology

Transcript

  1. © 2023 Wantedly, Inc.
    オンコールよもやま話
    JAWS-UG SRE支部 #7
    Oct. 18 2023 - Shoji Shirotori @irotoris

    View Slide

  2. © 2023 Wantedly, Inc.
    About Me
    Shoji Shirotori @irotoris
    Infrastructure Squad at Wantedly, Inc.
    Infra /SRE / Data Engineer
    ❤ AWS, Kubernetes, BigQuery, Python, Go

    View Slide

  3. © 2023 Wantedly, Inc.

    View Slide

  4. © 2023 Wantedly, Inc.
    話すこと
    ● ウォンテッドリーのオンコール体制の紹介しつつ
    ● 無くしたアラートをピックアップして紹介

    View Slide

  5. © 2023 Wantedly, Inc.
    Wantedly Architecture Overview

    View Slide

  6. © 2023 Wantedly, Inc.
    Infrastructure Squad (インフラチーム) とは
    インフラや開発運用に関わる機能とプラクティスをプラットフォームとして提供していく

    View Slide

  7. © 2023 Wantedly, Inc.
    ウォンテッドリーのオンコール体制の紹介
    ● Infra チームが夜間休日のオンコール (PagerDuty) を持つ
    ○ 平日日中で障害が発生した場合は Infra チームじゃなくても障害対応に集まってくる
    ■ 集まりすぎるのでインシデントコマンダーが整理
    ■ 平日日中で壊れるのは だいたいデプロイ起因
    ○ 夜間休日はインフラや外部起因が多い
    ■ サービス特性上、夜間休日のリクエストは落ち着いているが壊れるときは壊れる
    ● AWSリソースやインフラのスケーリングを超えた
    ● 非同期ジョブが詰まる
    ● 外部 API が壊れた
    ● Bot やスクレイピングでの異常なアクセス
    ■ ここでのオンコール担当の責務は 1次対応と、騒いで人を集めること
    ● メンバーが一週間交代で担当
    ■ 夜間休日対応の負荷を減らすために不要なアラートを整理している

    View Slide

  8. © 2023 Wantedly, Inc.
    アラートの種類 - 通知先
    ● Slack #war_room + PagerDuty
    ○ 即招集、対応開始
    ● Slack #hoge_alert
    ○ 各チームで対応、トリアージ
    ○ #infra_alert
    ○ #visit_alert
    ○ #profile_alert
    ○ #core_services_alert
    ● Slack #fuga_notice #piyo_logs
    ○ 通知のみ

    View Slide

  9. © 2023 Wantedly, Inc.
    アラートの種類 - 通知先
    ● Slack #war_room + PagerDuty ←ここのアラートを減らす
    ○ 即招集、対応開始
    ● Slack #hoge_alert
    ○ 各チームで対応、トリアージ
    ○ #infra_alert
    ○ #visit_alert
    ○ #profile_alert
    ○ #core_services_alert
    ● Slack #fuga_notice #piyo_logs
    ○ 通知のみ

    View Slide

  10. © 2023 Wantedly, Inc.
    アラートの種類 - 通知までの経路
    ● AWS / GCP -> Datadog -> PagerDuty
    ○ Infra / middleware layer
    ● Kubernetes -> Prometheus -> Datadog -> PagerDuty
    ○ Kubernetes Layer
    ● Application -> New Relic -> Pager Duty
    ○ Application Layer
    ○ Ping / ErrorRate / Latency

    View Slide

  11. © 2023 Wantedly, Inc.
    減らしたアラート
    ● DB Disk full alert
    ○ RDS のストレージ自動拡張を有効に
    ○ ストレージ拡張のイベントは notice チャンネルへ
    ○ 自動拡張上限の場合のみ war_room チャンネルへ

    View Slide

  12. © 2023 Wantedly, Inc.
    減らしたアラート
    ● DB CPU 100% alert
    ○ RDS から Aurora にしたら 100% でもサービスがちょっと遅くなる程度で致命
    的な問題になることが減った
    ○ サービスの Error Rate / Latency は見ているので alert チャンネルへ

    View Slide

  13. © 2023 Wantedly, Inc.
    減らしたアラート
    ● Kubernetes Pod のスケール上限アラート
    ○ Pod が HPA 上限に張り付いていてもサービスが落ちるわけではない
    ○ Error Rate / Latency を見ている
    ○ notice で、後から見ればよい

    View Slide

  14. © 2023 Wantedly, Inc.
    減らしたアラート
    ● AWS Health (AWS Service Status)
    ○ EC2 / RDS / ElastiCache といった AWS サービスとしてのステータス
    ○ AWS の障害で我々のサービスがすぐさま落ちる訳では無い
    ○ X が一番はやく検知できる

    View Slide

  15. © 2023 Wantedly, Inc.
    減らしたアラート
    ● ElastiCache for Redis Eviction alert
    ○ キーが eviction されても問題ない使い方をしていた Redis もいた
    ○ キャッシュ用途のインスタンスは eviction 通知を notice に変更

    View Slide

  16. © 2023 Wantedly, Inc.
    減らしたアラート
    ● 外国からの死活監視
    ○ 日本からは無事だが海外からの死活監視が落ちる現象(謎)
    ○ サービス提供している国からのみに監視を減らした

    View Slide

  17. © 2023 Wantedly, Inc.
    なんとなくまとめ
    ● インフラ技術の進化で基盤、サービスの弾力性を強化しやすい
    ○ 勝手に直る設定
    ● よりユーザーに近いアラートを設定することが大事になってきた
    ○ API の ErrorRate / Latency 以外にも Forntend の描画速度

    View Slide

  18. © 2023 Wantedly, Inc.
    Thank you!!

    View Slide

  19. © 2023 Wantedly, Inc.
    障害対応の心構え - Wantedly Engineering Hanbook
    https://docs.wantedly.dev/introduction/incident

    View Slide

  20. © 2023 Wantedly, Inc.
    障害対応の心構え - Wantedly Engineering Hanbook
    https://docs.wantedly.dev/introduction/incident

    View Slide