前回の記事では、各組織の体制や文化が異なる中で、どのような目的、意図をもって進めていけば、Site Reliability Engineering(SRE)の導入につなげられるかのプラクティスについてお話しました。
今回は、SREにおけるデータを測定する重要さ、データの種類と収集方法、システムの運用での活用について紹介します。
データを測定する重要さ
まず、SREとDevOpsがどのように関係しているかを踏まえてお話します。表1は、Googleが提唱する「class SRE Implements DevOps」です。DevOpsは思想、SREは具体案と捉える考え方です。その中に、「Measure everything(全てを測定する)」という思想があります。「SRE サイト リライアビリティ エンジニアリング」からも引用しますが、DevOpsの一面として、「Measurement Is Crucial(測定は重要である)」と述べられています。
測定は重要である
最後に、サイロの解消やインシデントの解決など、ビジネス全般において測定は特に重要です。これらの環境では、客観的な測定によって何が起こっているのか、現実を確認し、期待通りに状況が変化しているかどうかを検証し、異なる機能が合意する会話のための客観的な基盤を作るのです(これはビジネスだけでなく、オンコールなど他のコンテキストにも当てはまります)。
(出展:「SRE サイトリライアビリティエンジニアリング Chapter 1 - How SRE Relates to DevOps」)
その目的は、サイロやシステム障害(インシデント)、ビジネス全般における課題解決です。SREは、「オペレーションはソフトウェアの問題である」と捉え、これらの課題を解決するためにはどのように、どのようなデータを測定し、分析していくかを規定していきます。
(参考:What’s in Your Google Cloud DevOps Toolbox ?)