количестве процентов при seriаl (а затем - при указании след. процента - возобновить с того же места)? или никак,, потому что между запусками Энсиблю негде хранить это?
wut
У нас довольно хитрая схема деплоя (гитлаб -> awx). Чтобы в гитлабе прикрутить rolling upgrades - почти подходит механизм Энсибля serial (собственно, для этого он и нужен). "почти" - плейбук не останавливается на проценте, а продолжает работу на хостах дальше. а это не то, что необходимо - потому что перед дальнейшим накатыванием нужно проверить, что все работает.
а что мешает запускать плейбуки не на группу хостов?
прослойка в виде awx, если я правильно понимаю ваш вариант. проверкой должен заниматься человек - стримминг автоматически проверять... сложно.
роллинг апдейт с мануальными хелсчеками? :D
Разбейте их на две группы. Тестовая, и общая вместе с тестовыми. Запулили на тестовую, проверили, - запулили на общую.
https://docs.gitlab.com/ee/ci/environments/incremental_rollouts.html#manual-rollouts вот, что хочется. :)
не знаю гитлаб. Как он получает %?
https://gitlab.com/gl-release/incremental-rollout-example/blob/master/.gitlab-ci.yml строка 91. :)
Вот же вам ниже советовали pause: https://docs.ansible.com/ansible/latest/collections/ansible/builtin/pause_module.html
Это интерактивно.
ниче не понятно
процент машин, на которые деплой идет
тогда вы это через single не сделаете
так мне же и не нужно одним разом, ифсо. Мне как раз нужно, чтобы текущий процент где-то между запусками сохранялся и при указании большего - возобновлялся. грубо говоря, у нас 100 хостов. нужно раскатать на 10 процентов. стопнуть. потом на 20... и т.д.
dynamic inventory уже предлагали?
есть еще вариант использовать ( https://docs.ansible.com/ansible/latest/user_guide/intro_patterns.html ) Finally, you can use --limit to read the list of hosts from a file by prefixing the file name with @: ansible-playbook site.yml --limit @retry_hosts.txt
так я и говорю - запускайте per-host. Вот гитлабом генерьте список этих 10% хостов и запускайте на них, а не на всей группе
Обсуждают сегодня