2017-01-21 7 views
-1

Also mache ich einen Trockenlauf bei der Installation von Apache-Webserver auf einer Centos 7-Box. Dies ist die webserver.yml Datei:Hat jemand eine Idee, warum Ansible mir diesen Fehler gibt?

--- # Outline to Playbook Translation 
- hosts: apacheWeb 
    user: aleatoire 
    sudo: yes 
    gather_facts: no 
    tasks: 
    - name: date/time stamp for when the playbook starts 
    raw: /bin/date > /home/aleatoire/playbook_start.log 
    - name: install the apache web server 
    yum: pkg=httpd state=latest 
    - name: start the web service 
    service: name=httpd state=started 
    - name: install client software - telnet 
    yum: pkg=telnet state=latest 
    - name: install client software - lynx 
    yum: pkg=lynx state=latest 
    - name: log all the packages installed on the system 
    raw: yum list installed > /home/aleatoire/installed.log 
    - name: date/time stamp for when the playbook ends 
    raw: /bin/date > /home/aleatoire/playbook_end.log 

Wenn ich einen Trockenlauf zu tun mit:

ansible-playbook webserver.yml --check 

halte ich diesen Fehler:

fatal: [<ip_address>]: FAILED! => {"changed": false, "failed": true, "msg": "Could not find the requested service httpd: cannot check nor set state"} 
    to retry, use: --limit @/home/aleatoire/Outline/webserver.retry 

Ich versuchte ignore_issues Zugabe: true und das hat auch nicht funktioniert. Bitte helfen Sie.

+0

'--check' wird das httpd-Paket nicht installieren, wenn es noch nicht da ist. Dann wird der Aufruf 'service:' fehlschlagen, wenn noch keine httpd-Unit-Datei installiert ist. –

+0

ahh! .. Was ist also der beste Weg, nach dem Erstellen von Yaml-Dateien in Ansible nach Syntaxfehlern zu suchen? – Daniel

+0

Mit ['-Syntax-check'] (https://raymii.org/s/tutorials/Ansible_-_Playbook_Testing.html) –

Antwort

1

--check wird nicht wirklich das httpd-Paket installieren, wenn es noch nicht da ist. Dann wird der Aufruf service: fehlschlagen, wenn noch keine httpd-Unit-Datei installiert ist.

Sie können stattdessen die Option --syntax-check verwenden.

Verwandte Themen