2016-10-26 45 views
1

所以,我是Ansible和YAML上的一個完整的noob,我試圖學習一點,但是到目前爲止,這讓我瘋狂......我正在使用可靠的塔。我想要做的是替換某些服務器的ntp.conf文件上的一些文本,並用新服務器更新它們。所以,我的劇本是這樣的:Ansible conf文件更改

--- 
- hosts: range_1 
    tasks: 
    - name: ntp change 
     become_user: ansible 
     blockinfile: 
     content: | 
      server Server1 iburst 
      server Server2 iburst 
     dest: /etc/ntp.conf 
     insertafter: "Please consider joining the pool" 
     marker: "<!-- {mark} ANSIBLE MANAGED BLOCK -->" 
    - name: restart ntp 
     service: name=ntpd state=restarted 

但我得到

PLAY RECAP


Host_1 : ok=1 changed=0 unreachable=0 failed=0
Host_2 : ok=1 changed=0 unreachable=0 failed=0
Host_3 : ok=1 changed=0 unreachable=0 failed=0

Ansible正在運行,它不會退出與一個錯誤。但是,並沒有對系統做任何修改。 (我假設因爲改變= 0)我確實登錄到這些系統並且沒有應用更改。

我檢查過了,語法正確,但林不知道我錯過了什麼。我真的需要了解如何將兩臺服務器添加到ntp.conf中,並且如果服務器有一些錯誤信息,請刪除它並添加這兩臺服務器。任何幫助或指導將非常感激。

+0

請顯示你的'/ etc/ntp.conf'。除了在'ntp.conf'文件中放入一個HTML註釋''是錯誤的,該行應該以'#'開頭。 – techraf

+0

/etc/ntp.conf文件在系統中是不同的,這就是爲什麼我要實現這個目的。這就是爲什麼我只想改變這個部分: 'code' #使用pool.ntp中的公共服務器.org項目。 #請考慮加入游泳池(http://www.pool.ntp.org/join.html)。 192.168.0.1 <無論在這裏無關緊要>'code' 還我可以felete的的評論,感謝您的:) – user3311890

+0

請出示你的'的/ etc/ntp.conf'(編輯問題,插入) 。無論哪個,你是否有問題需要解決,或者有太多時間爭論? – techraf

回答

0

對於任何可能運行從ansible或ansible塔一個劇本時,可以閱讀,詳細輸出設置爲2。當我運行它,它給我的錯誤:

AILED! => {"changed": false, "failed": true, "msg": "The destination directory (/etc) is not writable by the current user."}

但它是固定在我的劇本中加入become: yes行,它現在看起來像這樣:

--- 
- hosts: range_1 
    tasks: 
    - name: ntp change 
     become: yes 
     blockinfile: 
     content: | 
      server Server1 iburst 
      server Server2 iburst 
     dest: /etc/ntp.conf 
     insertafter: "Please consider joining the pool" 
     marker: "<!-- {mark} ANSIBLE MANAGED BLOCK -->" 
    - name: restart ntp 
     become: yes 
     service: name=ntpd state=restarted