Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

共有、自動化、計測 - DevOps ツール考察 -

2,261 views

Published on

2019/04/24に開催された GitLab Meetup Tokyo #16: 新年度応援 で講演させていただいた、New Relic 佐々木の資料です。

Published in: Technology
  • Be the first to comment

共有、自動化、計測 - DevOps ツール考察 -

  1. 1. ©2008–18 New Relic, Inc. All rights reserved 共有、⾃動化、計測 - DevOpsツール考察 - New Relic 株式会社 ソリューションコンサルタント 佐々⽊ 千枝 ×
  2. 2. ©2008–18 New Relic, Inc. All rights reserved ⾃⼰紹介 New Relic 株式会社 ソリューションコンサルタント 佐々⽊ 千枝 (ささき ちえ) “ユーザー体験の向上”を⽬指したモニタリングツール、New Relic のソリューションをお客様にご紹介しています ■簡単な経歴 1. 外資系ベンダーでサーバー/ストレージを中⼼とした運⽤サービ スを提供(どOps) 2. 仮想化ソフトウェアベンダーでプライベートクラウドのための ソリューションを提供(やはりOps寄り) 3. (現在)New RelicでDevOpsの計測など、モニタリングに関する ソリューションを提供(Devにチャレンジ中)
  3. 3. ©2008–18 New Relic, Inc. All rights reserved 本セッションの⽬的 3 DevOpsとはなんぞやというのを(⾃分の学びのためにも) 今さら振り返ったうえで、GitLabやNew Relicなどのツールが どのように活⽤できるのか、具体例を交えながら考察する Thank you for collaborating with us, GitLab! ×
  4. 4. ©2008–18 New Relic, Inc. All rights reserved 本⽇のアジェンダ 4 1. DevOpsとはなんぞや 2. DevOpsとツールの関係 3. 共有のためのツール 4. ⾃動化のためのツール 5. 計測のためのツール 6. まとめ
  5. 5. ©2008–18 New Relic, Inc. All rights reserved 5 1. DevOpsとはなんぞや 2. DevOpsとツールの関係 3. 共有のためのツール 4. ⾃動化のためのツール 5. 計測のためのツール 6. まとめ
  6. 6. ©2008–18 New Relic, Inc. All rights reserved DevOpsとはなんぞや︖ 6
  7. 7. ©2008–18 New Relic, Inc. All rights reserved DevOpsの歴史 7 Dev Ops 多くても年に数回のリリース 静的な環境の運⽤ DevDevDev 頻繁なリリース Ops 運⽤が死ぬという事実(常に⽕消し) 2001年 アジャイルソフトウェア開発宣⾔ 2008年 “Agile Operations and Infrastructure: How Infra-gile are You?” (Patrick DeboisによるAgile Conferenceでの講演) 参考:
  8. 8. ©2008–18 New Relic, Inc. All rights reserved DevOpsの歴史(続き) 8 2009年 “10+ Deploys per Day: Dev and Ops Cooperation at Flickr” (FlickrのDevとOpsの⼈によるVelocity Conferenceでの講演) DevDevDev 1⽇10回以上リリース Ops 健全な運⽤ 協⼒関係 2009年 DevOpsDay開催 (Patrick Deboisが開催)
  9. 9. ©2008–18 New Relic, Inc. All rights reserved 歴史から⾒る”DevOpsとはなんぞや” 9 アジャイル開発のような動的な環境変化に対してうまく対処できる よう、組織が協⼒し合うための⽂化運動 ウォーターフォール アジャイル [この⽅式が合理的な(だった)理由] • ⼀度仕様を決めたらその後⼤きな変更 がない • ⼀度リリースしたあとに修正する(例. クラサバアプリケーション)のがたい へんなので最初からきちんと作る [この⽅式が合理的な理由] • ビジネスの状況に応じて仕様を柔軟に 変えていく • リリース後も頻繁に修正できる (例.Webアプリケーション)ので完成 度よりスピードを重視
  10. 10. ©2008–18 New Relic, Inc. All rights reserved 今DevOpsが重要な理由: デジタルトランスフォーメーションの波 10 モバイル Dunkin Brands テクノロジー GE Digital 旅客業 Airbnb ⼩売 Jet.com / Walmart eコマースで63%の成⻑ (Q3 2017) 今や191カ国、65,000 都市 をカバー。300万件を超える 物件を掲載 Predix IOT Software が $100M 売上の⾒通し (2017) エンターテインメント MLB 1⽇あたりのストリーミング セッション数が1億件 モバイル経由での売上が 2016年から70% の成⻑ ⾦融 Capital One 顧客と接触する機会のうち 75%がデジタル経由
  11. 11. ©2008–18 New Relic, Inc. All rights reserved 11 DevOpsの特徴 Devチーム Opsチーム 営業チーム マーケティング チーム 個⼈同⼠のコラボレーション とチーム同⼠のアフィニティ DevとOpsだけではなく、 ゴールを共有する⼈全て が関係者 “DevOps”というチーム やロールはない (⇔SRE) 最終形態ではなく 継続的なプロセス 何のツールを使っているか ではなくどうツールを活⽤ しているかが重要
  12. 12. ©2008–18 New Relic, Inc. All rights reserved DevOps の成熟度の評価基準”CALMS” 12 Culture(⽂化) Automation(⾃動化) Lean(無駄の排除) Measurement(計測) Sharing(共有)
  13. 13. ©2008–18 New Relic, Inc. All rights reserved ⾼度に成熟したDevOps チームの例 13 最も⾼度に成熟したDevOps チームは、未熟なDevOps チームと⽐較して 46倍以上 頻繁にコードを デプロイ 2,555倍短い コードのコミット からデプロイまで のリードタイム 1/7 の変更失敗率 2,604倍早い インシデントから の回復時間 出典: Accelerate: State of DevOps 2018 (DORA)
  14. 14. ©2008–18 New Relic, Inc. All rights reserved 14 1. DevOpsとはなんぞや 2. DevOpsとツールの関係 3. 共有のためのツール 4. ⾃動化のためのツール 5. 計測のためのツール 6. まとめ
  15. 15. ©2008–18 New Relic, Inc. All rights reserved DevOpsとツールに関する誤解 15 • DevOpsツールを使っていればDevOpsが実現できている︖ “ツールを導⼊していることは、devops⽂化が定着していることの⼗分条件にはならない ツールでは問題のある⽂化を修正できない” DevOpsは⽂化運動であり、ツールはその⽂化の変⾰を⽀え加速するための存在と いう位置づけ つまり⽬的を持ってツールを活⽤する姿勢が重要︕
  16. 16. ©2008–18 New Relic, Inc. All rights reserved GitLabもDevOpsツールだが、どう活⽤するかが⼤事 16
  17. 17. ©2008–18 New Relic, Inc. All rights reserved DevOpsの”CALMS”観点で考察してみる(個⼈的⾒解) 17 ①共有 ②⾃動化 ③計測
  18. 18. ©2008–18 New Relic, Inc. All rights reserved 18 1. DevOpsとはなんぞや 2. DevOpsとツールの関係 3. 共有のためのツール 4. ⾃動化のためのツール 5. 計測のためのツール 6. まとめ
  19. 19. ©2008–18 New Relic, Inc. All rights reserved 共有のためのツール 19 共有の⽬的: • チーム内の透明性が増し、チーム内に信頼が⽣まれる • 誰かが重⼤なミスをする前に防⽌策を伝えられる • チーム間での情報共有によりイノベーションが促進される “ヒューマンエラーを個⼈的なものではなく 構造的なものとして捉える”
  20. 20. ©2008–18 New Relic, Inc. All rights reserved 共有におけるGitLabの価値は、皆さんご存知のはず 20
  21. 21. ©2008–18 New Relic, Inc. All rights reserved 21 1. DevOpsとはなんぞや 2. DevOpsとツールの関係 3. 共有のためのツール 4. ⾃動化のためのツール 5. 計測のためのツール 6. まとめ
  22. 22. ©2008–18 New Relic, Inc. All rights reserved ⾃動化のためのツール 22 ⾃動化の⽬的: • ヒューマンエラーの削減による成果物の品質向上 • システム上で発⽣した問題に対し早期に対応する • 労⼒やエネルギーや資材を削減し、より付加価値 の⾼い業務に専念する
  23. 23. ©2008–18 New Relic, Inc. All rights reserved 様々なレイヤごとの⾃動化に対する取り組み 23 今流⾏りのK8sはここ GitLabの提供機能 はここ
  24. 24. ©2008–18 New Relic, Inc. All rights reserved Infrastructure as Code (IaC)とは︖ 24
  25. 25. ©2008–18 New Relic, Inc. All rights reserved IaC の実装によるアプリケーション開発⼿法の変化 25 アプリケーションの開発サイクルにインフラを組み込む
  26. 26. ©2008–18 New Relic, Inc. All rights reserved IaC の基本⽅針〜設定ファイルの利⽤ 26 構築したいインフラを設定ファイルで定義する
  27. 27. ©2008–18 New Relic, Inc. All rights reserved CI/CDとIaCを組み合わせるとこうなる 27 Repository アプリ コード Docker File K8s⽤ YAML アプリ 開発者 ローカル開発環境 検証クラスタ 本番クラスタ Registry C C コンテナ イメージ CI/CD ⾃動テスト C docker build AppWeb DBAppWeb DB
  28. 28. ©2008–18 New Relic, Inc. All rights reserved 28 1. DevOpsとはなんぞや 2. DevOpsとツールの関係 3. 共有のためのツール 4. ⾃動化のためのツール 5. 計測のためのツール 6. まとめ
  29. 29. ©2008–18 New Relic, Inc. All rights reserved 計測のためのツール 29 計測の⽬的: OODAループを回し、状況に柔軟に対応する (Observeに相当) システムの振る舞いもまた⽇々変化する
  30. 30. ©2008–18 New Relic, Inc. All rights reserved 30 DevOps 計測のチャレンジ(1)ロール間でのサイロ化 各ロールの計測したいこととそれを実現するツールがサイロ化している プロダクトオー ナー プロダクト マネージャー アプリ 開発者 インフラ 運⽤者 ビジネス システム 計測 したいこと DevOpsに関わ る⼈物 売上/コスト 顧客⾏動 ユーザー エクスペリエ ンス インフラの 状態 アプリの 状態 利⽤ツール それぞれ異なるツール 計測したいことは実際には密接に関 わり合っている ツールも共通化するのがベスト︕
  31. 31. ©2008–18 New Relic, Inc. All rights reserved 31 DevOps 計測のチャレンジ(2)複雑で動的なシステム 従来のシステムと⽐べて構成要素が多く、動的に変化する オンプレミス クラウド仮想マシン コンテナRDB NoSQLAPI マイクロサービスブラウザ モバイルアプリ フロントエンド バックエンド ⽇常的に変更が発⽣する
  32. 32. ©2008–18 New Relic, Inc. All rights reserved 32 DevOps 計測の実現に向けてNew Relic が提供しているもの フルスタックな 計測プラットフォーム DevOps 計測に向けた ソリューションガイド
  33. 33. ©2008–18 New Relic, Inc. All rights reserved 33 ちなみに GitLabとNew Relic、それぞれでできることの⽐較 https://about.gitlab.com/devops-tools/new-relic-vs-gitlab.html
  34. 34. ©2008–18 New Relic, Inc. All rights reserved New Relicが提供しているもの(1) フルスタックな計測プラットフォーム 34
  35. 35. ©2008–18 New Relic, Inc. All rights reserved 35 New Relic が考えるDevOps の計測フレームワーク ビジネスゴール ⽇次の 収益 カートあたりの 売上 売れ筋商品 カスタマー・エクスペリエンス アプリケーション/インフラパフォーマンス サービス品質 可⽤性 アプリエラー Javascriptエラー 開発の俊敏性 変更のリードタイム デプロイ数 MTTR CVR (顧客転換率) エンゲージメント エンドユーザー パフォーマンス アプリケーション パフォーマンス クエリー速度 バースト時の スケール
  36. 36. ©2008–18 New Relic, Inc. All rights reserved 36 “計測”(Measurement)を深掘りする 「計測」(Wikipediaより) “ある⽬的のために対象を量的に把握する技術・⽅法や⼿段の⽴案・計画から実⾏、そして⽬ 的の達成、結果を情報として利⽤できるようにする段階までを含む” つまり モニタリング ・・・だけではなくて 可視化 をするまでが計測です︕
  37. 37. ©2008–18 New Relic, Inc. All rights reserved 37 シナリオ1: アプリケーション/インフラパフォーマンスの計測 着⽬するメトリック: パフォーマンス関連 ✓ アプリケーションレスポンスタイム ✓ インフラの規模、可⽤性 ✓ クラウドへの⽀出 ✓ ホストの稼働率 ✓ データベースのパフォーマンス ✓ 3rd Party のサービスパフォーマンス
  38. 38. ©2008–18 New Relic, Inc. All rights reserved ダッシュボード例: うまく動いていない場合、どこに原因があるのか? 38
  39. 39. ©2008–18 New Relic, Inc. All rights reserved 39 シナリオ2: カスタマー・エクスペリエンスの計測 着⽬するメトリック: 顧客エンゲージメントや満⾜度 ✓ Apdex – フロントエンドおよびバックエンドの性能指標 ✓ ページロード・タイム ✓ インタラクションまでの時間 ✓ カートの放棄率 ✓ 収益に影響するエラー ✓ ユーザーごとの⽀払い失敗発⽣状況
  40. 40. ©2008–18 New Relic, Inc. All rights reserved ダッシュボード例: ⽀払いサービスのカスタマー・エクスペリエンス 40
  41. 41. ©2008–18 New Relic, Inc. All rights reserved 41 シナリオ3: ビジネスゴールの計測 着⽬するメトリック: ビジネスの価値 ✓ 取引当たりの収益 ✓ プロダクトミックス ✓ 取扱量 ✓ 平均注⽂額 ✓ 成⻑率
  42. 42. ©2008–18 New Relic, Inc. All rights reserved E-コマース ⽇次の収益 メディア 広告のヒット率 SaaSビジネス 解約率 新規顧客数 ダッシュボード例: ビジネスゴールに則したITダッシュボード キーとなるメトリック ダッシュボード分野 42
  43. 43. ©2008–18 New Relic, Inc. All rights reserved 43 DevOps の構成メンバーに合わせたトータルな計測を ビジネス デザイン プロダクト オーナー プロダクト マネージャー 製品 デザイン 開発 アプリ 開発者 サポート カスタマー サポート 管理 インフラ 運⽤者
  44. 44. ©2008–18 New Relic, Inc. All rights reserved New Relic が提供しているもの(2) DevOps 計測に向けたソリューションガイド 44
  45. 45. ©2008–18 New Relic, Inc. All rights reserved 45 DevOps 計測に関するNew Relic の⾏動規範 Prepare(準備) Activate(活性化) Optimize(最適化) インストゥルメント と基準値の策定 継続的な⾃動化、 コミュニケーション および改善 リアルタイムなフィードバック の取得と変更作業が及ぼす 影響の理解
  46. 46. ©2008–18 New Relic, Inc. All rights reserved 46 ⾏動規範の由来: New Relic 内のDevOps 実践経験 現在当初 New Relic のアラートと ダッシュボードを活⽤︕ Ruby のモノリシック アプリ サイロ化したチーム 頻繁でないリリース リアクティブな モニタリング 300以上の マイクロサービス 50以上のSREが 内包された開発チーム 1⽇に20-70デプロイ 1分間に20億のイベントと メトリックを取り込み
  47. 47. ©2008–18 New Relic, Inc. All rights reserved 47 ステップ1: 準備 インストゥルメントと基準値の策定 Activate(活性化) Optimize(最適化)Prepare(準備) New Relicの導⼊と設定 現状の可視化とSLOの策定 SLOに基づくアラートの設定
  48. 48. ©2008–18 New Relic, Inc. All rights reserved 48 ステップ2: 活性化 リアルタイムなフィードバックの取得と変更作業が及ぼす影響の理解 Optimize(最適化)Activate(活性化)Prepare(準備) チームで共有する ダッシュボードの作成 変更作業前後の推移を⽐較 インシデント対応の⾃動化
  49. 49. ©2008–18 New Relic, Inc. All rights reserved 49 ステップ3: 最適化 継続的な⾃動化、コミュニケーションおよび改善 Activate(活性化) Optimize(最適化)Prepare(準備) 顧客体験の改善アプリ依存関係の把握 インフラの最適化 運⽤レビューの実施
  50. 50. ©2008–18 New Relic, Inc. All rights reserved 50 DevOps 計測に向けたソリューションガイド(全体像) 準備 活性化 最適化 アプリやインフ ラの変更がSLO にどう影響した か理解 インシデント 管理プロセスに アプリケーショ ンデータを統合 個々のチームの ためのチーム間 共有ダッシュボ ードの作成 エラーやスロー トランザクショ ンの診断と解決 アプリケーショ ンサービスマッ プの作成と主要 なボトルネック の解決 サービスレベル のデリバリの 達成状況を部⾨ 横断的に広く レビュー 信頼性向上の ためエンドユー ザーをコホート 分析 チームダッシ ュボードの確 ⽴ インパクト の 継続的観測 インシデント オーケスト レーション 運⽤ レビュー 顧客体験の 改善 アプリの 改善 依存リスクの 軽減 KPI エラー率, レスポンスタイム, Apdex, MTTD, スループット KPI 可⽤性,デプロイの頻度, (削減された) 失 敗したデプロイ,変更作業のリードタイム, MTTR KPI SLO/SLA 遵守率, ⻑期化したインシデン ト数, ホストの稼働率 SLOとパフォー マンスのベース ラインを確⽴ ⽬標と ベースライ ンの確⽴ システムパフォ ーマンスを適切 に理解するため のアラートを設 定 プロアクティブ なアラート の設定 アプリケーショ ンへのリソース の割り当てを 最適化 インフラ リソース サイジング
  51. 51. ©2008–18 New Relic, Inc. All rights reserved 51 さらに詳しく知りたい⽅はこちらへ 弊社サイト DevOps ソリューションページ https://www.newrelic.co.jp/devops もしくは直接社員まで︕ New Relic 無料トライアル https://newrelic.com/signup
  52. 52. ©2008–18 New Relic, Inc. All rights reserved 52 1. DevOpsとはなんぞや 2. DevOpsとツールの関係 3. 共有のためのツール 4. ⾃動化のためのツール 5. 計測のためのツール 6. まとめ
  53. 53. ©2008–18 New Relic, Inc. All rights reserved まとめ 53 • DevOpsはデジタルトランスフォーメーションのための⽂化運動 である • DevOpsにおいて、ツールは⽂化の変⾰を⽀え加速するための存 在であり、⽬的を持って活⽤する • GitLabはDevOpsの特徴である共有、⾃動化、計測を⼿助けす るツールである • 計測に関しては弊社New Relicも専⾨ベンダーとして、ツールと ソリューションガイドを提供している
  54. 54. Thank You ©2008–18 New Relic, Inc. All rights reserved New Relic Japan のFacebook ページ

×