TICK Stack メトリクス

本セクションでは、TICK Stack と Genvid の統合方法を紹介しています。TICK は InfluxData のオープンソースの 時系列プラットフォーム (Time Series Platform) で、4 つのプログラムで構成されています。

  • Telegraf
    メトリクスコレクタ。
  • InfluxDB
    時系列データベース。
  • Chronograf
    Web インターフェイス。
  • Kapacitor
    リアルタイム配信処理エンジン。

シンプルなシステムを使用したメトリクスインターフェイスを以下に紹介します。これらは実際のプロダクションのために開発されたものではありません。現在、以下の制限がかかっています。

  • メトリクスデータとダッシュボード設定は、保持されません。
  • データのスペース割り当て管理はできません。

プロダクション用で TICK を使用する場合、実装については、TICK のマニュアルを直接参照してください。

インストール

ローカルクラスタでは、スタックの Windows バイナリ版をダウンロードします。

py tick.py download
py tick.py setup

1 つ目のコマンドでアーカイブのバイナリをダウンロードし、2 つ目のコマンドで解凍してローカルの .\bin フォルダにインストールします。

ローカル環境の構成

ローカル Bastion の設定後、以下のコマンドを実行します。

py tick.py load

これで、ローカルクラスタに 2 つのジョブとログが追加されます。

Telegraf
statsd 入力にポート 8125 を使用する telegraf 実行システムジョブです (Consul、Nomad および Vault セットアップのデフォルトポート)。
tick
ローカルで influxdkapacitordchronograf を実行する。

また、対応するサービスとログの追加だけでなく、 chronograf へのリンクも追加されます。

次に、Genvid サービスを開始します。

注釈

現在の SDK には不具合があり、正常な検出を行うには他のジョブより先に telegraf を開始する必要があります。

genvid-sdk start telegraf
genvid-sdk start

Cluster-UI インターフェイスやコマンドラインから、 chronograf を開きます。

genvid-sdk open chronograf

クラウドで実行する

警告

Genvid Tick は、クラスタからより多くのリソースを必要とします。内部インスタンスの数を増やす必要があります (こちらを参照)。 instance_internal_count の設定を 1 つ増やすことで行うことができます。

クラウド環境もローカル環境と同じようなものです。ローカルのバイナリではなく、公式の Docker イメージを、同じ設定で使用します。クラスタ設定後、スクリプトの呼び出しに --cluster を追加します。

ダッシュボードのエクスポートとインポート

tick.py スクリプトには、ダッシュボードをエクスポートおよびインポートする機能があります。これを行うには、ジョブが実行されていることを確認し、次のコマンドを使用します。

# import the dashboards from a file
py tick.py -c mycluster import-dashboards dashboards.json
# export the dashboards to a file
py tick.py -c mycluster export-dashboards dashboards.json

ファイル dashboards.json は、あらかじめ設定したダッシュボードを提供します。

スクリプトリファレンス

Setup script for tick stack

usage: tick.py [-h] [--loglevel {DEBUG,INFO,WARNING,ERROR}] [--logformat LOGFORMAT] [-c CLUSTER_ID]
               {env,download,setup,load,unload,import-dashboards,export-dashboards} ...

Positional Arguments

command 使用するコマンド: env, download, setup, load, unload, import-dashboards, export-dashboards

Named Arguments

--loglevel

使用するコマンド: DEBUG, INFO, WARNING, ERROR

スクリプトのログレベルを設定する

--logformat スクリプトのログ形式を設定する
-c, --cluster_id
 

クラスタ ID。コマンドラインで設定されていない場合は、環境変数 GENVID_CLUSTER_ID があればそれを使用します。それ以外の場合、デフォルトは 『local』 です。

デフォルト: 「local」

Sub-commands:

env

環境変数を出力する

tick.py env [-h]

download

アーカイブをダウンロードする

tick.py download [-h]

setup

アーカイブからセットアップする

tick.py setup [-h]

load

プロジェクトをロードする

tick.py load [-h]

unload

プロジェクトをアンロード

tick.py unload [-h]

import-dashboards

Chronograf ダッシュボードをインポート

tick.py import-dashboards [-h] [file]
Positional Arguments
file

ダッシュボードが含まれる JSON ファイル

デフォルト: 「dashboards.json」

export-dashboards

Chronograf ダッシュボードをエクスポート

tick.py export-dashboards [-h] [file]
Positional Arguments
file

ダッシュボードが含まれる JSON ファイル

デフォルト: 「dashboards.json」