У кого был опыт настройки с Ansible, можете поделиться опытом и что почитать. У меня более 150 mikrotik и требуется делать групповые задачи: - бэкапы - обновления конфигурации
Буду признаетелен если кто то расскажет свой опыт настройки Ansible и mikrotik.
Теперь рассмотрим два варианта управления mikrotik через ansible, первый вариант наиболее простой когда мы передаем микротик команду вида: command: bash -c "cat roles/TT-set-dns-servers/files/dns-servers.rsc | ssh -T {{inventory_hostname}} -p {{ansible_ssh_port}}" И фактически вся логика зашита в .rsc (в скрипте микротик) а ансибле это только средства доставки в нем никакой логике не лежит, что просто для системных администраторов, т.к вы не подвязаны на ansible и можете те же rsc выполнить и руками с тем же результатом, вот два виде c такой связкой mikrotik и Ansible
ссылка на GIT с скриптами в видео: https://github.com/0x566164696D/mikroansible (все просто и понятно) И еще одно видео на послушать, про тоже самое, но уже без выложиных скриптов:
Вот пример, тут реализовано: . Задача – настроить бэкап в систему контроля версий и получить возможность выполнить какую-то настройку на всех микротиках, где этой настройки нет.
3. Иммутабельность – это неизменность. То есть если уже, например, в файле есть такие изменения, то второй раз они не делаются. Это то, в чем фишка Ansible и то, что не реализовано для микротиков (так как например в firewall важен порядок применения – это одна из причин, почему в его конфиге не поддерживается иммутабельность).
Теперь сюжет из жизни: мне понадобилось вкатить на все микротики одинаковый фильтр сетей OSPF – оставить только серые сети и фильтрануть по маске 10.0.0.0/8. При этом на каких-то микротиках я это уже есть, но не помню на каких.
Итого сливается бэкап в текстовом виде, идет поиск по нужной строке и если она не найдена, то выполняем команду. А если найдена – ничего не делаем. Такая вот псевдо-иммутабельность получается. Да, один скрипт – одна команда, что не очень удобно, под список команд надо дорабатывать.