Sergey
which module can be used to upload ~GB large file in parallel?
What's the full story behind this case?
Cyrill
господа, встала тривиальная задача, ансиблом не разу не пользовался, но если быть коротко то порядок действий такой : останавливаем сервис, редактируем конфиг, удаляем папку с кешом, снимаем адрибут чатр с другого файла, редактируем файл, возвращаем чатр, стартуем сервис.
Cyrill
это надо сделать на полсотни хостов
Cyrill
что то руками не особо хочу везде ковырять, хотел бы попробовать это ансиблу скормить
bebebe
все что вы описали возможно. создайте песочницу над которой можно экспериментировать, пилите плейбку, переодически натравлийавйте на неё ansible-lint, запустите против одной машины, потом против несскольких, потом против всех
aborche
Дяденьки, а как лучше сделать следующую весчь. Есть N машин, нужно сделать на всех ssh-genkey и паблики разлить по соседям
aborche
fetch +copy кмк некошерно
bebebe
Дяденьки, а как лучше сделать следующую весчь. Есть N машин, нужно сделать на всех ssh-genkey и паблики разлить по соседям
регистрируешь output от ключа в переменную, далее через модуль http://docs.ansible.com/ansible/latest/modules/authorized_key_module.html добавляешь нужным пользователям
aborche
Эт я понимаю. Но тогда получается нужно сделать кросс цикл
aborche
С исключением самого себя
aborche
А можно output куда-то глобально собрать?
aborche
Не сессионно
bebebe
А можно output куда-то глобально собрать?
да, почему бы и нет? на тот же localhost, delegate_to, и потом оттуда забирать
aborche
Типа register: global[{{ansible_hostname}}]
aborche
А потом item покрутить
bebebe
вы на N машинах генерите пару приватный, публичный ключ, далее вам нужно с каджой из этих машин забрать публичный ключ и добавить на одну машину, или опять таки на все?
aborche
На все добавить паблик соседей
aborche
Postgresql кластеп
aborche
Кластер
bebebe
окей, вот на вскидку, возможно коллеги предложат более правильный путь: генерируете ключи на всех машинах и записываете их через register для каждой машины в переменную например ssh_public_key далее пробегаетесь опять по всем машинам, делаете with_item, но с условием что inventory_hostname != item хостнейм
bebebe
но я бы посмотрел на это с другой стороны, и сгенерировал для psql кластера одну пару приватный публичный ключ и разложил где надо, если это подходит под ваши security policy
bebebe
делать "full mash" из ключей, это такое себе занятие
Vadim
имхо один ключ сделать проще - и юзать его для определенной операции
Andrey
Ansible Up & Running 2nd edition появился у кого?
Womchik
не считая авторов?
simplemice.eth
Womchik
epub случайно нет?
simplemice.eth
у меня неа, только в пдф хороню... конверторы есть...
Andrey
не. конвертеры не то.
Andrey
когда изначально для epub готовят и проверяют всё качественно получается.
Andrey
спасибо!
simplemice.eth
ну тогда звиняйте, что есть )))
Andrey
а где берёшь?
Womchik
спасибо
simplemice.eth
диллеры хорошие....
simplemice.eth
у китайцев в основном
Andrey
а где у китайцев?
Andrey
а идея хороша! duckduckgo + регион поиска китай
Andrey
спасибо!
Andrey
Andrey
@womchik ^^^
Womchik
спасибо
alexander
всем привет! подскажите, а нормальная ли это практика, в процессе провиженинга через ансибл создавать разделы на жестком диске и шифровать их, чтобы туда уже потом деплоить данные? а-то пока это делается вручную, вот думаю, можно ли автоматизировать малой кровью
Aleksey
The example code in this book was tested against version 2.3.0.0 of Ansible
Constantin
The example code in this book was tested against version 2.3.0.0 of Ansible
Так, а там сильно много изменилось всего относительно 2.5?
Aleksey
с 2.4
alexander
всё зависит от реальной необходимости вот этого вот всего и конкретного workflow
gdpr принуждает. воркфлоу — создать сервер, сделать зашифрованный раздел, указать папку в плейбуке и деплоить.
Sergey
gdpr принуждает. воркфлоу — создать сервер, сделать зашифрованный раздел, указать папку в плейбуке и деплоить.
Тогда для данного конкретного usecase - нормально, раз всё равно других вариантов нет.
Vadim
А есть ли какие-то утилиты готовые для этого?
ignition умеет шифровать разделы, но емнип не умеет шифровать рут
Aleksey
а вы про которй ignition?
Gleb
кореосная штука
Gleb
наверное
Gleb
https://coreos.com/ignition/docs/latest/what-is-ignition.html
Vadim
а вы про которй ignition?
https://github.com/coreos/ignition а какой еще есть?
Stas
подскажите как модулем xml вывести чилдренов
Stas
пож
Stas
удалять добавлять можно
Stas
а как посмотреть кто внутри ноды?
Ждун
xpath? (content)
Stas
"matches": [ { "CamelGW": "\n " }
Stas
если attribute поставить в контент то он все аттрибуты ноды выведет
Stas
мне то надо то что внутри
Ждун
child::node()
Stas
это что и куда)
Ждун
I can only show you the door. You’re the one that has to walk through it. 🙃
bebebe
а как посмотреть кто внутри ноды?
- name: Parse the lo0 IP xml: xmlstring: "{{ result.xml[0] }}" xpath: "./logical-interface[name='lo0.0']/address-family[address-family-name='inet']/interface-address/ifa-local" content: 'text' register: result failed_when: result['matches'] is not defined - name: Set the lo0 IP Fact set_fact: lo0_ip: "{{ result['matches'][0]['ifa-local'] }}" - name: Print the lo0 IP debug: var: lo0_ipне?
bebebe
прошу прощения, не туда
Nikita
Всем привет, подскажите пожалуйста, выполняю вот такой плейбук - stat: path: /usr/lib/systemd/system/zabbix-agent.service register: zabbix_service when: ansible_os_family == ‘RedHat’ - name: CentOS | install libzbxpgsql yum: name: http://cdn.cavaliercoder.com/libzbxpgsql/yum/zabbix32/rhel/7/x86_64/libzbxpgsql-1.1.0-1.el7.x86_64.rpm when: ansible_os_family == "RedHat" and zabbix_service.stat.exists == True notify: restart zabbix-agent И получаю вот такую ошибку The conditional check 'ansible_os_family == "RedHat" and zabbix_service.stat.exists == True' failed. The error was: error while evaluating conditional (ansible_os_family == "RedHat" and zabbix_service.stat.exists == True): 'dict object' has no attribute 'stat’
Nikita
Использовать факты и переменные в одном when нельзя?
Tadeusz
LMAO