リクルート流SRE・インフラ運用がサービスを変える世界"を講演しました"
河村聖悟
SRE部シニアマネジャーの河村です。6月8日に、@IT編集部主催の「SREのエンタープライズ適用を考える」において、特別講演を行いましたので、その内容について共有します。
当初講演のお話を頂いた時から、今回聴講頂いた方々に何か持って帰ってもらえるような話をしたい、という思いを込めて発表内容を決めていきました。
特に、運用・オペレーションというものは、比較的地味な印象を持たれていると思いますし、一旦手順としてルールが与えられると簡単には変えがたいものと思われるでしょう。
しかし、どんな環境であっても、どんな人でも、運用に対して技術的な取り組みは可能ですし、様々な方法や視点で改善を盛り込んでいけるクリエイティブなものであるという事を中心に据えてお話しすることにしました。
SREとは、簡単に説明すると、サイト信頼性の向上を命題におき、運用オペレーションにソフトウェアの知識を持ち込む事で、自動化やトイル(雑用)の撲滅によってオペレーションにかかる時間の半分を空け、その時間を用いて運用効率化・改善に当てていく手法を指します。こうした手法によって、システムのスケールに応じて運用に関わる人がリニアにスケールしない仕組みを作ります。更に元を辿ると、Ben Traynor氏が同様の活動をすべくGoogleで立ち上げた運用オペレーションの組織名です。
つまり、組織として改善の活動を行っていくマインドセットが骨子となりますが、いつの間にかSREといえば構築や運用の自動化が先立つイメージが出来上がっており、エンタープライズの世界でSREのような考え方を導入したくても、かけ離れた世界の出来事と感じ、特に運用に従事される方の中には、自動化やソフトウェアという単語から、その敷居の高さに尻込みしてしまうという人も多いようです。
今回の講演では、我々がSREの活動を通じてやってきた活動、それを通じて得た気づきを通じて、SREという理論に対して、実践する際に本来大切にすべきことは何であり、改善の活動は実際いかにベタなものであり、どんなエンタープライズ環境であっても適用が検討できるようなものであるという事をお伝えしました。
発表の中では色々なお話をしていますが、我々が実践で得た共有できる気づきとして、あえて絞るなら大きく3つのポイントがあります。
1.改善すべきポイント
発表の中で、我々の経験値として、SREという活動の中では運用の効率化・改善を行っていくにあたって自動化は本質ではなく、まず現状を疑い、運用フロー・運用手順・アラート・コミュニケーション等、本来から運用の中にある作業を徹底的に洗い出しシンプル化し見直して、時には捨てる事によって効率化を実現する事がまず必要となる、というお話をしました。
誰もがトライできるこういった地道な積み重ねこそが運用効率化の肝であり、だからこそ、様々なアイデアを導入できるクリエイティブ性の強い要素を持ち合わせています。そういった改善の過程に、ソフトウェアの知識を組み合わせられれば、さらなる改善の余地が生まれますが、何もソフトウェア実装自体が全てを救うわけではないし、何でもかんでも自動化する必要もない。自動化自体がメンテナンスコストのかかるもので導入はポイントを絞ってよく考える必要がある、というのが伝えたかった事です。
ソフトウェア化が得意なエンジニアは、目的や導入時の効果、自動化に至るまでの整理を考えるよりも先に、実装・手段から話にはいってしまう事が多いのですが、そういったケースにおいて持つべき視点として、参考になればと思っています。
2.マインドセットの形成
SREを推進する上で大切な要素は先に述べた通りマインドセットの形成で、改善に尻込みしない風土の醸成が必要となりますが、そのためには個々人の失敗をチームや仕組みでカバーし、より良くしていこうと前を向いた振り返りがしていけるかがポイントとなります。
減点方式で個人のミスに厳しくなりがちなオペレーションの中で、本質的な問題を救い上げ、個人のミスの起きやすい作業を捨て、フローや仕組みでカバーしていくには、より多くの理解者が必要で、ぜひ広く知っていただきたい思いでお話しました。
3. インフラからもサービスを変えていける
今回の結びとして、聴講いたいだいた方々のSRE導入時の参考になればと、リクルートのSREが今後どんな活動をしていきたいのかについても触れています。
SREの活動の要素の1つとして、モニタリングによる現状の見える化というものがあります。ユーザがWebアプリを利用する際、実際に利用する機能と、機能の性能を支える非機能の両面によってユーザ体験が支えられていますが、モニタリングによる現状の見える化は、非機能面の隠れた問題点を明るみに出す事ができ、アプリ面での従来機能要件やバグ・性能改善に囚われがちな視点を、インフラやミドルウェアの使い方からサービス自体を安定させ快適にしていく、という活動につなげていく事ができます。
リクルートのSREは、リクルートグループ全体にある数百のサービスに対して、まだ足りていない非機能分析のサイクルを作り出し、インフラでありながらも、ユーザにより快適で安定したサービスを提供していく役割を担っていこうとしています。ごくごく当たり前のような活動でも、まだまだやれることはあります。
運用・オペレーションはクリエイティブなもの
運用・オペレーションというものは、アイデア次第で様々な工夫や施策を盛り込める「クリエイティブなもの」であり、手法で変えることも、技術で変えることもでき、取りうる選択肢は非常に多いエキサイティングな職業です。SREという活動を通じて、インフラに従事しながらも、サービス自体を変えていく事だってできます。こうした改善活動は、どんな環境・どんな人でも挑戦する事が可能であり、そういったチャンスがいつも目の前にあるのだ、というお話を結びしました。聴講いただいた方が実践に繋げていけるきっかけになったらと思っています。
今回は、SREにとって特に大切な運用の観点でお話させていただきましたが、実際の取り組みや自動化、技術的な挑戦についても色々お話したい事があります。今後、SRE部のメンバーからまた、様々なメディアにて連載・発表を通じて公開していく予定です。