Skip to content
Latchkey

DevOpsとは?

DevOpsとは、ソフトウェア開発とIT運用を結びつけ、ソフトウェアをより速く、より信頼できる形で届けるための文化と一連の実践です。

DevOpsは、変更を出荷したい開発者と、安定を望む運用チームをしばしば隔てていた壁への応答として生まれました。DevOpsは、共有された当事者意識、自動化、速いフィードバックによってその壁を打ち壊します。

ツールより先に文化

その核心において、DevOpsは文化的なものです。開発者と運用が、コードを書くことから本番でそれを動かすことまで、ライフサイクル全体への責任を共有します。"コードを壁の向こうに投げる"のではなく、同じチームが自分たちのソフトウェアをbuildし、出荷し、サポートします。ツール、すなわちCI/CD、Infrastructure as Code、モニタリングは、そのコラボレーションを支えるために存在します。

中心となる実践

  • 安全に頻繁に出荷するための継続的インテグレーションと継続的デリバリー。
  • 環境を再現可能にするためのInfrastructure as Code。
  • 速いフィードバックのための自動テストとモニタリング。
  • 失敗から学ぶための、非難のないインシデントレビュー。

実例

あるチームがサービスを端から端まで所有します。彼らはコードを書き、CI/CD pipelineがそれをテストしdeployし、インフラはバージョン管理された設定で定義され、それが壊れれば同じチームが呼び出されます。自分のコードを運用する痛みを感じるため、彼らは運用しやすいように作ります。

なぜデリバリーを速めるのか

ソフトウェアを作る人がそれを動かしもすると、フィードバックループが縮まり、インセンティブが揃います。自動化は、かつて何日も要していた手動の引き継ぎを取り除きます。共有された当事者意識により、問題はチーム間でたらい回しにされるのではなく、根本で修正されます。測定可能な結果は、より速く信頼できるreleaseです。

DevOpsを測定する

チームはしばしばDORAメトリクスを追跡します。deployment頻度、変更のリードタイム、変更失敗率、そしてサービス復旧までの時間です。これら4つの数値は速度と安定性の両方を捉えており、それらを改善することはDevOpsの実践が機能しているかを判断する一般的な方法です。

重要なポイント

  • DevOpsは開発と運用を共有された当事者意識のもとで結びつけます。
  • CI/CD、Infrastructure as Code、モニタリングがその主要なツールです。
  • 信頼性を犠牲にせず、より速いデリバリーを目指します。

関連ガイド