geerlingguy.collectd-signalfx
Ansibleロール: SignalFxのためのCollectd
LinuxサーバーにSignalFxのCollectdフォークをインストールし、SignalFx用のcollectd統合を簡単に管理できるようにします。
必要条件
特にありません。
ロール変数
利用可能な変数は以下にリストされています。デフォルト値も記載しています(defaults/main.yml
を参照):
signalfx_token: ''
SignalFxトークンを設定してください。設定しないとcollectdの統計情報は送信されません!
collectd_hostname: ''
ホスト名を明示的に設定します。空のままの場合は、サーバーのFQDNが使用されます。
collectd_installer_url: https://dl.signalfx.com/collectd-install
collectd_install_command: "/tmp/collectd-install {{ signalfx_token }} -y"
collectd_bin_path: /usr/sbin/collectd
これらの設定はSignalFxのCollectdバージョンをインストールし、正しくインストールされていることを確認するために使用されます(collectd_bin_path
を利用)。通常、これらを変更する必要はありません。
collectd_signalfx_managed_config:
- url: https://raw.githubusercontent.com/signalfx/integrations/master/collectd-nginx/10-nginx.conf
filename: 10-nginx.conf
url
とfilename
を持つリスト項目を追加すると、指定したURLからcollectdのmanaged_configディレクトリに設定ファイルをダウンロードできます。新しい項目を追加すると、プレイブックの実行後にcollectdが再起動されます。SignalFxの例設定のリストについては、signalfx/integrations
リポジトリをご覧ください。
collectd_managed_config_changes:
- filename: 10-nginx.conf
regexp: '^ URL.+nginx_status"$'
line: ' URL "http://localhost:81/nginx_status"'
filename
、regexp
、line
のキーを持つリスト項目を追加することで、管理設定ファイルの行を変更できます。ポート番号の変更やフラグの切り替えなどが必要な場合に最も便利です。より複雑な変更が必要な場合は、自分のテンプレートをコピーしてください。
上記の例では、10-nginx.conf
ファイルがregexp
に一致する行(この場合は、 URL
で始まり、nginx_status
を含む行)をスキャンされます。その後、該当する行全体がline
パラメータの内容に置き換えられます。この場合、変更はNginxサーバーのポートを81
に設定します。
依存関係
特にありません。
例 プレイブック
- hosts: server
roles:
- geerlingguy.collectd-signalfx
ライセンス
MIT / BSD
作者情報
このロールは2017年にJeff Geerlingによって作成されました。彼はAnsible for DevOpsの著者です。
SignalFx Collectd installation for Linux.
ansible-galaxy install geerlingguy.collectd-signalfx