Elasticsearchでパフォーマンスメトリクスを収集し、Grafanaで可視化
En este post vamos a intentar ver cómo visualizar cualquier métrica de rendimiento de un equipo Windows Server o de sus servicios como sea SQL Server, 交換… con la intención de poder visualizarlos en tiempo real en Grafana.
アイデアは、Elastic Stackのエージェントの1つを使ってそれらを収集することです, この場合はMetricbeatを使います, そしてこれがElasticsearchに保存する役割を果たします; Grafanaを使ってデータにアクセスし、興味に応じて可視化します. 以前、Metricbeatの導入方法やシステムのレプリカを収集する方法について書いた投稿があります, あなたが望むなら ぜひ見てください, 今日取り上げるのはPerfmonやリソースモニターのパフォーマンスカウンターです, あるいは私たちが呼びたい名前で構いません.
Instalando Metricbeat
La instalación de Metricbeat ya la conocemos, es muy sencilla, bastará con descargarnos el fichero ZIP de x64 de https://www.elastic.co/es/downloads/beats/metricbeat y descomprimirlo en 'C:\Program Files\metricbeat’. Para crear el servicio de Metricbeat ejecutamos:
cd 'C:\Program Files\metricbeat\'
.\install-service-metricbeat.ps1
Editamos el fichero de configuración de Metricbeat, y al menos creamos la conexión contra nuestro servidor de Elasticsearch y el de Kibana:
...
# ---------------------------- Elasticsearch Output ----------------------------
output.elasticsearchと入力します。:
# 接続するホストの配列.
ホスト: ["httpsの://FQDN_ELASTIC:9200"]
ssl.verification_mode: なし ユーザー名: "利用者"
パスワード: "パスワード"
インデックス: "metricbeat-%{+yyyy です。MM.ddの}"
...
# =================================== Kibana ===================================
setup.kibana:
ホスト: "httpsの://FQDN_KIBANA:5601"
ssl.verification_mode: 何一つ
...
Probamos la configuración:
.\metricbeat.exe test config -c .metricbeat.yml -e
Cargamos los dashboards de Kibana (Si los dashboards ya los hemos importado alguna vez podremos ignorar el primer comando) y arrancamos el servicio:
.\metricbeat.exe setup Start-Service metricbeat
Si queremos quitar el servicio, vaya desinstalar filebeat alguna vez:
.\uninstall-service-metricbeat.ps1
Habilitando métricas de los servicios y contadores de rendimiento del Windows
まぁ, pues tendremos que habilitar este módulo, 次のコマンドでそれを行います:
.\metricbeat.exe modules enable Windows
Lo siguiente será saber qué contadores de rendimiento renemos, esto lo podemos mirar con este comando de PowerShell:
Get-Counter -ListSet *
Y ya será cuestión de indicarle a Metricbeat cuales queremos recopilar, editamos el fichero de configuración del módulo 'C:\Program Files\metricbeat\modules.d\windows.yml’ y se lo indicamos, 例:
# Module: ウィンドウズ
# Docs: httpsの://www.elastic.co/guide/en/beats/metricbeat/7.x/metricbeat-module-windows.html
- モジュール: windows メトリックセット:
- サービス period: 1m
- モジュール: windows メトリックセット: [perfmon]
時代: 10s perfmon.ignore_non_existent_counters: true perfmon.group_measurements_by_instance: true perfmon.queries:
- オブジェクト: "PhysicalDisk"
フィールド : "ディスク"
例: "*"
カウンター:
- 名前: "Disk Writes/sec"
- 名前: "% Disk Write Time"
フィールド: "write_time"
形式: "浮く"
- オブジェクト: "PhysicalDisk"
フィールド : "ディスク"
例: "*"
カウンター:
- 名前: "Disk Reads/sec"
- 名前: "% Disk Read Time"
フィールド: "read_time"
形式: "浮く"
- オブジェクト: "MSSQL$VEEAMSQL2012:データベース"
フィールド : "データベース"
例: "*"
カウンター:
- 名前: "データファイル(s) 大きさ (キロバイト)"
...
ファイルを保存します, Metricbeatサービスを再起動し、Elasticsearchにデータがあるか確認します. いつも通り, Kibanaに移動し、データが入ってきたら「Management」に進むことができます > 「スタック管理」 > 「キバナ」 > 「インデックスパターン」 > インデックスパターンを作成する「インデックスパターンを作成」, 私が言ったように, いつも通り (この場合、引用符は付けません) ‘metricbeat-*’ に、Elasticsearchにデータが正しく格納されていることを確認します. 次に “Analytics” に接続し、 > “Discover” からMetricbeatインデックスを確認し、データが収集されていることを表示できます.
Elasticsearchにデータが入ったら、他の投稿で何度も見てきた手順に従うだけです, それは, (私) GrafanaからElasticsearchへのコネクタまたはデータソースを作成し (イ) 必要なダッシュボードを作り始めるということです. これはSQL Serverサーバーから収集されたデータの単なる例です, そこでは、かなり興味深く一般的なカウンターを見ることができます, データベースのサイズや増加率と同様に, 接続数, レイテンシ…
これでどんな可能性があるか想像してみてください, Windowsにインストールされている任意のサービスには独自のカウンターがあり, それらを希望する周期で収集することができます, 1秒単位で, 10s, 30s… そしてその可視化も同様です, リアルタイムの飲料またはデータを大量に取り込んだ後の分析でレポートを作成するためのもの…
何もない, これで終わります, SQL Serverにあるカウンターを簡単に見る方法:
カウントを選択(*) FROM sys.dm_os_performance_counters;
以上です, 皆さんの環境における可能性を見るための参考になることを願っています, 必要なデータを収集できること, それは後でやめてください, 作業する, さまざまなプロファイルに合わせたカスタムダッシュボードを作成する, 週次レポート… ああ、話が長くなってしまった, みんなにハグ!











































