stuart.stuart_go_carbon
Ansibleロール for go-carbon
このロールは、Graphite/Carbonサーバーの_Golang実装_であるgo-carbonをインストールおよび構成します。
要件
このロールは、carbonコンポーネントのインストールのみを担当します。デフォルトのGraphiteインストールで元のCarbonプログラムを無効にする必要があります。
ロール変数
go-carbonの設定は、3つの辞書の値に基づいて自動的に生成されます:
go_carbon_conf:
common:
user: "carbon"
max-cpu: 4
whisper:
data-dir: "/var/lib/graphite/whisper"
go_carbon_storage_schemas:
default:
pattern: ".*"
retentions: "60s:30d,1h:5y"
go_carbon_storage_aggregation_rules:
default:
pattern: ".*"
xFilesFactor: 0.5
aggregationMethod: "average"
最初のレベルは、それに対応するファイルに[section]
を作成し、他のすべてのキー/値はそのセクションにキー/値エントリを作成します。
go_carbon_conf
の中で唯一の特筆すべき例外は、logging
です。go-carbonは複数のロガーをサポートしているので、次のように複数のエントリを定義できます:
go_carbon_conf:
logging:
- logger: ""
file: "/var/log/go-carbon/go-carbon.log"
level: "info"
encoding: "mixed"
encoding-time: "iso8601"
encoding-duration: "seconds"
## ここにさらにロガーを追加できます。[[logging]]セクションとして表示されます
# - logger: ""
# file: "stderr"
# level: "error"
注意: デフォルトの値はvars/main.yml
の中のgo_carbon_conf_defaults
にありますが、go_carbon_conf
辞書を使用して上書きする必要があります。
依存関係
追加の依存関係はありません。
例プレイブック
これはgo-carbonをインストールし、その設定をカスタマイズして必要なディレクトリを作成します。
- hosts: servers
roles:
- { role: stuart.go-carbon,
vars: {
go_carbon_conf:
common:
user: "graphite"
max-cpu: 2
whisper:
data-dir: "/var/local/whisper"
cache:
max-size: 2500000
go_carbon_storage_schemas:
default:
pattern: ".*"
retentions: "60s:30d,1h:5y"
go_carbon_storage_aggregation_rules:
default:
pattern: ".*"
xFilesFactor: 0.5
aggregationMethod: "average"
}
}
ライセンス
GPLv3
著者情報
このロールは、Davide Ferrariによって最初に作成され、Stuartで働いているときに作られました。私たちの活動に興味があれば、ぜひお知らせください! 採用しています!