Sam
gather_facts: no а судя по скрину с ошибкой он собирает факты
указано это, или я не в том месте указал?
Alex
правильно, на уровне плейбука
Виталий
почитайте документацию https://docs.ansible.com/ansible/latest/network/user_guide/network_best_practices_2.5.html там есть ссылка на гитхаб с примерами
Виталий
вот плейбук для отключения http, например
Виталий
--- - name: Disable http on cisco switch hosts: cisco_l2 connection: network_cli gather_facts: no tasks: - name: set no http cli_config: config: | no ip http server no ip http secure-server notify: - SAVE CONFIGURATION handlers: - name: SAVE CONFIGURATION cli_command: command: write memory
Igor
подскажите, а как сделать переменную в которой можно задавать только определенный набор параметров, например только a, b или c. И если там к примеру d, то фейлить таск. Куда смотреть?
Sam
Теперь поделитесь ссылкой, как принять переменные по restAPI, и применить эти переменные в плейбуке
Виталий
пожалуйста. нет.
Alex
> как принять переменные по restAPI чего чего?
Anonymous
https://docs.ansible.com/ansible/latest/user_guide/playbooks_variables.html#registering-variables
Anonymous
если я правильно понял то, что Вы хотите сделать
Sam
> как принять переменные по restAPI чего чего?
VLAN-ID и номер порта будут прилететь с внешней системы (по restAPI), awx принимает и передаёт эти параметры в плейбук
Anonymous
так вроде, можно restAPI запрос сделать, например через https://docs.ansible.com/ansible/latest/modules/uri_module.html
Anonymous
нет?
Anonymous
Вы как то определитесь с желаниями :)
Sam
нет?
Нет
Sam
Хочу что бы на awx по api приходил запрос (host ip, VLAN ID, interface name), после чего эти данные используются в плейбуке, который в свою очередь прописывает все на коммуникаторе
Sam
Кто будет посылать запрос, это не важно, мне главное им сказать в каком формате отправить запрос и какие мне данные необходимы
Anonymous
Запрос http?
Sam
Да
Anonymous
Или мы уходим в kafka, rabbit, etc
Anonymous
Ок
Anonymous
Что значит неважно, кто будет посылать запрос?
Sam
https://docs.ansible.com/ansible-tower/3.2.6/html/towerapi/launch_jobtemplate.html
Anonymous
Кто посылает http запрос, тот и получает ответ
Sam
кажется нашел
Anonymous
https://docs.ansible.com/ansible-tower/3.2.6/html/towerapi/launch_jobtemplate.html
Меня пугает Ваша безмерная любовь к tower. Ну, можно же "дернуть"(создать запрос, получить ответ), через модуль uri
Anonymous
Ну, да. И?
Anonymous
Создаем запрос, получаем ответ. Сохраняем ответ и делаем с ответом "что-то полезное".
Anonymous
Или делаем тоже самое через "магию" tower. Я не уверен, что tower такое может.
Sam
Создаем запрос, получаем ответ. Сохраняем ответ и делаем с ответом "что-то полезное".
Тогда ansible должен постоянно делать запросы, т.к. Инициатором выполнения команды являются внешняя система
Sam
Как часто Вам необходимо "запрашивать"?
По разному, как будет приходить заявка на подключение
Sam
Может 10 раз в день, а может 0
Anonymous
Я сдаюсь. Мы меня "поломали"
Sam
🤣
Sam
Пытаюсь сделать провиженинг услуги. Если есть новый клиент, то есть запрос на подключение. Я ж не знаю сколько наши коммерсы будут продавать за сутки
Sam
Запрос будет прилётать что то типа CRM системы
Sam
А в Tower вроде как и рефререс есть по api
Sam
https://docs.ansible.com/ansible-tower/latest/html/towerapi/api_ref.html
Sam
Если такое возможно сделать в ansible то буду только рад
Anonymous
У Вас странное понимание http протокола. Иными словами, какая то "сторонняя" система делает http запрос, а у Вас желание каким то образом получить ответ в ansible.
Отделение Bereke Bank
Напиши свой веб сервис Он будет получать данные из црмки и использовать их в --extra-vars, запуская плейбук
Отделение Bereke Bank
Ну а црмка пусть в него постит нужные тебе запросы
Виталий
network_cli работает с небольшим количеством вендоров. если на доступе будет стоять нечто за 100$ то ansible не поможет. эта задача решена много лет назад во всех телекомах. например, есть модули для биллинговых систем для работы со свичами.
Anonymous
Ну а црмка пусть в него постит нужные тебе запросы
Это чтобы всем потом было интересно и весело с этим разбираться.
Отделение Bereke Bank
Ой бля тут ещё сетевые железки намешаны? Я умываю руки 😂
Anonymous
Вот про эту тему и просил какую нибудь ссылку
Предлагаю Вам переосмыслить ваши желания. Может Вашу задачу можно решить иным более простым способом?
Sam
Если как то можно запускать плейбук с внешней системы, то думаю да 😁
Отделение Bereke Bank
Почему именно плейбук? Может вам вообще не нужен ансибл?
Sergey
Это про Ансибл чат.
Sergey
Напоминаю.
Отделение Bereke Bank
Sam
Ну допустим студента, но это не выход
Sam
Напоминаю.
Простите
Sergey
Ну допустим студента, но это не выход
Выход - простроить процессы нормально, тогда понятно будет, как их автоматизировать. AWX/Tower - можно. Наваять свой веб-сервис на фласке и дёргать его для запуска плейбука - можно. Кидать странное в чат на 2,6 тыс. человек - точно не стоит.
Sergey
Сорян, по контексту пришлось снести.
Sam
На статью
Sergey
Статью о чём?
Anonymous
Красивая зайка 😊
Sam
Как дёргать веб сервис для запуска плейбука
Anonymous
Как дёргать веб сервис для запуска плейбука
Иными словами, какая то "сторонняя" система делает http запрос, а у Вас желание каким то образом получить ответ в ansible.
Anonymous
Все верно понял?