ブログ

新しく改善されたダッシュボード:PromQL、チーム共有など!

Google Cloudとコンテナの継続的なセキュリティ

本文の内容は、2020年6月11日にHarry Perksが投稿したブログ(https://sysdig.com/blog/new-promql-dashboards-more/)を元に日本語に翻訳・再構成した内容となっております。

Sysdigによる初のクラウドスケールのPrometheusモニタリングサービスの発表に伴い、Prometheusクエリー言語であるPromQL をサポートするために、ダッシュボードエクスペリエンスをゼロから再構築する必要がありました。クエリー言語は、エコシステム内のメトリックをクエリするための標準的な方法であり、Sysdig Monitor内でメトリクスをスライス/ダイスするまったく新しい方法です。ただし、ダッシュボードをより速く作成したい人にとって、PromQLに関連する急な学習曲線で妨げられないようにする必要がありました。

Sysdig Monitor内でダッシュボードを使用すると、PromQLとシンプルなフォームベースのエディターの両方をサポートする完全なエンドツーエンドのソリューションが提供されます。複数のクラウド間で統合されたすべてのPrometheusメトリクスを表示し、Sysdigの深いレベルのテレメトリで問題をトラブルシューティングし、チームでメトリクスにRBACを提供し、エンタープライズグレードのアクセスコントロールを考慮したコンプライアンスを確保できます。

次世代ダッシュボードの一般提供を発表いたします。本日より、ホスト型クラウド環境内のユーザーはダッシュボードを使い始めることができ、セルフホスト型のお客様は、今後数か月の間にこれらの機能にアクセスできるようになります。

良いニュースは、あなたがする必要があるものは何もありません-あなたのダッシュボードのすべてがあなたのために移行されるということです。🎉

PromQLまたはSysdigのフォームベースのクエリ-または両方を統合

PromQLは、Sysdig内のメトリクスを照会する強力な方法です。複雑な数学演算、統計分析を実行し、さまざまな関数を使用してメトリクスをさらに掘り下げることができます。PromQLを使用すると、高度な関数と演算子を使用して、インフラストラクチャーの状態とパフォーマンスに関するより多くの質問に答えることができます。

PromQLをマスターすることで、モニタリングの専門知識をレベルアップしたように感じるかもしれませんが、学習曲線が急である事を見過ごしたくありませんでした。フォームベースのダッシュボードエディターが、すぐに立ち上げて実行したいユーザーのために保持されるようにしました。基本的なクエリーを実行して、各Kubernetesデプロイメントごとにグループ化されたCPU使用状況を確認する場合は、結合と関数で構成される複雑なPromQLクエリを記述する必要はありません。また、単純なレポートを実行して適切なサイズ設定タスクを実行するだけの技術者以外の人にとっては、複雑ではありません。

20200619-01.png

Sysdig Monitorのフォームベースのダッシュボードを使用して、PromQLの知識がなくてもインフラストラクチャーの状態とパフォーマンスに関するクエリーに答えます

しかし、運用中のWebトラフィックの95パーセンタイルの応答時間を知りたい場合はどうでしょうか。または、Webリクエストの何パーセントが5xxエラーでしたか?ファイルシステムがいっぱいになるまでの日数はどうですか?最後に、過去30日間のSLOに対するパフォーマンスはどうですか?

来週のファイルシステムの使用量を予測することで停止を解消

まず、predict_linear関数を利用してPromQLクエリを作成し、特定のファイルシステムの翌週のディスク使用量を予測します。次に、予測された値を数値パネル内のテキストにマッピングして、問題が予想されるかどうかを明確にし、チームが問題を先取りできるようにします。

次に、Sysdigのアラートエンジン内で同じクエリーを使用して、PagerDuty、OpsGenie、電子メール、Slack、カスタムWebhookなどを介して、来週問題が発生することをチームに通知できます。

20200619-02.png

predict_linear(node_filesystem_free{device=$Device}[7d], 604800) 1週間= 604800秒

インジケーターを使用してSLOを測定することにより、合意事項を満たす

インフラストラクチャーから出力されるメトリクスを使用してSLOを測定し、SLAの境界内にあることを確認できます。ヒストグラムを使用すると、特定の期間内に正常に配信されたリクエストの割合を簡単に把握できます。

20200619-03.jpg

sum(rate(http_request_duration_seconds_bucket{le="1"}[$__interval])) by (kubernetes_cluster_name)/ sum(rate(http_request_duration_seconds_count[$__interval])) by (kubernetes_cluster_name)

数学的演算で複数のメトリクスをスライドさせてダイス

複数のメトリクスを取得して、それらに対して数学演算を実行してください。たとえば、実際の使用量に対する最大値を測定することにより、JVMメモリの割合を計算できます。

20200619-04.jpg

sum by (cluster_name) (avg_over_time(appinfo_jvm_mem_heap_used[$__interval])) / sum by (cluster_name) (avg_over_time(appinfo_jvm_mem_heap_max[$__interval])) * 100

また、同じダッシュボード内でPromQLとSysdigの両方のフォームベースのパネルをシームレスに統合して、統一されたエクスペリエンスを実現できます。

20200619-05.png

Sysdigの新しいダッシュボード内で、PromQLまたはSysdigの単純なフォームベースのビューのいずれか、または両方を使用します

新機能と改善点は何ですか?

私たちは、前世代のダッシュボードについて何が優れているか(そしてそれほど優れていないか)についてお客様からのフィードバックに耳を傾け、対処しました。新機能と改善された機能のリストを以下に示します。

Prometheus用のRBACと改善されたダッシュボード共有モデル

Sysdigチームを使用すると、組織の一部は、関心のあるPrometheusメトリクスとテレメトリにのみアクセスできます。RBACを完全にサポートすることで、分析ツールシステムの保守を担当するアプリケーションチームに、ネームスペースから出力されるメトリクスのみへのアクセスを提供したり、オンコールチームに本番ホストへの読み取り専用アクセスを付与したりできます。

私たちはSysdig Monitor内のマルチテナント共有機能の継続的な改善に取り組んでおり、お客様は単一のダッシュボードを作成してSysdigチーム間で共有したいと考えています。また、よりきめの細かい共有制御も求めています。

本日より、Sysdigチーム内のユーザーとダッシュボードを共有したり、きめ細かいアクセス制御でチーム間でダッシュボードを共有したりできます。それらのダッシュボードを表示できるユーザーと、それらに付与する必要があるアクセスのレベル(表示のみ、または編集権限を持つコラボレーター)を定義できます。

20200619-06.jpg

インテリジェントな$ __ interval

クエリー内で$ __ intervalを使用すると、Sysdigは選択した時間範囲に応じて、クエリーに最適なサンプリングをインテリジェントに入力します。 これにより、長い時間範囲を選択した場合のダウンサンプリング中に、利用可能な最も詳細なデータへのアクセスの提供のバランスが保たれます。

スコープ変数

ダッシュボードレベルでスコープ変数を設定して、クラスター、ネームスペース、ワークロードなどに基づいてすばやくスコープを設定できます。$variable これをクエリー内で動的に使用できます。これはトラブルシューティングの際に非常に重要です。PromQLクエリーを再設定せずにコンテキストをすばやく切り替えることができるためです。

20200619-07.jpg

appinfo_jvm_mem_heap_used{cluster_name=$elasticsearch_cluster}

スマートなオートコンプリートと構文の強調表示

オートコンプリートはメトリクス、演算子、関数を提案し、構文の強調表示は正しいパスを維持し、クエリ内の問題を強調表示するのに役立ちます。これは動的環境では非常に貴重であり、適切なクエリをより迅速に作成することができます。

時系列名のテンプレート化

Prometheusメトリクスとセグメントに関連付けられたラベルを使用してダッシュボードパネルの時系列をカスタマイズし、コンテキストをより速く取得します。たとえば、メトリクスにジョブの種類を示すラベルがある場合は、{{job_type}}を時系列のわかりやすい名前として使用します。

20200619-08.png

ユーザーエクスペリエンスの向上

より流動的で自然なダッシュボード作成エクスペリエンスを導入しました。UIが再設計され、新しいパネルエディターにより、メトリクスを視覚化するための最良の方法を簡単に作成できます。本当に素敵に見えます!

20200619-09.png

新しい編集エクスペリエンスはページ全体を利用し、パネルの作成を容易にします。

マルチメトリクス、マルチセグメンテーション

1つのパネル内で複数のクエリーを構成し、各クエリーを複数のセグメンテーションとスコープオプションで設定します。個々のクエリーをカスタマイズして、線またはスタック領域としてレンダリングできます。たとえば、ネームスペース内のすべてのポッドのメモリリクエストを面グラフとして積み重ね、最大メモリクォータを折れ線グラフとしてグラフ化し、キャパシティの問題を理解できます。

20200619-10.png

イベントオーバーレイ

メトリクスとイベントの両方の統合ビューでメトリクスをコンテキスト化し、「なぜ」をより早く理解します。イベントオーバーレイを設定して、Kubernetesからのイベント(デプロイメント、ノード障害など)、アラートイベント、セキュリティ違反、およびSysdigのオープンREST APIを使用して取り込まれたその他のイベントを表示します。

20200619-11.png

ダッシュボードテンプレート

ダッシュボードテンプレートを使用して迅速に立ち上げ、実行できます。Sysdigのキュレートされたダッシュボードの1つのレンズを通してインフラストラクチャーを表示するか、それをベースとして使用して独自のダッシュボードの構築を開始します。私たちは、Kubernetesのキャパシティとヘルス、ホストとサーバーのパフォーマンス、アプリケーションとサービスのテレメトリ、Sysdig Secureから提供されるデータを使用したインフラストラクチャーのセキュリティ体制を管理するためのダッシュボードテンプレートを用意しています。

さらに、エンタープライズクラスのPrometheusモニタリング用のリソースカタログであるPromCat.ioをリリースしました。完全なターンキーソリューションを活用して、サポートされているPrometheusエクスポーターと、有意義なダッシュボードおよびアラートを組み合わせてKubernetesおよびクラウドネイティブアプリケーションを監視し、開発者の生産性をより速く加速します。

ダッシュボードナビゲーションにダッシュボードテンプレートがあります。事前定義されたスコープ変数を使用して、インフラストラクチャー内の特定のエンティティからのメトリクスを簡単に確認できます。ダッシュボードテンプレートは編集用に設計されていないことに注意してください。テンプレートをコピーしてカスタマイズを開始するのは簡単です。

値をテキストにマッピングする

数値パネルの値をテキストにマッピングすることで、何が起こっているかを即座に理解します。上昇の場合は1、下降の場合は0を返すメトリクスがある場合、それらの値をそれぞれ「UP」と「DOWN」にマッピングします。しきい値を定義することにより、値について心配する必要があるかどうか疑う余地はありません。これは、ダッシュボードがチームメンバー間で共有される場合に非常に重要です。

20200619-12.png

きめ細かな軸と凡例コントロール

軸と凡例を細かく取得します。軸をカスタマイズするときの柔軟性が向上し、長い名前の時系列のサポートが改善されました。凡例の表示を切り替えてパネルの下部に移動することで、凡例を構成できるようになりました。

未来

PromQL機能とまったく新しいユーザーエクスペリエンスを備えたこれらの新しいダッシュボードをリリースできることを嬉しく思います。 私たちはすでに、より柔軟な視覚化をサポートするための追加のダッシュボード機能の構築と、ダッシュボードの構築と管理を容易にするための改善に取り組んでいます。新しいダッシュボードだけでなく、次に何を見たいかについてのフィードバックをお待ちしています。

Sysdigに関するお問い合わせはこちらから

最近の投稿

カテゴリー

アーカイブ

ご質問・お問い合わせはこちら

top