Как переместить файлы с нескольких серверов на один сервер? - PullRequest
0 голосов
/ 21 июня 2019

Мне нужна роль для сбора журналов из группы хостов в ansible local, а затем для передачи всех этих файлов на другой сервер. как показано ниже

Игра выглядит так:

- hosts: work_vms
  roles: 
    - role: collect

Роль коллекционирования / tasks / main.yml:

---
- name: fetch log from work server    
  fetch:  
    src: /app/logs/server.log
    dest: /var/log/
    flat: yes

- name: transfer all logs to log server
  delegate_to: "{{ groups.log_server[0] }}"  
  copy:  
    src: /var/log
    dest: /storage/logs

Это отлично работает. Однако копирование очень медленное. Поэтому я попытался использовать синхронизацию, чтобы заменить копию.

- name: transfer all logs to log server    
  delegate_to: "{{ groups.log_server[0] }}"  
  synchronize:  
    src: /var/log
    dest: /storage/logs

Сбой, потому что он не нашел / var / log на log_server.

Я пытался использовать rsync, но я не знаю, как настроить параметры соединения ssh в /etc/ansible/ansible.cfg, например, remote_user, private_key_file и т. Д.

Есть ли способ получить значение глобальных конфигураций, используемых ansible в playbook?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...