Instana

次世代の APM(アプリケーションパフォーマンスマネージャー)「Instana」

Instanaはアプリケーションのレーテンシーなどにシビアな性能が求められる環境で、ハードウェアからOS、コンテナ、ミドルウェア、アプリケーションまで各層のパフォーマンスを1秒単位でモニターし、AIを活用して問題部分を特定して警告するAPMです。設定なしでで自動的に環境のアップデートを検知するので、アジャイル環境で頻繁に構成が変化しても、モニタリング変更のための作業でエンジニアに負担を一切かけません。Opsだけでなくアジャイル開発にも活用できるソリューションです。

Instana 情報サイトにアクセス

高速開発のためのAPM

Instana

DXの高速開発に必要なAPM

DX(デジタルトランスフォーメーション)がこれからのビジネスに必須とされている今、システムのクラッシュや速度低下はブランドイメージの毀損や直接的な収益減となって跳ね返ってきます。そこで、常にアプリケーションのパフォーマンス、具体的にはレスポンスタイムを監視し、異常があればアラートを上げ、ハードウェア、ミドルウェア、マイクロサービス、他社APIなど、どこのパートが原因かを表示してくれるのがAPMです。

DXの高速開発に必要なAPM

アジャイルで複雑化するソフトウェア

ユーザーニーズに素早く対応するため、アジャイル手法の重要度はますます大きくなっています。アジャイルではアプリケーションを常に更新し続けることが奨励されますが、モノリシックな巨大アプリではそのようなことは不可能です。そこで、アジャイル開発では膨大な数のマイクロサービスを組み合わせ、Kubernetesなどの手法でコンテナ化したアプリを管理し、CI/CDサイクルを回す手法が用いられます。

その結果、システムが複雑になるため、従来型のエージェントを各マイクロサービスに組み込まなければならないAPMでは、システムの変更の際にAPMの構成も同時に変えなければなりません。例えばJavaをモニタリングしようとすると、アプリケーションサーバ自体をリスタートする必要があるなど、せっかく高速開発をしようとしているのに、監視のための設定に時間と労力を割かなければならないということになりかねません。

Software that is as complicated as possible

ノーコンフィギュレーションで自動的に監視を開始

各パーツにエージェントを組み込まねばならなかった従来型のAPMとは違い、InstanaはOSごとに1つのエージェントを設定するだけでアプリケーション間の通信を監視します。コマンドを1つ打つだけで、あとはエージェントが全てやってくれます。現在のシステムがどのようなレイヤーからできていて、どれとどれのマイクロサービスが連携しているのかなどを自動的に調べ上げ、モニタリングを始めます。現在稼働中のプロセスがどのポートを使ってどことどのような通信しているか、例えばJavaならばダイナミックにバイトコードを埋め込んで調べます。システム構造の調査は常に行われるため、どこかに変更があれば素早く発見してモニタリングを続けます。これにより、監視ツールに手を入れることなく、もし不具合があればInstanaが発見し、すぐに手戻りして修正、再度投入してチェック、問題がなければ次の開発へというCI/CDサイクルを高速で回すことができるのです。これが、Instanaが監視だけでなく高速開発のためのAPMであるという所以です

AIによる変化の検知

Instanaはバックエンドのサーバに組み込まれたAIによるパターンマッチングでレイテンシー、レスポンス、コール数の変化など、パフォーマンスの変化を監視します。トランザクションがどのように流れていき、どのサービスにどのくらい時間がかかっているのか、どのサービスが落ちたためにトランザクションに失敗しているのかなどがひと目でわかる、可視化したダッシュボードを備えています。AIによる変化の検知例えば新しいコードを投入したところパフォーマンスに変化が生じたということがすぐに分かります。もちろん常にグラフを見ていれば分かることですが、ずっと見続けていることはなかなかできません。そこで、変化のあった部分を色を変えて表示したり、PagerDutyやSlackなど各種ツールとの連携でアラートを発することができます。また、プラグインでGrafanaによるカスタムダッシュボードの利用も可能です。

Webページのどこから呼ばれたかを調べる

Instanaは書き出されるログデータの監視も行っています。HTMLのヘッダに小さなJavaScriptを書いておくことで、Webページのどこがクリックされてどのサービスが呼び出されてエラーになっているのかを知ることもできます。

1秒間隔のモニタリングとオーバーヘッドの軽さ

APMで問題となるのは、高度な監視をすればするほどオーバーヘッドが増大することです。これに対しては、数々の技術を使い1秒ごとのモニタリングにも関わらず1%程度の負荷しかかかりません。

生データはInstanaのバックエンドクラウドで解析されるため、通信帯域も問題になります。そこで、変化のあったデータのみを送るなどの圧縮をほどこして、他社製品のようにデータのサンプリングをせずにデータ量を最小化しています。

低コスト高機能

このように高機能ながら、従来製品と比べて驚くほどの低コストを実現しているため、採用する企業が急増しています。Eコマースやゲームなど、パフォーマンスが死活的に重要な業界だけでなく、DX実現のためにより高速な開発を望んでおられる企業などにマッチするソリューションです。ぜひお気軽にお問い合わせください。

Instanaに関するお問い合わせはお気軽にお寄せください。