UglyKoyote
хотя за такое тут по голове бить принято вроде бы)
zEvilz
или вообще забить и руками порт менять)
zEvilz
а ansible_ssh_port как в плейбуке заменить, чтоб в хосты не лазить?
citius
или вообще забить и руками порт менять)
Если это виртуалки - почему не запечь порт в образ? Можно сделать отдельный плей c - hosts: all vars: ansible_ssh_port: 22 tasks: ......... Его пускать первым, а в инвентаре держать уже свои нормальные настройки.
zEvilz
как раз то, что нужно. а если перед ребутом делать локальный таск и подменять порт в файле плейбука?)
zEvilz
после ребута подхватит или будет юзать старый порт?
citius
Не надо ничего подменять нигде, в дефолтных настройках держи свой 1234 или какой там у тебя порт.
citius
В данном случае 22 будет только в рамках этого конкретного плея.
Nariman
foo=“{{ name in array | ternary(bar, baz) }}”
Можете подсказать где я ошибаюсь ? vars_prompt: - name: modulename prompt: "Which module you want to deploy?" private: no vars: - ns: "{{ name == 'kkk' | ternary(Admin, Mgmt) }}"
Vlad
Admin и Mgmt это переменные или строки? Если строки то надо их в кавычках писать
Nariman
ns это переменная
zEvilz
всем спасибо, буду тестить)
Nariman
которая меняется в зависимости от promt
Vlad
ns это переменная
Уберите черту перед ns:
Maksim
Привет. Пишу такого рода таск - name: Run queries from SQL script postgresql_query: db: "{{ db.name }}" path_to_script: "{{ inventory_dir }}/branding/db-patches" when: sql_folder.stat.exists and sql_folder.stat.isdir Как мне здесь построить логику, чтобы он применял все скрипты из этой папки? Их может быть хоть 1, хоть 10
Maksim
Пока в голову приходит делать find по каталогу, регать в переменную, и ее использовать
Maksim
with_fileglob
О, спасибо. Совсем забыл про него
Vadim
как плейбук запустить на 1 хост, можно это сделать не добавляю в файл хостов?
Отделение Bereke Bank
Vadim
Не знаю как пояснить,
Vadim
можно плейбук запустить указав в команду запуска имя хоста?
Отделение Bereke Bank
-i, --inventory, --inventory-file specify inventory host path or comma separated host list. –inventory-file is deprecated
Отделение Bereke Bank
Попробуй хосты через запятую. Ни разу не делал
Отделение Bereke Bank
Потом скажешь получилось или нет
UglyKoyote
?
—limit видимо надо человеку
Отделение Bereke Bank
Он не хочет добавлять хосты в инвентори. Лимит тут не поможет
Vadim
а как строку заменить в которой двойная кавычка? пробова экранировать что то не получается
Vadim
- name: replace line replace: path: /etc/default/sysstat regexp: 'ENABLED="false"' replace: "ENABLED=\"true\""
Отделение Bereke Bank
- name: replace line replace: path: /etc/default/sysstat regexp: 'ENABLED="false"' replace: "ENABLED=\"true\""
А может ты просто возьмешь replace в такие же одинарные кавычки?
Vadim
- name: replace line replace: path: /etc/default/sysstat regexp: 'ENABLED=\"false\"' replace: 'ENABLED=\"true\"'
Vadim
не работает
UglyKoyote
без \ тогда - если другие кавычки юзаешь
UglyKoyote
оно в одинарных кавычках будет одним целым брать
Vadim
хотя извините, у меня хост скипался), получилось. да в replace не нужно экранировать
Vadim
спасибо
Vadim
глупый вопрос наверное, а все задачи по хостам последовательно запускаются же, паралельно можно? ато долго ждать
Vadim
ok, установил пакет, перенастроил его и перезапустил на 35 серваках, полезный ансибл
Alex
если тебе надо выполнить набор тасков || на 35 хостах - то ансибл так и работает
Vadim
и при чем тут это?
не понял прием что, в теме ансибла похвалил ансибл, что не так хз, может флуд, нуладно, всем спасибо
Vadim
потому что не было его
Alex
cmd: dnf install -y python3-dnf msg: Could not import the dnf python module using /opt/pyenv/versions/3.6.11/bin/python (3.6.11 (default, Aug 20 2020, 08:57:51) [GCC 4.8.5 20150623 (Red Hat 4.8.5-39)]). Please install `python3-dnf` package or ensure you have specified the correct ansible_python_interpreter. а если ставить через pip - то как должен называться этот модуль? Поиск что то не особо помогает # pip search dnf dnf (0.0.1) - Placeholder pending proper publication of DNF Python API simple-dnf (0.1.1) - Simple graphical utility for DNF package management repomd (0.2.1) - Library for reading dnf/yum repositories spip (0.4.0) - pip ❤️ dnf/apt-get waps (1.0.2) - This library can be used to sample satisfying assignments for a CNF/DNF obeying a given literal-weighted weight function and projected upon a given sampling set.
Anonymous
коллги, подскажите когда я формирую условия так, это логическое И ? - include: 06-add-route.yml when: - ansible_distribution == 'CentOS' - dc_location == 'USA' - second_interface_name != 'example'
Anonymous
если нужно или - то делать все одной строкой ?
Alex
если нужно или - то делать все одной строкой ?
либо как вариант - include: 06-add-route.yml when: >- ansible_distribution == 'CentOS' or dc_location == 'USA' or second_interface_name != 'example'
Anonymous
окей, спасибо
A
В каком юзкейсе может понадобиться order: shuffle?
Danila
Привет всем, есть такой вопрос, думаю многие сталкивались. С ansible работаю не так давно. Нужно прикрутить модуль уведомления с отсылкой в телеграмм, есть у кого-нибудь опыт с таким? Спасибо заранее за помощь
Danila
- name: Test telegram module hosts: localhost connection: local tasks: - name: Send test message command: /usr/bin/say "Is it working?" #telegram: # token: "*****" # chat_id: ***** # msg: "Ansible playbook calling" tags: - text Пример нашёл на просторах, что то типо того.
Danila
https://github.com/dfwmlb/ansible-callback-telegram
Спасибо, буду пробовать)
Alexander
https://github.com/dfwmlb/ansible-callback-telegram
жаль, нет штатной поддержки от вендора для калбэка в телегу
Alexander
поддержки команды разработки ансибла имел ввиду
Sergey
поддержки команды разработки ансибла имел ввиду
😂😆 RedHat тьфу, IBM то есть? А зачем им телегу поддерживать, ты можешь предположить?
Alexander
я всего лишь сказал, что нет штатной поддержки калбэка в телегу, ничего более
Sergey
Не существует.
Alex
у меня аж пригорает от этой ситуации
Alex
питон 2 вроде как уже почти мертв, а под 3ку нет модуля
Отделение Bereke Bank
Пока жив RH 7 - python 2 тоже будет жить)
Alex
да это понятно
Sergey
у меня аж пригорает от этой ситуации
не гори зазря, напиши сам
Alex
думал pyenv как то сгладит ситуацию, но не тут то было
Sergey
думал pyenv как то сгладит ситуацию, но не тут то было
Такой пакет есть для CentOS 8. Вот если тебе сильно надо - берёшь .src.rpm, и собираешь его для CentOS 7.
Alex
и слишком много зависимостей специфичных для centos 8
Отделение Bereke Bank
ну тогда забей хуй
Отделение Bereke Bank
Alex
да по ходу придется на RHEL6/RHEL7 сидеть на 2м питоне