inqfen
И менять поведение самой постгри было бы как раз плохо
[IPT] Dmitry
То есть upsert в случае постгри
ок, я видимо слабо pg знаю
Vladislav 👻
upsert не про это, если что...
Vladislav 👻
Это insert or update
Maks
Тогда сделай select с register и делай инсерт на основе результата
Селект можно и сразу в инсерте сделать, не?
[IPT] Dmitry
т.е. всегда будет changed?
inqfen
Это insert or update
Ну insert or update on conflict
inqfen
А ему как я понял это и надо
Maks
Тут все от задачи зависит + если констрейнта нет, то и конфликта не будет
[IPT] Dmitry
а как настройки идентичные правильно хранить для двух хостов? пример, одинаковые vars для двух нод nginx
[IPT] Dmitry
создавать группу двух хостов?
Lamobot
а как настройки идентичные правильно хранить для двух хостов? пример, одинаковые vars для двух нод nginx
Если у вас всего два хоста с nginx, и у них одинаковые параметры, то почему не сделать группу для них?
Evgenii
Господа, выручате. Есть способ пройтись по ключам ansible_devices ? debug: msg: "{{ ansible_devices[item] }}" with_items: - "{{ disks }}" <- это: sda, sdb можно ли как то добавить еще один список в loop, что бы можно было пройтись дальше, поясню: debug: msg: "{{ ansible_devices[item].partitions[subitem] }}" with_items: - "{{ disks }}" <- это: sda, sdb... item - "{{ partitions }}" <- это: sda1, sda2... subitem ??
Gunnery
Ребята, нужен совет или разъяснение: хочу выполнить некую баш конструкцию, и результат ее вывести в файл и использовать как переменную результат получаю "окавыченный"
Gunnery
- name: получить хэш shell: | some bash convey args: executable: /bin/bash register: some_res - name: записать хэш lineinfile: path: some_file state: present line: "hash_var: {{ some_res.stdout_lines }}" cat some_file hash_var: ['114cfa5b0a403d837d6fba3a40c60eac1972d4d64379320fc0d11a243dca34a13d837d6fba3a40c6']
Gunnery
чего я не понимаю и где в доке не доглядел?
Lamobot
чего я не понимаю и где в доке не доглядел?
Выведи some_res и посмотри какие там поля есть в ответе. Или используй stdout просто
Гайрат
Почему ansible иногда долго темплейтит? Не зависит от роли, template вызывается с with_items, на каждой итерации "висит" по 10-15 секунд. Сейчас это роль для logrotate, например, конфиг там лёгкий, в 15-20 строк максимум.
tutunak
Всем привет! Никто не встречался с тем что win_uri не возвращает контент на POST запросе?
Mikhail
Коллеги, всем привет. Нужна помощь. Пытаюсь реализовать одну задачку. Суть: есть маршрутизатор(mikrotik)на нем есть bgp router-id=10.254.1.4 Нужно написать playbook который прочитает этот router-id и запишет его как ip адрес для bridge=lo. Читает он его правильно. Теперь вопрос: как мне из этого вывода достать просто 10.254.1.4???????? Сам playbook: https://pastebin.com/raw/0VEm0VLE
Sergey
факты не рассматривал?
+++ ^^^ если нужны есть канеш
Mikhail
факты не рассматривал?
нет. можно подробнее что это??
Gunnery
без зазнайства и прочего негативного - тут в чате будет очень долго рассказывать
Gunnery
нет. можно подробнее что это??
https://www.middlewareinventory.com/blog/ansible-facts-list-how-to-use-ansible-facts/ https://docs.ansible.com/ansible/latest/modules/setup_module.html
tutunak
да
повершелом дергается нормально, разобраться что там внутрях модуля ансиблового происходит - пока не удалось. Но мне видится как явная бага.
tutunak
А на гет запрос с body тоже ругается msg: 'Unhandled exception occurred when sending web request. Exception: Exception calling "GetRequestStream" with "0" argument(s): "Cannot send a content-body with this verb-type."'
tutunak
а с Invoke-WebRequest все хорошо
Boris Golynski
Задача: нужно повысить лимит на количество открытых файлов в настоящее время, и чтобы сохранялось после перезагрузки сервера. Вроде как примитивный плейбук, но софтовый лимит упорно не меняется, хотя показывает что все успешно.
Boris Golynski
--- - hosts: localhost become: yes tasks: - name : Change the hard limits shell: ulimit -Hn 1048576 | ulimit -Sn 1048576 | echo 'DefaultLimitNOFILE=1048576' >> /etc/systemd/user.conf | echo 'DefaultLimitNOFILE=2097152' >> /etc/systemd/system.conf
Boris Golynski
При этом сами команды без ансибл, работают успешно как ulimit -Sn 1048576 так и ulimit -Hn 1048576. А в плейбуке отрабатывает только на хардварные лимиты.
Boris Golynski
Хакерранк?
Не понял?
inqfen
Без шеллов
George
Не понял?
Ну, типа не боевая задача, а какая-то очередная олимпиада ?
inqfen
Ну а если файлы - дописывать что-то куда-то опять же плохо
inqfen
Лучше напиши целиком шаблон/файл и отправь на хост
George
Вообще вот так https://docs.ansible.com/ansible/latest/modules/pam_limits_module.html
Ты сказал то же самое, что и я, но не напрямую через файл, а через модуль
Boris Golynski
Нет. Cloudwatch агент пытается читать много логов сразу и выдает ошибку. Вроде того: https://forums.aws.amazon.com/message.jspa?messageID=846206
inqfen
Это гораздо более явно, чем шеллом дописывать в файл при каждом проходе
Boris Golynski
Ещё в /etc/security меняется
Тоже долго бился - меняется, но не применяется: https://unix.stackexchange.com/questions/366352/etc-security-limits-conf-not-applied
inqfen
Тем более содержимое видно полностью, а не какой-то кусок, причем может там уже есть настройка/чему-то противоречит
inqfen
Ты сказал то же самое, что и я, но не напрямую через файл, а через модуль
Ну да, но шеллом дописывать строчку при каждом запуске это слишком печально же
George
Например - у сервисов свои лимиты в системди юнитах
George
А то что ты прописывешь - это для юзеров лимиты, на интерактивные сессии
inqfen
Для юзера может быть явно определен
inqfen
Типа он определяет *, который уже перекрыт явным юзером
Boris Golynski
Вообще вот так https://docs.ansible.com/ansible/latest/modules/pam_limits_module.html
Пробовал дописывать даже ручками - после ребута не подхватывает. :(
inqfen
Ну значит где-то еще определено, ищи, что делать-то
inqfen
Смотрю юниты и юзеров
Boris Golynski
Вообще вот так https://docs.ansible.com/ansible/latest/modules/pam_limits_module.html
Через ансибл тоже после ребута не подхватывает.
inqfen
Ну как бы значит где-то ещё объявлены лимиты либо для юзера отдельно, либо для процесса
inqfen
Юнит посмотри если через него запуск, может там кто-то прописал /прописаны по дефолту
Boris Golynski
На виртуалке тещу. Вроде ничего побочного быть не должно.
inqfen
Ну, если не применяется ни через модуль, ни через файл - значит где-то еще прописано, чудес не бывает же
Boris Golynski
Если менять тут /etc/systemd/user.conf и тут /etc/systemd/system.conf, то после ребута применяется. Только вот что-то идеи как туда правильнее дописать кроме как шеллом что-то на приходят. :(
George
Добавление строчки модулем
Alex
Тоже долго бился - меняется, но не применяется: https://unix.stackexchange.com/questions/366352/etc-security-limits-conf-not-applied
- name: Set max file descriptors limit become: yes pam_limits: domain: 'elasticsearch' limit_type: '-' limit_item: nofile value: '65536' - name: Update nproc limit become: yes pam_limits: domain: 'elasticsearch' limit_type: '-' limit_item: nproc value: '4096' у меня так работает без проблем
inqfen
а cat /etc/security/limits.conf ?
Boris Golynski
# End of file * hard nofile 39693561 joe soft nofile 64000 * soft nofile 64000 * - nofile 65536
Boris Golynski
Там уже набежало. :)
Lamobot
Если я правильно помню, то для рута нужно отдельно указывать лимиты. * не работает для него
Lamobot
Во-вторых, а как вы смотрите лимиты?