私は、ロードバランサ用のnginxテンプレートをAnsibleに書き込もうとしています。私は5つのアプリケーションサーバーを持っている場合は、上流のサーバーの行は次のように1ずつ5回、毎回結合ポート単位を書かなければなりません。可能性のあるカウンタループ
upstream app_servers {
server 127.0.0.1:4000 fail_timeout=0;
server 127.0.0.1:4001 fail_timeout=0;
server 127.0.0.1:4002 fail_timeout=0;
server 127.0.0.1:4003 fail_timeout=0;
server 127.0.0.1:4004 fail_timeout=0;
}
私は、変数などのアプリケーション・サーバーの数を持っています。どのようにして、そのようなループを不可能なテンプレートに書くことができますか?私は "with_indexed_items"が安全なドキュメントであることを発見しましたが、このケースに合っているかどうかはわかりません。
ありがとう@ udondan!範囲をループすると問題が解決されます。 – raiblue
私のアプリケーションはワーカーとして動作し、バインドする最初のポートのみを定義し、ワーカーはポートに徐々にバインドします。だから、次のようなテンプレートを書くことは私のために働きます: アップストリームアプリ{ {範囲内の数値(app_workers)%} サーバー127.0.0.1:{{app_first_port + number}} fail_timeout = 0; {%endfor%} } – raiblue