Share
Embed
Video
Transcript
35 slides
-
目次 Copyright © NIFTY Corporation All Rights Reserved. 2 自己紹介
システム紹介 アクション まとめ 自己紹介、今日の話 登録情報検索ツール(仮称:cweb)について、cwebの課題 SLI/SLO決め、測定 わかったこと、今後の展望、まとめ -
仲上 浩豪(ナカガミ ヒロトシ) 入社:2021年4月 新卒入社(3年目) 所属:インフラシステムグループ 情報システムチーム 担当:カスタマーサポート向けツールの開発・保守/運用 趣味:筋トレ・ドライブ 自己紹介
Copyright © NIFTY Corporation All Rights Reserved. 3 -
今日の話 Copyright © NIFTY Corporation All Rights Reserved. 4 カスタマーサポートのツールにSLI/SLOを導入した話
• お客様の登録情報を確認するツール ◦ 仮称:CWEB • 具体的な手法 ◦ SLI/SLOの設計 ◦ ログからメトリクスを作成する 方法 ◦ 使用したツール -
システム紹介 Copyright © NIFTY Corporation All Rights Reserved. 5 なぜCWEBを選んだのか?
お客様のご登録・ ご契約情報の確認 対応履歴・ 次アクションの登録 書面の発送 -
システム紹介 Copyright © NIFTY Corporation All Rights Reserved. 6 なぜCWEBを選んだのか?
お客様からの電話問い合わせ対応に必須のツールだから CWEB 起動 本人確認 お客様サポート -
システム紹介 Copyright © NIFTY Corporation All Rights Reserved. 8 CWEBの課題
CWEB • 可観測性が低い ◦ ログはすべてサーバ内 ◦ レイテンシなどは取得していない ◦ サーバー監視のみ ▪ 死活監視 ▪ リソース監視 ◦ 報告ベースでの対応 -
アクション Copyright © NIFTY Corporation All Rights Reserved. 9 SLI/SLOを決める
• (クリティカル)ユーザージャーニーの検討 • 候補となるサービス評価指標の選定 • サービス評価目標の仮ぎめ 外部から観測可能な状態にする • 監視ツールの選定 • 各種設定 -
アクション Copyright © NIFTY Corporation All Rights Reserved. 10 SLI/SLOを決める
• (クリティカル)ユーザージャーニーの検討 • 候補となるSLIの選定 • SLOの仮ぎめ 外部から観測可能な状態にする • 監視ツールの選定 • 各種設定 -
用語解説 Copyright © NIFTY Corporation All Rights Reserved. 11 (クリティカル)ユーザージャーニーとは
ユーザージャーニーとは • ユーザーがそのシステムで達成する目的 クリティカルユーザージャーニーとは • ユーザーにとって「一番価値がある」こと (クリティカル)ユーザージャーニーの決め方 • サービス概要書き出し • ユーザージャーニーを洗い出し • 優先度順に並び替える -
アクション Copyright © NIFTY Corporation All Rights Reserved. 12 CWEBの(クリティカル)ユーザージャーニーを考える
CWEBのクリティカルユーザージャーニー • お客様情報の確認 • 契約コースの確認 • オプションの契約状況確認 • 請求明細、決済ステータスを確認 -
アクション Copyright © NIFTY Corporation All Rights Reserved. 13 SLI/SLOを決める
• (クリティカル)ユーザージャーニーの検討 • 候補となるSLIの選定 • SLOの仮ぎめ 外部から観測可能な状態にする • 監視ツールの選定 • 各種設定 -
用語説明 Copyright © NIFTY Corporation All Rights Reserved. 14 SLI/SLOとは
SLI (Service level indicator) サービスレベルの指標 サービスの信頼を測る物差し ex)レイテンシ、エラー率、可用性 SLO (Service level objective) サービスレベルの目標値 下回ったらインシデント ex)レイテンシ 1.0s以下 90%、1日の正常なレスポンスの割合 99.95% -
アクション Copyright © NIFTY Corporation All Rights Reserved. 15 候補となるSLIの選定
社内ドキュメント SLOの作り方(やさしい) より Service SLI Type Metrics リクエスト主導型サービス 可用性 正常に処理された有効なリクエストの割合 レイテンシ しきい値よりも速く処理された有効なリクエストの割合 品質 サービスの中断なしに処理された有効なリクエストの割合 データ処理サービス 鮮度 しきい値よりも最近更新された有効なデータの割合 カバレッジ 正常に処理された有効なデータの割合 正確性 正しい出力を生成した有効なデータの割合 スループット データ処理率がしきい値よりも速い時間の割合 スケジュールされた実行サービス スキュー 予想開始時刻の許容時間内に開始される実行の割合 実行時間 許容時間内に完了した実行の割合 -
アクション Copyright © NIFTY Corporation All Rights Reserved. 16 候補となるSLIの選定
社内ドキュメント SLOの作り方(やさしい) より Service SLI Type Metrics リクエスト主導型サービス 可用性 正常に処理された有効なリクエストの割合 レイテンシ しきい値よりも速く処理された有効なリクエストの割合 品質 サービスの中断なしに処理された有効なリクエストの割合 データ処理サービス 鮮度 しきい値よりも最近更新された有効なデータの割合 カバレッジ 正常に処理された有効なデータの割合 正確性 正しい出力を生成した有効なデータの割合 スループット データ処理率がしきい値よりも速い時間の割合 スケジュールされた実行サービス スキュー 予想開始時刻の許容時間内に開始される実行の割合 実行時間 許容時間内に完了した実行の割合 -
アクション Copyright © NIFTY Corporation All Rights Reserved. 17 Service
SLI Type Metrics リクエスト主導型サービス 可用性 正常に処理された有効なリクエストの割合 レイテンシ しきい値よりも速く処理された有効なリクエストの割合 品質 サービスの中断なしに処理された有効なリクエストの割合 候補となるSLIの選定 社内ドキュメント SLOの作り方(やさしい) より クリティカルユーザージャーニー • 契約コースの確認 • オプションの契約状況確認 • 請求明細、決済ステータスを確認 画面ごとでSLOを分離 -
アクション Copyright © NIFTY Corporation All Rights Reserved. 18 SLI/SLOを決める
• (クリティカル)ユーザージャーニーの検討 • 候補となるSLIの選定 • SLOの仮ぎめ 外部から観測可能な状態にする • 監視ツールの選定 • 各種設定 -
アクション Copyright © NIFTY Corporation All Rights Reserved. 19 SLOの仮ぎめ
良いイベント 有効なイベント × 100 [%] 社内ドキュメント SLOの作り方(やさしい) より -
アクション Copyright © NIFTY Corporation All Rights Reserved. 20 SLOの仮ぎめ(可用性)
(総アクセス数-エラー画面表示 数) 総アクセス数 × 100 [%] -
アクション Copyright © NIFTY Corporation All Rights Reserved. 21 SLOの仮ぎめ(レイテンシ
トップビュー) (総アクセス数 -レイテンシ3秒以上のアクセス) 総アクセス数 × 100 [%] -
アクション Copyright © NIFTY Corporation All Rights Reserved. 22 SLOの仮ぎめ(レイテンシ
トップビュー以外) (総アクセス数 -レイテンシ1秒以上のアクセス) 総アクセス数 × 100 [%] -
アクション Copyright © NIFTY Corporation All Rights Reserved. 23 SLI/SLOを決める
• (クリティカル)ユーザージャーニーの検討 • 候補となるSLIの選定 • SLOの仮ぎめ 外部から観測可能な状態にする • 監視ツールの選定 • 各種設定 -
アクション Copyright © NIFTY Corporation All Rights Reserved. 25 Datadogとは
• 監視のSaaSサービス • 監視対象の幅が広い ◦ ログ、トレース、メトリクス • エージェントを入れるだけで使用可能 • SLOダッシュボードの作成が容易 -
アクション Copyright © NIFTY Corporation All Rights Reserved. 26 SLI/SLOを決める
• (クリティカル)ユーザージャーニーの検討 • 候補となるSLIの選定 • SLOの仮ぎめ 外部から観測可能な状態にする • 監視ツールの選定 • 各種設定 -
アクション Copyright © NIFTY Corporation All Rights Reserved. 27 apacheログ整備
172.11.11.111 - - [25/May/2023:15:57:51 +0900] processing time: 1158 us "GET /cweb/images/tab.png HTTP/1.0" 200 1824 "http://cweb.nifty.co.jp/cweb/registerinfocsm.php?tk=0&id=testID" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 10.0; WOW64; Trident/7.0; .NET4.0E; .NET CLR 2.0.50727; .NET CLR 3.0.30729; .NET CLR 3.5.30729)" 172.26.70.139 - - [25/May/2023:15:57:51 +0900] processing time: 290996 us "GET /cweb/result.php?tk=0&id=testID HTTP/1.0" 200 12699 "-" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 10.0; WOW64; .NET4.0E; .NET CLR 2.0.50727; .NET CLR 3.0.30729; .NET CLR 3.5.30729)" { "time": "[25/Oct/2023:16:11:04 +0900]", "forwardedfor": "-", "host": "127.0.0.1", "req": "GET /backend/info?id=testID HTTP/1.1", "status": 200, "method": "GET", "uri": "/backend/info?id=testID", "body_bytes": 5861, "referer": "-", "ua": "-", "reqtime_microsec": 510302, "response_time": 0, "cache": "-", "runtime": "-", "vhost": "127.0.0.1" } -
アクション Copyright © NIFTY Corporation All Rights Reserved. 28 ログのメトリクス化(レイテンシ)
• ログを15秒間隔で区切り、データセットを作成する • 作成したデータセットのP95を求める なぜP95を使うのか? • 極端な外れ値を除外し、より精度の高い統計情報にするため ※P95とは データセットにおいて、以下の条件を満たすしきい値 • 全体の95%のデータがP95以下の値を持つ • 全体の5%のデータがP95以上の値を持つ -
アクション Copyright © NIFTY Corporation All Rights Reserved. 29 ログのメトリクス化(レイテンシ)
• ログを15秒間隔で区切り、データセットを作成する • 作成したデータセットのP95を求める (総アクセス数 -レイテンシ1秒以上のアクセス) 総アクセス数 × 100 [%] -
アクション Copyright © NIFTY Corporation All Rights Reserved. 30 ログのメトリクス化(可用性)
• ログを1分間隔で区切り、データセットを作成 • 各データセットの数(総アクセス数)をカウント • 各データセットの悪いイベントの数(エラー画面数)をカウント (総アクセス数-エラー画面表示 数) 総アクセス数 × 100 [%] -
やってみた結果 Copyright © NIFTY Corporation All Rights Reserved. 32 •
システムの状況が一目でわかるようになった • SLOベースのアラートが上がるようになった 副産物 • システムの目指すべきところが明らかになった -
今後の展望 Copyright © NIFTY Corporation All Rights Reserved. 33 •
ユーザージャーニーを見直して、システムにSLI/SLOの項目を 追加・見直しする • プロダクトオーナーと相談して、SLOをよりユーザーにそった 形にする • プロダクトのSRE成熟度向上 ◦ オンコール強化 ◦ 障害ロールプレイング -
今後の展望 Copyright © NIFTY Corporation All Rights Reserved. 34 プロダクトのSRE成熟度向上
評価項目 • オンコール対応 • サービスレベル目標 • トイルの撲滅 • ポストモーテム • 監視(モニタリング) 評価段階 L0.対応していない・考えていない L1.対応はしているが、属人化 ・場当たり的 L2.チームメンバーが反復可能 L3.ベストプラクティスに基づいた反 応 -
まとめ Copyright © NIFTY Corporation All Rights Reserved. 35 •
社内ツールにSLI/SLOを導入してみた • ログは構造化しましょう • 社内ツールでもSLI/SLOの設定は有効