Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
PagerDutyの歩き⽅ やさしいかんしミートアップ番外
Slide 2
Slide 2 text
こんにちは!
Slide 3
Slide 3 text
@o0h_です!
Slide 4
Slide 4 text
ࣗݾհ • ίωώτגࣜձࣾ • αʔόʔαΠυΤϯδχΞ • ओʹCakePHPͳͲ
Slide 5
Slide 5 text
今⽇のお話: PagerDuty、使っていくよ〜!
Slide 6
Slide 6 text
Έͳ͞ʙΜʂ PagerDutyɺ͍ͬͯ·͔͢ʙʙʂ
Slide 7
Slide 7 text
No content
Slide 8
Slide 8 text
Ͱ͢ΑͶʙʙ(Θ͔Δ)
Slide 9
Slide 9 text
コネヒトにおける これまでのPagerDuty
Slide 10
Slide 10 text
以前のコネヒト
Slide 11
Slide 11 text
PagerDuty = お電話システム • (なんのためのツールかはさておき) とにかく「電話を鳴らしてくれる」やつ • 寝てても・・安⼼だね! • 死活監視(Pingdom)と同時に導⼊。 「緊急事態」に電話で叩き起こされないね!
Slide 12
Slide 12 text
͏ͪΐͬͱ͚ͩɺͪΌΜͱ͍ͬͯ͘Ͷɻ
Slide 13
Slide 13 text
PagerDutyとは?
Slide 14
Slide 14 text
4FSWJDF *OUFHSBUJPO &YUFOTJPO *ODJEFOU "MFSU &TDBMBUJPO 1PMJDZ /PUJpDBUJPO3VMFT 4FSWJDF 4FSWJDF 6SHFODZ 4FWFSJUZ
Slide 15
Slide 15 text
主たる概念 ServiceはIntegrationとExtension、AlertsとIncident を束ねる概念である。IntegrationからAlertされた内 容をもとにIncidentが作成される。Incidentは Extension経由で外部サービスへ送信されると同時 に、Escalation Policyに基づいてユーザーにアサイン される。アサインされたIncidentのUrgencyに応じ て、ユーザーごとのNotification Rulesに基づき対応 するチャネルを通じて通知が⾏われる
Slide 16
Slide 16 text
No content
Slide 17
Slide 17 text
Escalation Policy • Incidentを「誰に」「どの順番で」通知 (assign)していくか、というルールの設定 • 例えば、「まずはオンコール担当者に」「そ の後5分経っても誰も反応がなければリーダー に」「更に10分経っても誰も反応しなかった らシフト外も含めて全員に」のような
Slide 18
Slide 18 text
Incident(status) • Incident = 問題 • Incidentはstatusを持ち、Triggered: 発⽣ -> Acknowledged: 対応中 -> Resolved: 解決済み と進展す る • Triggered, Ack’edをまとめて「Opened」と呼ぶ • Ack’ed 以上にならないと、次のユーザーにエスカレー ションされる
Slide 19
Slide 19 text
Alert • Alertは、接続されたサービス(Integration)か らの異常の通知 • 複数のAlertが、条件によってIncidentに集約 されるイメージ • AlertがIncidentをTriggerすることもあるし、 Resolveすることもできる
Slide 20
Slide 20 text
Alert, Incidentの重⼤性 • AlertはSeverity、IncidentはUrgencyという重⼤性に関 するフィールドをそれぞれ持つ • Severityは5段階、Urgencyは2段階(High/Low) • Policyに基づいてEscalationされるのはhigh-urgencyの Incidentのみ • Severityに応じてUrgencyを適⽤する設定も可能(次 ページ)
Slide 21
Slide 21 text
No content
Slide 22
Slide 22 text
Integration / Extension • 「Alertを受け付ける」ための外部接続が Integration ➡ CloudWatch, Pingom, Sentry • 「Notificationを送る」ための外部接続が Extension ➡ Slack
Slide 23
Slide 23 text
Service • Serviceは0個以上のIntegrationやExtensionを 持つ(1:n) • ServiceはAlertやIncidentを集約する(1:n) • Serviceは1つのEscalation Policyと紐づく(n: 1)
Slide 24
Slide 24 text
Notification Rules • Notification Rulesはユーザー個々⼈が設定するもの ➡ Serviceの持つ設定じゃないよ! • Urgencyに対して通知ルールを設定する 1. high-urgency がアサインされた時 2. high-urgency が status:xxxに変更された時 3. low-urgencyがアサインされた時
Slide 25
Slide 25 text
No content
Slide 26
Slide 26 text
࠷ݶɺ͜ͷ֓೦ͱྲྀΕΛ ֮͑ΕΑ͍ͷͰɾɾ