直感的なマップ、ネットワーク機器のポートまで詳細に調査可能
実際にAppDynamicsの具体的な姿を見ていこう。AppDynamicsでまず確認できるのが、アプリケーション全体のフローマップだろう。ユーザーがアプリケーションにアクセスし、どのサーバーを経由し、どんな外部サービスと接続しているか直感的なマップが表示される。加えて経路ごとに使用したプロトコルと処理時間も示されている。この処理時間については、ベースラインラーニングにより通常状態を常に学習しており、異常値と判断するための閾値を動的に自動設定する。すなわち四半期毎、月毎、週毎といったトレンドを学習する。また、何かのイベントで大きな遅延が発生するなど異常な状態が発生するとアラートを発呼し、自動的にスナップショットを取得する。スナップショットからは、時間がかかった箇所をメソッドやソースコードの行のレベルで特定が可能だ。
他にもトランザクションの処理シーケンスを表示できる。どのような順番でデータベースやリソースにアクセスしているかが分かるものだ。関屋氏は「複雑なトランザクションの内部の動きを正確に把握できます。開発時のデバッグ等にも使えます」と胸を張る。
先に桂田氏が言及したように、シスコ製品との連携により真の「エンドツーエンド」の監視が可能となっている。もともとシスコが得意とするネットワーク領域にAppDynamicsでアプリケーション領域が加わり、網羅性を高めている。AppDynamicsはデータセンター用のスイッチ(Cisco Nexusシリーズ)の管理ソフトウェアであるNexus Insightsと連携でき、スイッチのASICが出すハードウェアレベルのテレメトリも合わせて障害時の原因分析を行うことができる。例えばスイッチのどれかのポートがダウンしたとする。こうしたネットワーク障害がどのアプリケーションに影響を与えているのかをSREが把握することも可能だ。あるいは逆にアプリケーションでネットワークの遅延を疑ったら、どのスイッチのどのポートで通信しているのかまで即座に細かく調べることができる。
さらにシスコは2020年9月にネットワークインテリジェンスのThousandEyesを買収することで、インターネットトラフィックも含めて把握できるようになった。ThousandEyesは世界中のインターネットの経路にエージェントを配置しており、あらゆる場所からのインターネットのパフォーマンスを把握できている。DNS、ISP、パブリッククラウドなどインターネットを経由する処理までも調査ができる。どこを経由しようとエンドツーエンドで分かるようになっているのがAppDynamicsの強さだ。
こうした広範な監視ができることで、ハイブリッドクラウドやマルチクラウドにおけるワークロードの最適化も実現可能となる。遅延を見てどこにリソースを増強したらいいかの判断、逆にリソースに余裕があるならコスト最適化の判断をCisco Intersight Workload Optimizerとの連携で実現する。
ハイブリッド環境でミッションクリティカルなシステムを持つ企業が導入
導入企業はあらゆる業種で多岐にわたり、グローバルでは3000社を超える企業が本番環境で導入している。Nasdaq、Okta、Alaska Airlinesなどは有名だが、シスコ自身もWebexや自社の受注管理システムで利用している。特にミッションクリティカルなサービスを提供している企業が目立つ。例えばオンラインチケット販売など、少しでも遅延が起こるとビジネスに影響が出てしまう企業からは特に頼りにされている。
シスコとAppDynamicsは、コンテナやKubernetesといったクラウドネイティブなテクノロジーにも積極的だ。シスコはCNCF(Cloud Native Computing Foundation)メンバーのなかでも最上位となるPlatinumに名を連ねている。桂田氏は「Kubernetesのクラスタエージェントや オープンテレメトリーへの対応などクラウドネイティブなアーキテクチャの機能追加には力を入れています」と話す。
最後にそれぞれの推し機能を尋ねてみると、山本氏はトランザクションスナップショットを挙げた。「エラーや遅延ごとに、障害が起きたデータフローやログ等が全て自動で収集され、何が起きていたかをあとで確認できるため、障害時に非常に強力なツールとなります」と話す。なお山本氏はAppDynamicsのほぼ全てのソースコードへアクセスが可能で、必要に応じて自ら書き換えてビルドすることもできる。内部構成を詳細に把握している日本人サポートエンジニアがいる点は心強い。
関屋氏はカスタムダッシュボードと網羅性を挙げた。「ダッシュボードはそれぞれの使う人の目線に合わせてカスタマイズできます。あとカバーできる範囲が広いので網羅的に監視ができるところが強みです。多角的な視点で見ることができます」と話す。
もしAppDynamicsを試したいなら、おすすめはシスコのDevNetだ。基本的な解説がドキュメントや動画で用意されている。ハンズオンで手を動かしたいなら、ウィザード形式で試せるLearning LabやSandboxもある。過去のウェビナー(日本語)の録画や日本向けイベントの録画も公開されている。
アプリケーションのモダナイゼーションをするなら管理や監視もモダナイズしていく必要がある。APMのなかでAppDynamicsは心強いツールとなりそうだ。