Здравствуйте! Есть сервер на базе Linux Debian 10 с установленным php, nginx, mysql, wordpress, ansible и на нем соответственно поднять сайт. Существует такая идея: пользователь с виндовых машин заходит на сайт, условно, нажимает на некую кнопку и начинается автоматическая установка программ к нему на компьютер. Вопрос в следующем, как и с помощью чего можно сделать такую кнопку (т.е. как с сайта отослать команду на сервер для работы ansible)?
P.S. С консоли сервера, обычным способом все уже настроено, установку программ могу запустить на удаленном компьютере Windows.
1. Создаете консольный контроллер или простой php файл в котором будут все эти команды, запускающие установку программ.
2. Из веб контроллера Передаете управление в консольный контроллер. Можно использовать команду exec, а можно записывать задание в очередь. А уже консольный скрипт сам запускает по расписанию все задания.
Спасибо за ответ, но не могли бы поподробнее описать как это сделать или пример какой нибудь скинуть, или же дать ссылку на сайт с описанием данного решения?
Tower не бесплатный. Возможность варианты , но я не в курсе. Есть вот такой проект, это community версия Tower https://github.com/ansible/awx
Смысл тот же, позволяет запускать сценарии Ansible , управлять деплоем через веб-интерфейс и т.п.
Посмотрите, есть видео и на ютубе тоже..
1. Зависит от того какой вы playbook напишите, но в целом да, мысль именно такая - пользователь заходит и запускает выбранные плейбук на определенных машинах.
2. Не знаю, но думаю никаких проблем быть не должно.
Sanes, Мне тоже проще, но смысл в том, чтобы пользователи (дубовые) могли зайти на сайт, грубо говоря, нажать кнопку и чтобы установилась программа. Через консоль такое не получится
По моему ансибл тут - неправильный выбор. Если речь о винде и виндовых пользователях (и конечно домене), то надо брать SCCM , и разворачивать там Application Catalog .
Нужен сотруднику например MS Project , от ткнул у себя на компе в кнопочку Catalog , посмотрел что там ему разрешено - выбрал что надо и установилось.
Вы получите кучу проблем с разворачиваем софта на виндовых компах. 100%. Я экспериментировал, это реальная боль. Да есть powershell скрипт чтобы настроить WinRM, после этого надо еще подготовить скрипты и плейбуки которые будут разворачивать приложения. Да есть chocolatey , который вроде бы даже поддерживается Ansible-ом , но я пару лет назад это пробовал , у меня оно нормально (предсказуемо) не заработало.
То ставится, то не ставится, то авторизация не проходит, то пишет отработало, а пакет не развернулся.
Дмитрий, да я уже настраивал ansible+windows, но через консоль... на самом деле ничего сложного нет и все работает, а плейбуки писать не сложно.. сейчас говорю же, хочу все в веб морду выкинуть.. сложно, согласен, но хочу попробовать все же) а вдруг пойдет)