オブザーバビリティもFinOpsも
すべてはデータに基づく意思決定のために
松沢 敏志(まつざわ さとし)氏
株式会社日立製作所
シニアクラウドアーキテクト
■「オブザーバビリティ」という言葉が登場する以前からその役割の重要性を認識
― いつごろ、どのようなきっかけでオブザーバビリティと出会われたのでしょうか。
大学卒業後、ソフトウェアエンジニアとして日立製作所に入社し、Linuxのカーネル開発に携わった後、Linuxの技術サポートとして障害解析や脆弱性情報の提供をするようになりました。その業務の中で、サーバー内の動きを追えるようにしておくことは、安定したシステム運用のためにはとても重要だと感じていました。
例えば、実際にディスクへの書き込み遅延が起こっていているのに障害ログとしては記録がないというケースでは、当時のハードウェアチームは「障害なし」と判断し、より詳細な調査へ行く前に手を止められてしまうこともありました。しかしながら、運用には影響が出ている。そこで、Linux、HBAカード、Fibre Channelスイッチ、ストレージ装置…どのタイミングで遅延が発生するのかトレースするプログラムを組んで解析した結果、HDDの仕様による制御で一定の条件下では書き込み速度を制限するようになっていたことがわかりました。
逆に障害ログが出ていても、ユーザー側には大きな支障がないということもあります。これらはいずれも全体をトレースし、そのデータを解析することで的確な対応を取ることができるのです。当時はまだ「オブザーバビリティ」という言葉は使っていませんでしたが、その概念についてはこの時点ですでに理解していました。
■オブザーバビリティの浸透を目指し、勉強会を組織
― オブザーバビリティ普及のためにどんな取り組みをされたのでしょうか。
Linuxの成熟に伴い、仮想化技術についても業務領域を拡大し、仮想化ソフトウェアやアプリケーション群を含むハイパーコンバージドインフラ(HCI)の構築にも携わるようになりました。その経験を買われ、CCoE(クラウド推進活用組織)部門の立ち上げメンバーとしてアサインされます。これはパブリッククラウドへの移行時期にインフラやクラウドに強いメンバーを集めて総合的な技術支援を行う目的で組織されたチームです。そのメンバーはシステムが複数のアプリケーションやサービスの組み合わせで複雑になる中、どこで何が起こっているか、従来のような後追いで洗い出すのは非効率だとみな気づいていました。オブザーバビリティの重要性についての理解が広がっているのを実感した瞬間でした。
パブリッククラウドの普及にともない、オブザーバビリティの重要性については一層広く認識されるようになっていきます。ところが、クラウドベンダーが提供する機能は限定的で、本来の目的を果たすためには自分たちで作りこむ必要がありました。そこで、もう少し手間をかけずにできるだけ詳細にトレースする方法はないかと探っているうちに、New Relicをはじめとする専用ツールの海外事例を知り、ぜひ自分たちも取り入れてみたいと思うようになりました。
ただ、当時はまだ日本国内での事例はほとんどなかったため、自ら勉強会を組織し、メンバー相互の学びから得たものをフィードバックしながら技術支援を行う、という流れを作りました。勉強会はオブザーバビリティに限らず、様々なクラウドサービスについての新機能なども含め、実際の案件で取り組んだ結果や気づきなども共有する場として、現在も続けています。
■クラウドネイティブ時代のFinOpsに欠かせないオブザーバビリティ
― オブザーバビリティが活きる具体的な事例を教えてください。
パブリッククラウドにおいてオブザーバビリティが重要になるのは障害対応だけではありません。オンプレミスとはコストの仕組みが異なるため、導入時からコスト最適化を考慮しておくこと、つまりFinOpsの手法を取り入れることは極めて重要です。しかしながら、実際には「まずゴールにたどり着く」ことを優先してしまい、その結果サービスのリリース後にクラウドのコストがかさんで、結局採算が取れない、というケースは珍しくありません。
そういった流れの中で、最近のクラウドサービスには統計データに基づいて「もう少しスペックを落としてコスト削減ができます」という提案をしてくれる機能が備わっています。ただ、それはあくまでも実際の運用を加味しない理論上の推計値なので、提案をうのみにしてしまった結果、想定外の影響が出てしまうリスクがあります。そういった場合にもオブザーバビリティのツールで動きを追っていれば実際にどこでどのような影響が出るかを把握しながら最適化することが可能になるのです。
また、近年FinOpsはAI関連でも取り入れられることが多くなっていますが、コスト削減が目的というより、ビジネスのスピードは保ちつつコスト的な閾値を超えそうな局面を的確に把握し、その時が来てもスムーズに対応するための仕組みとして重要視されています。そして、この判断を正確にするためにもオブザーバビリティは欠かせません。
■システム担当者に寄り添った説明でオブザーバビリティの理解を促す
― 普及に取り組まれる中で、課題だと感じていることはありますか。
Linuxのサポートをやっていた頃と比べ、オブザーバビリティの重要性は広く認知されるようになりましたが、実際にはまだまだ従来の「監視」と混同し、オブザーバビリティの機能が備わっているにも関わらず、ログ監視頼みで運用しているようなケースも見受けられます。パブリッククラウドではオンプレミスの時のようなシンプルなシステム構成ではないのですが「これまでこれでやってきた」という意識からなかなか抜け出せないのです。理解を深めてもらうためにはどうしたらいいか、今も常に悩みながらあれこれ試行錯誤しています。
例えば、オンプレミス時代のシステム担当者はハードもソフトもすべて対応する必要があり、多忙でした。そのため、「ユーザー体験の検証」といった部分については手が回っていませんでした。クラウドに移行してからはハードの保守から解放されているのだから、その分ユーザー体験に目を向けましょう、と言ってみたり、できるだけ納得感のある説明をするよう心がけています。
また、社内Gamedayの企画運営にも挑戦しており、オブザーバビリティを経験したことのないエンジニアに体験してもらい、そのすばらしさを肌で感じてもらうといった活動にも取り組んでいます。
■時代の最先端を行くトップランナーであり続けたい
― 今後の取り組みについて教えてください。
これまで新しい技術や概念、そのためのツールなど多くのことを自ら学び普及に努めてきました。イベント登壇を依頼される機会も増えましたが、いつも必ずお伝えするのは「データに基づいたリアルタイムな判断、意思決定を行うことが本質」ということです。オブザーバビリティやFinOpsはその本質を究めるためのものだからこそ重要なのです。
技術は常に新しくなっていきますし、自分自身Linuxからパブリッククラウド、そして今はAIと携わる領域は変化してきています。過去にクラウドベンダーからトップエンジニアとして表彰されたように、これからも常に最先端を行くトップランナーとしてその時々に必要とされていることに携わっていきたいと考えています。
■New Relicは向上心のあるエンジニアに便利なツール
― 最後に、読んでいただいた方へのメッセージをお願いします。
New Relicでは、競合他社のようなホスト課金でなく、全ての機能にフルアクセス可能なユーザーアカウントが提供されていますが、これは新しい技術の習得に余念のないエンジニアにとって「思いついたらすぐ試せる」非常にありがたいサービスです。お客さまにも試しに使っていただき、効果を実感していただくこともできるので、実はNew Relicはお客さまの中でもっとも多く選ばれているツールでもあります。今後もNew Relicとともに、意思決定の場面において勘や経験則、雰囲気や声の大きさなどではなく、誰でも理解できる確かなデータに基づく意思決定が当たり前になっていくよう活動していきたいと思います。一般の方が参加可能な勉強会も開いていますので、エンジニア向け勉強会プラットフォームで「FinOps」などのキーワードで探してみてください。