2017-08-20 8 views
0

変数を宣言してicinga2 hostsセクションで再利用するにはどうすればいいですか?今私はIcinga2ホストサーバを動作させるために、以下の設定を使用してください

vars.health_check["my_module1"]={ 
    host = "HEALTH_CHECK_SERVER_URL" 
    module = "my_module1" 
} 

vars.health_check["my_module2"]={ 
    host = "HEALTH_CHECK_SERVER_URL" 
    module = "my_module2" 
} 

問題ご覧の通り、私は同じホストアドレスを再宣言しなければならないということです。私は以下のようなサービスの外でホストアドレスを入れると、それは動作しませんと​​のリロードは失敗します。

end_url = "HEALTH_CHECK_SERVER_URL" 
    vars.health_check["my_module1"]={ 
     host = "$end_url$" 
     module = "my_module1" 
    } 

    vars.health_check["my_module2"]={ 
     host = "$end_url$" 
     module = "my_module2" 
    } 

私ももう一度同じシナリオをvars.end_urlを使用しますが、しようとしました。​​に変数を宣言する方法ホストのアドレスがどのようなURLがそれに解決するように動作するはずですので、もし

答えて

0

あなたは$アドレス$でホストのアドレスを使用することができます。

end_url = "HEALTH_CHECK_SERVER_URL" 
    vars.health_check["my_module1"]={ 
     host = "$address$" 
     module = "my_module1" 
    } 

    vars.health_check["my_module2"]={ 
     host = "$address$" 
     module = "my_module2" 
    } 

あなたはIcinga2 Director?に見たことが。これは便利で、ホストの設定はより簡単に管理できます。また、monitoring-portal.orgはIcingaコミュニティのための良いリソースです。

ディレクタを使用する場合は、コマンドのクローンを作成し、引数を$ end_url $のような変数に設定してフィールドを作成できます。次に、テンプレートにフィールドを追加し(インポート)、そのフィールドを一度入力します。

たとえば、このメソッドをSNMPコミュニティ文字列に使用します。テンプレートには$ snmp_community $のフィールドがあります。したがって、コミュニティが必要なコマンドでは、この変数を使用します。これは、Icinga2が私たちのLANディストリビューションのコミュニティストリングをすべて知っている方法です。変更する必要がある場合は、一度変更するだけです。

enter image description here

enter image description here

enter image description here

+1

'$アドレス$'設定ファイルのアドレスをホストを指します。私が望むのは、 'example.com'のような異なる値を持つ変数です。 「Icinga2ディレクター」のおかげで華麗でしたが、もう一度私の問題を解決することはできません。今度はconfigをコマンドセクションに移動しました。 +1 – ALH

+0

常に同じURLにする必要がありますか? – cflinspach

+0

はい、今は一度使用するためにコマンドセクションに移動しました。 – ALH

関連する問題