Q: ansible; Dynami c Remote_tmp с инвентаризации имя_хоста возможно в ansible .cfg? - PullRequest
0 голосов
/ 24 марта 2020

Ситуация:

  • 3 сервера с той же общей папкой NFS, что и домашняя папка; (Нет, мне нужно только его использовать; Нет, я не настраивал его таким образом)
  • 3 разных пользователя
  • ansible используется для выполнения задач на каждом сервере
  • ansible 2.9.6
  • Контроллер: Ubuntu 18.04; Python 3.6.9;
  • сервер: Linux на xen; Python 2.6.9

Проблема:

  • путь по умолчанию remote_tmp в ansible .cfg не работает, причина разных пользователей, следовательно, путь по умолчанию удаленный ~ / .ansible / tmp с маской 700 записывается только для первого ansible выполнения, но при втором и третьем запуске отображаются ошибки, потому что он не доступен для записи
  • пользовательский remote_tmp с путем $ RANDOM (remote_tmp = / tmp /.ansible.$RANDOM) в ansible .cfg не работает, из-за изменения $ RANDOM во время выполнения и ansible не удается найти файлы
  • установка пути remote_tmp в инвентаризации невозможна, по крайней мере Я не смог найти документацию
  • , в которой настройка пути remote_tmp в книге воспроизведения уже запоздала.

Вопрос:
Есть ли возможность иметь настраиваемый путь remote_tmp в ansible .cfg, который индивидуален для каждого сервера, но остается постоянным во время выполнения? Я хочу избежать трех отдельных ansible .cfg файлов.

1 Ответ

0 голосов
/ 25 марта 2020

Ну, после хорошего ночного сна я устал ansible_remote_tmp в инвентаре и, похоже, работает.

инвентаре:

...
    t00:
      hosts:
        t00vm1:
            ansible_ssh_common_args: '-F config/ssh.cfg'
            ansible_python_interpreter: python2
            ansible_remote_tmp: /tmp/.ansible.t00vm1
...

Вывод:

...
TASK [debug] ***********************************************************************************************************
ok: [t00vm1] => {
    "msg": "/tmp/.mqc-ansible.t00vm1"
}
...

Надеюсь, что это поможет и другим.

...