Vadim
ломка без этого да ?
два дня дебажил etcd под НОМ - "Подшиток"
Evgenii
yo yo всем )
Evgenii
чуваки, подскажите, как не перетирать вложенные переменные в дефолте ?
Roman
не объявлять их в vars'ах
Evgenii
ну смотри, у меня в дефолте есть mailserver_container_options: env: {} image: "" log_driver: "json-file" ports: [] restart: "no" restart_policy: "on-failure" volumes: [] log_options: tag: "{{mailserver_container_name}}"
Ivan
ребят, chef или puppet для нового проекта выбрать?
Evgenii
в плейбуке пишу: - name: mailserver include_role: name: mailserver vars: mailserver_container_options: env: OVERRIDE_HOSTNAME: "mon.localhost"
Ivan
а тут есть кто использует ansible для ДЦ? или больших объёмов машин?
Pavel
"большие" понятие относительное.... для кого-то и 20 уже много,а кому и 1000 немного
Ivan
ну около сотни, а лучше >1000
Evgenii
ну смотри, у меня в дефолте есть mailserver_container_options: env: {} image: "" log_driver: "json-file" ports: [] restart: "no" restart_policy: "on-failure" volumes: [] log_options: tag: "{{mailserver_container_name}}"
в итоге перетирается вся верхняя переменная TASK [mailserver : debug] ******************************************************************************************************************************************************************************************************************* ok: [192.168.56.101] => { "msg": { "env": {}, "image": "tvial/docker-mailserver:release-v5.8.0", "log_driver": "json-file", "log_options": { "tag": "mailserver" }, "ports": [], "restart": "no", "restart_policy": "on-failure", "volumes": [] } } PLAY RECAP ********************************************************************************************************************************************************************************************************************************** 192.168.56.101 : ok=2 changed=0 unreachable=0 failed=0 [emedvedev@emedvedev-pc mon]$ ansible-playbook -i inventory.ini test.yml PLAY [serv] ********************************************************************************************************************************************************************************************************************************* TASK [Gathering Facts] ********************************************************************************************************************************************************************************************************************** ok: [192.168.56.101] TASK [mailserver] *************************************************************************************************************************************************************************************************************************** TASK [mailserver : debug] ******************************************************************************************************************************************************************************************************************* ok: [192.168.56.101] => { "msg": { "env": { "OVERRIDE_HOSTNAME": "mon.localhost" } } } PLAY RECAP ********************************************************************************************************************************************************************************************************************************** 192.168.56.101 : ok=2 changed=0 unreachable=0 failed=0
Ivan
Salt ещё посмотри
чёт не видел ничего хорошего про него :(
Evgenii
> 10 даже ансибл уже не вар
Ivan
ну я думаю, тут есть люди с позитивным опытом
Aleksey
> 10 даже ансибл уже не вар
ты про 10 датацентров ? ;)
Evgenii
Aleksey
понятно.
Gleb
я про 10 хостов
я с 2 тысячами жил, но очень болело
Ivan
я с 2 тысячами жил, но очень болело
почему перестало болеть?
Evgenii
ну знаешь, люди вон и за путина голосуют )
Gleb
отдал нафиг, пусть другие страдают
Ivan
ыы
Evgenii
Ну так, что подскажет кто, как не перетирать вложенные переменные ??
Vadim
Combine
Vadim
а тут есть кто использует ansible для ДЦ? или больших объёмов машин?
Мы используем ansible для 80 + куберовских кластеров, а что случилось?
Tadeusz
кроме того что ansible тормоз - ниче, я считаю)
Aleksey
эк надо по другому спрашивать.
Aleksey
Мы используем ansible для 80 + куберовских кластеров, а что случилось?
Вадим, а вы используете ансибла для провеженинга или для деплоя ? если для провиженинга радовые операции (юзеры и прочее) тоже используют анибл ?
Vadim
Если каштомер юзает терраформ чи шо, то просто читает эти скрипты чтобы подпилить самому
Vadim
кроме того что ansible тормоз - ниче, я считаю)
Лучше прлчаса потерять чтоб потом за пять минут долететь
bebebe
ну около сотни, а лучше >1000
А что вы им хотите делать? (ансиблом)
Sergey
Ну так, что подскажет кто, как не перетирать вложенные переменные ??
Очень просто - не перетирать. Но если очень хочется, то вот тебе специальное ружьё для ног: http://toroid.org/ansible-combine
Vegas
Привет, подскажите как правильно сделать что-то типа хендлера, но выполняющегося перед тасками с определенным тегом? Например, есть несколько тасок, в каждой из которых ставятся пакеты, с тегом packages. Хотелось бы делать update_cache: yes только один, первый раз за playbook, а не для каждой таски. Или я хочу странного?
Bogdan (SirEdvin)
Ну или да, вариант выше круче)
Aleksey
- name: xxxxx apt: name: "{{item}}" state: present update_cache: "True" cache_valid_time: "{{ apt_cache_valid_time | default (3600) }}" with_items: - aaa
Vegas
спасибо, кажется, то, что нужно
Aleksey
быть может, не уверен, надо убрать update_cache
Evgenii
http://docs.ansible.com/ansible/latest/reference_appendices/config.html?highlight=hash_behaviour#envvar-ANSIBLE_HASH_BEHAVIOUR
bebebe
Славик
Привет. Есть тут кто-нибудь кто пользуется AWX? Развернут с помощью Docker-Compose, пытаюсь обновить с 1.0.5 до 1.0.6, просто обновляя контейнеры до последней версии. Контейнеры обновляются, но потом висит бесконечно AWX is currently upgrading... и в общем все :( В логах какихто ошибок не видно, просто какието таски постоянно выполняются.
Славик
Вдруг кто сталкивался?
manefesto
квест с обновлением awx
manefesto
я так и засел на 1.0.1
manefesto
смотрю в сторону jenkins
manefesto
кто нибудь пользуется packer ?
Aleksey
конечно
Aleksey
но тут врятли топик оный
Aleksey
@ru_hashicorp
manefesto
у хашиков тишина
manefesto
я там был
manefesto
хочу собирать кастомные lxc контейнеры
manefesto
то есть собрать через packer проблем нет, а для провижена можно использовать ansible
manefesto
правильно ?
Stas
ребят подскажите
Stas
есть роль, там есть в качестве дефолтов используется переменная словарь
Stas
application[install_dir] = "/path"
Stas
возникла потребность вызвать эту роль много раз
Stas
сделал таску в которую include_role делаю
Stas
и цикл
Stas
сделал список в котором все пути
Stas
не совсем понимаю как каждый раз подставлять в application[install_dir] нужный путь
manefesto
покажи таску
Stas
она претерпела кучу изменений))) --- - hosts: all vars: install_dirs: ["/test1", "/test2"] name: Start services tasks: - name: "Test" debug: msg: "{% for item in install_dirs %}{{ item }}{% endfor %}" #with_items: "{{ install_dirs }}" - include_role: name: app/start with_items: "{{ apps }}"
Stas
пытался в дебаге вывести нужный мне дикт
manefesto
ну и что не работает ?
Stas
я даже не понимаю как сделать
manefesto
- hosts: all vars: install_dirs: ["/test1", "/test2"] name: Start services tasks: - name: "Test" debug: msg: "{{ item }}" with_items: "{{ install_dirs }}"
Stas
пробовал и через {% set %}
Stas
это прекрасно
Stas
но роль ждет
Stas
что ей придет дикт