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

Toil撲滅活動に終わりは来ない / NoOps Meetup Online#0 LT

Toil撲滅活動に終わりは来ない / NoOps Meetup Online#0 LT

Title: Toil撲滅活動に終わりは来ない

Event: NoOps Meetup Online #0
https://noops.connpass.com/event/198690/

Yoichi Kawasaki

December 16, 2020
Tweet

More Decks by Yoichi Kawasaki

Other Decks in Technology

Transcript

  1. Google SREのToilの定義 Toil is the kind of work tied to

    running a production service that tends to be manual, repetitive, automatable, tactical, devoid of enduring value, and that scales linearly as a service grows. Toil 説明 Manual (手作業) 手動作業。手動でスクリプト起動することもToil Repetitive (繰り返し行うこと) 新しい解決策や発明がなく、繰り返される作業 Automatable(自動化できること) 自動化できない人の判断を要することはToilではない Tactical(割り込み、受け身の作業) Strategicでない、突発的に発生するアラート、オンコール対応 No enduring value(永続的価値がない) 次の改善や価値に繋げられない作業 O(n) with service growth(線形増加) サービス成長、ユーザ数など応じて線形増加する作業 Chapter 5 - Eliminating Toil in Google SRE Book
  2. 技術的負債 Toil対応活動 vs. エンジニアリング活動(Toil削減活動含む) Toil対応活動 イノベーションとToil削減のための エンジニアリング活動 与えられた時間・リソース 50% •

    Toil削減に避ける時間が十分に取れず、技術的負債が増加していく • 新規開発やビジネスイノベーションに時間が避けなくなる
  3. SRE活動内容例 信頼性・安全性の改善 SLI/SLOやエラーバジェットの設定 構成管理の自動化 Toilの削減 監視・観測・計測 ポストモーテム、再発防止活動 Infrastructure as Code

    (IaC)、CI/CD Blue/Gree、カナリアリリース テスト自動化 カオスエンジニアリング パイプライン化・マニュアル化
  4. 腐りすぎるとその 代償はあまりにも 大きい • 技術負債だらけ • 刷新できない • 捨てられない •

    新しい価値提供に集中で きない 経済産業省 DXレポート 〜ITシステム「2025年の崖」克服とDXの本格的な展開〜 (2018.9.7) 極端な例
  5. 継続的にアップデートしながら進化できる状態 を目指したい • 安定的に生産、価値のデリバリ、改善のフィードバックループを回す • 空いた時間を新しい価値の創造や改善にまわす • トイルが最小化されている ⼈間 開発

    コード⽣産 履歴管理 パイプライン マーケット 監視観測・テスト (Observability) データ収集・解析(Data-driven) 価値のデリバリ ⽣産者 ⾃動化・⾃律化されたプロセス フィードバック
  6. Application Platform / Backing Services Infrastructure ⼈間 • 開発者 •

    SRE コード管理 履歴管理 パイプライン CI/CD 監視観測・テスト データ収集・解析 feedback log, metrics, raw data delivery 構成⼒のあるアプリ・インフラ ライフサイクルが⾃動化されている Recovery process 回復性があるアプリ+インフラ 回復性のあるアプリ • 必要な能⼒: self-healing, Auto Scaling, inflight renewal • 回復性に貢献するデザインパターン 回復性のあるインフラ • 可⽤性、弾⼒性がある設計 • Backing Servicesの活⽤ 可観測性のあるシステム • 状態・履歴を観測 • 観測された結果をフィードバック 復旧措置を持つシステム • 復旧措置(リカバリプロセス)+ SRE⼒ • ⾃動化、⾃律化できない、もしくは失敗したときの 復旧措置とそれを実⾏する運⽤⼒ • バックアップ・リストア、DRなども含む 継続的に運⽤サイクル を回していくための 組織・チーム編成 全ての経路・プロセスにお いて安全性(セキュリティ)が 担保されている feedback recovery NoOps的にはこんなイメージ