あんまり例がないようなので?
Azure MonitorのデータをGrafanaで直接見ることが出来ます。
Azureの管理画面で見ればええやんってのもありますが、自分が欲しい時間帯のメトリックだけを表示させたい・・・とかには標準品では役不足です。
いやいや、Grafanaって何?っていう人は・・・
で、少し調べてくださいませ。カックイイ感じのグラフをグリグリやれるヤツです。
てことで、最近流行り?のGrafanaで何処までできるのか、ちょっと試してみた系です。まだ凝ったことまでは出来ないです・・・勉強時間が足りない・・・。
私が試している環境は”Grafana v6.3.5(67bad72)"で、Windows Serverにインストールしているものになります。
Azure Monitorとどのように連携するのかは・・・
こちらを読んでいただければ、なんとなくできます。
Grafanaは、ダッシュボードという公式の物とコミュニティの物を使ってある程度、グラフの汎用品を利用することが可能です。もちろん1から頑張ることも可能です。
https://grafana.com/grafana/dashboards
この中からAzureに使えそうなのをピックアップするんですが、これがまた結構な確率でそのまま動かない(苦笑)。
ただ、Grafana学習の最短距離は、数々の有志が作成したダッシュボードを解析することが理解の近道のような気がします。
て・・・事で・・・完成しました。
なんとなくシュッと出来たかな?まだ細かい単位的な部分は怪しい所もあります。
世間のサンプルだと、中々”Variables"の設定をしてという参考例が少ないと思うので、そこも少し紹介します。GrafanaはVariablesを駆使出来ないともったいないですよね。
でも中々自分が思うサンプルがなくて苦労する部分でもありますね…(^^;
今回は、Variablesを利用して、リソースグループの選択と、リソースネーム(vm)の選択ができるようにしました。内部ではネームスペースは固定にしています。
ネームスペースは”Microsoft.Compute/virtualMachines"を使っています。
ネームスペースで何のメトリックが取れるかは・・・
こちらでご確認ください。
ただーし・・・
私の努力不足なのか、拾えそうなのは上記の通り。
おそらくリソースグループを軸にしてしまっているからかな?!?!
ちょっとまだよくわかっていないです。Grafanaがどこまでできるのか、もっとできる子なはずです。
てことで、Variablesの設定内容です。これね・・・この画面だけじゃ詳しい設定内容が分からないんですよね・・・。
一応、参考で載せます。正解かどうかの保証はしません!
取得値が間違っていなければPreviewに欲しい情報が表示されるので、ここを見ながらセッティングする感じですね。あと先にVariables済みじゃないと式が使えなくなるので、順番も大事みたいです。
こんな感じで今回は設定しました。
しかしこの方法では弱点が1つあるっす。後ほど説明します。
まずはどうしてこいうしたかですが・・・参考にしていたダッシュボードのデータを見ていたからかもしれませんが・・・
クエリーにAzure Monitorを選ぶと、上記のような項目が最初からセットされるんですよ。。。なので必然と・・・こうなった・・・という感じです。
しかし、ネームスペースの条件を変更すると・・・
AzureVMのネットワークインターフェースってバインド型?なので、VMと紐づけて・・・という表現がちょっとスグに思いつかなかった。。。orz
他にもpublicIPAddressというのもあって、これはDDoSのパラメータとかも取れるようで面白そうなんですけど・・・VMとマッピングするにはVariablesで計算式を考えないといけないんで・・・
今回はパス!!
てことで「Microsoft.Compute / virtualMachines」のメトリックだけいけそうなやつをまとめた感じですが・・・
ぱっと見は良いんですが…
コレジャナイ感半端ないです・・・Orz
これなら、まだAzure インサイトで見たほうがいいかな…。
この取得したデータからはディスクのI/Oに対する危機感は持てますが、例えばディスク使用量が分からんす。ネットワークもピンと来にくい。最近のMiBとかGiB表現も好きじゃないですが、Bytesじゃグッと来ないですね。困った(^^;
Grafanaで困るのは、取得データの単位をどうするべという所と、CurrentなのかMaxなのかMinなのかAveなのかを取得時と表示時に考えなければならないです。
取得方法によっては、計算式を使って加工ができます・・・がAzure Monitorでの連携取得の場合、どこに計算を落とすのかがちょっとピンとこなかったです。
もっと他にとれるデータがあればいいんですけど。。。
Azure インサイトのデータが欲しいですね。そうすれば、Prometheusのwmi_exporterとか使わずに済むんですが。Agentがすでに4つぐらいぶち込んでいるので突っ込みたくないなぁ・・・もうちょっとお勉強が必要そうです。