Ansibleを使用してファイルをリモートコンピュータにコピーすることはできません。

Ansibleを使用してファイルをリモートコンピュータにコピーすることはできません。

リモートシステムのファイルを置き換えて作成したLinuxシステムを使用し、ansible-2.0作成中ですが機能しません。 Ansibleステータス表示。ansible-galaxydns.yml/etc/resolv.confOK

dns.yml

---
- name: place dns configuration
  become: true
  template:
    src: resolv.conf.j1
    dest: /tmp/resolv.conf

出力:

....
TASK [lab : include ansible related tasks] *************************************
included: /home/adminto/ansible/lab/tasks/dns.yml for pc1

TASK [lab : place dns configuration] *******************************************
ok: [pc1]

PLAY RECAP *********************************************************************
as                         : ok=3    changed=0    unreachable=0    failed=0   

mypc# : ~/ansible$ ansible all -i 'pc1,' -c local -m ping
as | SUCCESS => {
    "changed": false, 
    "ping": "pong"
`enter code here`}

ディープビューエラー:

admin:~/ansible$ sudo ansible-playbook -i "pc1," lab-data.yml -t dns.yml -vvvv
Using /etc/ansible/ansible.cfg as config file
Loaded callback default of type stdout, v2.0
1 plays in lab-push.yml

PLAY ***************************************************************************

TASK [setup] *******************************************************************
<pc1> ESTABLISH SSH CONNECTION FOR USER: None
<pc1> SSH: EXEC ssh -C -vvv -o ControlMaster=auto -o ControlPersist=60s -o KbdInteractiveAuthentication=no -o PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey -o PasswordAuthentication=no -o ConnectTimeout=10 -o ControlPath=/home/adminto/.ansible/cp/ansible-ssh-%h-%p-%r -tt as '( umask 22 && mkdir -p "$( echo $HOME/.ansible/tmp/ansible-tmp-1487592713.4-221225682479967 )" && echo "$( echo $HOME/.ansible/tmp/ansible-tmp-1487592713.4-221225682479967 )" )'
<pc1> PUT /tmp/tmpPNuqMM TO /home/admin/.ansible/tmp/ansible-tmp-1487592713.4-221225682479967/setup
<pc1> SSH: EXEC sftp -b - -C -vvv -o ControlMaster=auto -o ControlPersist=60s -o KbdInteractiveAuthentication=no -o PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey -o PasswordAuthentication=no -o ConnectTimeout=10 -o ControlPath=/home/adminto/.ansible/cp/ansible-ssh-%h-%p-%r '[as]'
<pc1> ESTABLISH SSH CONNECTION FOR USER: None
<pc1> SSH: EXEC ssh -C -vvv -o ControlMaster=auto -o ControlPersist=60s -o KbdInteractiveAuthentication=no -o PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey -o PasswordAuthentication=no -o ConnectTimeout=10 -o ControlPath=/home/adminto/.ansible/cp/ansible-ssh-%h-%p-%r -tt pc1 'LANG=en_IN LC_ALL=en_IN LC_MESSAGES=en_IN /usr/bin/python /home/admin/.ansible/tmp/ansible-tmp-1487592713.4-221225682479967/setup; rm -rf "/home/admin/.ansible/tmp/ansible-tmp-1487592713.4-221225682479967/" > /dev/null 2>&1'
ok: [pc1]

TASK [lab : include ansible related tasks] *************************************
task path: /home/adminto/ansible/lab/tasks/main.yml:1
included: /home/adminto/ansible/lab/tasks/dns.yml for pc1

pc1                         : ok=2    changed=0    unreachable=0    failed=0  

ステータスが表示されているにもかかわらず、ファイルがコピーされない理由を知っている人がいますok

答え1

うーん..あなたが言及した質問で/etc/resolv.confあなたが作成したタスクは、テンプレートを/tmp/resolv.conf次のように配布します。

---
- name: place dns configuration
  become: true
  template:
    src: resolv.conf.j1
    dest: /etc/resolv.conf

コマンドを確認してください。sudo ansible-playbook -i "pc1," lab-data.yml -t dns.yml -vvvv

  • -tdns.ymlタグを選択するとスクリプト名のように聞こえるので、タグ名が実際に指定されていることを確認してください。

非常に興味深い在庫ファイル名です。

関連情報