2016-07-20 7 views
0

私はelasticsearchボックス(私は手動でやっているかもしれないが、私はこれらの種類の仕事をたくさんすることを期待しています)だから私はこれを働かせたい)。1回限りの遊びのための可能なインベントリファイルを書く

私は単純に8つのホスト上lineinfileを実行したい:これが実行されると

#!/usr/bin/ansible-playbook -i /home/myself/workingdir/hosts 
- name: update those lines 
    user: myself 
    hosts: elasticsearch_hosts 
    sudo: true 
    tasks: 
    - lineinfile: 
     dest: /opt/logstash/patterns/stuff 
     regexp: STUFF_AND_THINGS 
     line: STUFF_AND_THINGS [%{GREEDYDATA:big_h0nking_regex}\] ?.%{37_RANDOM_CHARACTERS:bologna} %{URIPATHPARAM:} %{*#&%$%@&@^[email protected]:expletive}/%{NUMBER:some_more_crap} %{NUMBER:minutes_wasted} %{[idk,lol]1776} 
    - service: name=elasticsearch state=restarted 

、ここでは私のホストが

192.168.1.98 
192.168.2.76 
192.168.3.54 
192.168.4.32 
192.168.5.10 
192.168.6.123 

[elasticsearch-hosts] 
es-1 ansible_host=192.168.1.98 
es-2 ansible_host=192.168.2.76 
es-3 ansible_host=192.168.3.54 
es-4 ansible_host=192.168.4.32 
es-5 ansible_host=192.168.5.10 
es-6 ansible_host=192.168.6.123 

をファイルの、私が取得:

PLAY [update them lines] *************************************************** 
skipping: no hosts matched 

I私はインベントリファイルで何か正しく動作していないことを知っていますが、私が今までに使ったことのないものは分かりません。たとえば、ラックスペースce raxモジュールを使用して、再生が実行されるときに在庫リストを作成します。

es-1、、6はdnsで定義した短い名前なので、できることはありません。たとえばssh es-1などです。これまでのファイルの反復では、これらの名前が気に入らないようでした。

+0

答えが指摘するように、単純なタイポグラフィエラーであるため、投票を終了することをお勧めします。 – ydaetskcoR

+0

@ taskinoorは良いアイデアを持っていますが、問題を解決しませんでした。 '[警告]:指定されたホストのリストが空で、localhostのみが利用可能です。 ' –

+0

あなたのプレイブックにはあわてないように、hostsファイルを読み込んで解析するのに問題がないことを確認するために、単純な ''すべての-m ping -i/home/myself/workingdir/hosts' 。 –

答えて

0

問題は、私が不可解なプレイブックをどのように呼んでいるかです。

#!/usr/bin/ansible-playbook -i /home/myself/workingdir/hosts 

空であり、これは明らかにシェバング介して引数を渡すための適切な方法ではなく、そのようなansible-ハンドブックは、/ etc/ansible /ホストにデフォルト設定されたとして。

関連する問題