Кажется, что все задания выделены, и только один будет запущен за раз. Как мы можем запустить больше одного?Как вы можете запускать более одной одновременной работы в Ansible Tower?
ответ
Башня предназначена для распараллеливания рабочих мест, но есть несколько случаев, когда это не будет.
- Если у Вас есть свой инвентарь или SCM настроен на «обновление на запуск» без кэша или cahche истек, то любые дополнительные рабочие места будут застрял в ожидании позади обновления запасов или SCM. Инвентаризация и SCM не будут обновляться до тех пор, пока не будет выполнено текущее задание.
- Если вы пытаетесь запустить несколько заданий против одного и того же хоста: Tower не будет запускать несколько заданий против одного и того же хоста одновременно, чтобы избежать условий гонки. (localhost - возможное исключение). Если вам нужно несколько заданий для одновременной работы с одним и тем же хостом, тогда вам нужно создать два инвентаря и поместить этот узел в оба инвентаря, выполнив две задания против разных инвентарей. В этой ситуации Tower не знает, что вы работаете против одного и того же хоста.
Оказалась ли данная информация в документации? Не могли бы вы разместить ссылку, если бы сделали? – laughingbovine
Я не уверен, где или если это задокументировано. Это было из личного опыта. Прошло около девяти месяцев с тех пор, как я опубликовал этот ответ, и я не уверен, что изменилось, поскольку я не использую Tower в моем текущем положении. – smiller171
Мне удалось найти документацию по параллелизации в Ansible Tower: http://docs.ansible.com/ansible-tower/2.4.5/html/userguide/jobs.html#job-concurrency – laughingbovine
Предположим, у вас есть работа, состоящую из трех задач:
задачи 1: «делать х», задача 2: «делать у», задача 3: «делать г»
С анзибль «делать х «будет запущен на всех серверах, тогда« do y »будет запущен на всех серверах, а затем« do z »будет запущен на всех серверах.
Кроме того, я сказал «все служит», но на самом деле он исчерпан на анзибль в «вилке» значение, которые по умолчанию 5. В моем сервере среды 100 я установил это значение до 20. Более подробно об этом здесь: http://docs.ansible.com/intro_configuration.html#forks
Помните, что сила незаменимого выполняет задание (совокупность задач) на многих машинах одновременно. Если вы хотите, чтобы много раз запускать одну и ту же задачу на одной машине, вам нужно что-то вроде вилки или параллельно.
Фактически Ansible будет пытаться запустить «делать x» столько раз, сколько может на многих машинах. Это поведение можно настроить таким образом, чтобы вся работа выполнялась на части машин, прежде чем запускаться на других машинах с ключевым словом «serial» (http://docs.ansible.com/playbooks_delegation.html#rolling-update-batch-size).
Не тонкая разница между вилками и серийными.
вилок "на задачу"
Сериал "за работу" (сборник задач)
Дэвид Торнтон
Edit: я перечитываю свой вопрос , Речь идет о запуске более чем одной работы за раз, а не в запуске больше, чем в задании. Поэтому я считаю, что вы правы для aws-awx, но не для командной строки. Через веб-интерфейс вы можете отправить задание в очередь заданий, но вы не можете заставить aws-awx запускать более одной задачи за раз. Я думаю. Однако через командную строку, если вы открываете более одного окна, вы можете одновременно запускать несколько загружаемых игр. У вас есть вспомогательная учетная запись? Эти ребята отличные ИМХО, они потратили много времени, чтобы ответить на мои вопросы (например, на ваш вопрос).
Да, ваше редактирование - это реальный вопрос: мне бы хотелось, чтобы параллелизм был на сервере awx/ansible tower. – Evan
Работы, которые имеют один и тот же ресурс или источник SCM, не могут работать одновременно.
Хм ... Возможно, это лицензионная вещь? Не могли бы вы поделиться тем, какой тип лицензии у вас есть? На 10-серверной оценочной лицензии это невозможно. – Evan
Я подозреваю, что это вопрос конфигурации. Я не знаю, где. – tedder42
Ответ заключался в том, что задания, которые имеют один и тот же ресурс или источник SCM, не могут работать одновременно. –
Одновременные задания могут быть выполнены из Башни. Шаблоны заданий имеют параметр «Включить параллельные задания». См. Раздел «15.4. Конкуренция работы» по адресу http://docs.ansible.com/ansible-tower/latest/html/userguide/jobs.html.
Это отличный вопрос. Это действительно может быть сделано с принятым ответом или с некоторыми отзывами, чтобы мы могли обновить наши ответы. – smiller171