Kemungkinan terjadi kesalahan sinkronisasi modul

Saya menjalankan Ansible 2.9.11 di MAC saya. Saya membuat pedoman untuk menyinkronkan beberapa konfigurasi freeswitch yang telah ditentukan sebelumnya ke server Debian 10 baru. Saya telah menginstal rsync dan mengikuti semua persyaratan di situs Ansible. Saat saya menjalankan tugas sinkronisasi, gagal dengan pesan berikut. Hal ini terjadi setelah playbook telah terhubung ke kotak dan melakukan tugas lain seperti memperbarui dan menginstal prasyarat.

Kesalahannya:

fatal: [dev-fs02b]: FAILED! => {"changed": false, "cmd": "sshpass -d3
/usr/bin/rsync --delay-updates -F --compress --archive
--rsh=/usr/bin/ssh -S none -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null --rsync-path=sudo rsync
--out-format=<<CHANGED>>%i %n%L /Users/User1/Documents/Ansible/files/sca
[email protected]:/etc/freeswitch", "msg": "Warning: Permanently added
'1.1.1.127' (ECDSA) to the list of known hosts.\r\nsudo: no tty
present and no askpass program specified\nrsync: connection
unexpectedly closed (0 bytes received so far) [sender]\nrsync error:
error in rsync protocol data stream (code 12) at
/AppleInternal/BuildRoot/Library/Caches/com.apple.xbs/Sources/rsync/rsync-54.120.1/rsync/io.c(453)
[sender=2.6.9]\n", "rc": 12}

Tugas:

  - name:  "Copies files over"
    synchronize:
      src: /Users/User1/Documents/Ansible/files/fs1
      dest: /etc/freeswitch
      recursive: yes

person user2236794    schedule 03.09.2020    source sumber
comment
Saya pikir kesalahan Anda adalah sudo: no tty present and no askpass program specified. Sepertinya sudo pada host jarak jauh mengharapkan kata sandi, tetapi Anda belum mengonfigurasi Ansible untuk menyediakannya.   -  person larsks    schedule 03.09.2020
comment
pada pedoman saya telah menjadi: ya set. Apa lagi yang saya lewatkan?   -  person user2236794    schedule 03.09.2020
comment
Anda perlu (a) mengonfigurasi sudo agar berfungsi tanpa kata sandi, atau (b) mengonfigurasi Ansible untuk memberikan kata sandi yang diperlukan ke sudo. Lihat docs.ansible.com/ansible/latest/user_guide/become.html dan catat dokumen untuk ansible_become_password dan opsi baris perintah --ask-become-pass.   -  person larsks    schedule 03.09.2020


Jawaban (1)


sinkronisasi adalah pembungkus rsync untuk membuat tugas-tugas umum di buku pedoman Anda menjadi cepat dan mudah. Ini dijalankan dan berasal dari host lokal tempat Ansible dijalankan. Tentu saja, Anda bisa menggunakan tindakan perintah untuk memanggil rsync sendiri, tetapi Anda juga harus menambahkan cukup banyak opsi boilerplate dan fakta host. sinkronisasi tidak dimaksudkan untuk memberikan akses ke kekuatan penuh rsync, namun membuat pemanggilan paling umum lebih mudah untuk diterapkan. Anda mungkin masih perlu memanggil rsync secara langsung melalui perintah atau shell tergantung pada kasus penggunaan Anda.

itu berarti Anda tidak dapat melakukan sinkronisasi di server jauh.

person Vinamit_    schedule 03.09.2020