CHIP
лул)
Vladislav 👻
Из под винды, из под убунты винды, из под мака и из центоса
CHIP
сделай гит дифф и увидишь все)
Alex
подскажите, это фича модуля setup, но при делегировании на другой хост, он собирает намного меньше данных, например там нет ansible_hostname ?
Отделение Bereke Bank
подскажите, не могу найти. Ансиблом можно сделать ключ в pkcs8? Или только башсибл?
Logan
Nikita
Привет, подскажите, почему при использовании loop_control игнорируется условие?
- name: create a symbolic link systemd units
file:
src: "/lib/systemd/system/{{ item.name }}.service"
dest: "/etc/systemd/system/{{ item.name }}.service"
owner: root
group: root
state: link
when:
- item.name is defined
loop: "{{ systemd_service_list }}"
loop_control:
label: "{{ item.name }}"
Падает с ошибкой если нет указаного ключа в дикте
Lamobot
Nikita
Lamobot
loop: "{{ systemd_service_list|selectattr('name', 'defined')|list }}"
Nikita
Да, подходит, спасибо
Alex
так кто-нибудь сталкивался с тем, что конструкция вида
hostvars['app_master']['ansible_hostname']
при делегировании ведет себя не адекватно? Т.е. на делегируемом хосте я получаю значение не с мастера, а с самого хоста
Egor
Alex
я ведь запрашиваю hostvars для мастера
Alex
или я что то упускаю
Alex
например
- name: PREPARE ENVIRONMENT
hosts: master,slave
tasks:
- name: Collect OS facts
become: yes
setup:
gather_subset:
- '!all'
- '!any'
- facter
- name: TEST
hosts: master
tasks:
- debug: msg="{{ hostvars['app_master']['ansible_hostname'] }}"
- debug: msg="{{ hostvars['app_slave']['ansible_hostname'] }}"
- debug: msg="{{ hostvars['app_master']['ansible_hostname'] }}"
delegate_to: app_slave
- debug: msg="{{ hostvars['app_slave']['ansible_hostname'] }}"
delegate_to: app_slave
отрабатывает нормально и на обоих хостах выводит правильные имена
Timur
Alex
например
Alex
TASK [debug] ***
ok: [app_master] => {
"msg": "itests-fdc6-master"
}
TASK [debug] ***
ok: [app_master] => {
"msg": "itests-fdc6-slave"
}
TASK [debug] ***
ok: [app_master -> 35.205.xxx.xxx] => {
"msg": "itests-fdc6-master"
}
TASK [debug] ***
ok: [app_master -> 35.205.xxx.xxx] => {
"msg": "itests-fdc6-slave"
}
Timur
By default, any fact gathered by a delegated task are assigned to the inventory_hostname (the current host) instead of the host which actually produced the facts (the delegated to host).
Alex
не мой случай
Alex
факты у меня генерируются без делегации
Timur
Alex
- name: PREPARE ENVIRONMENT
hosts: master,slave
tasks:
- name: Collect OS facts
become: yes
setup:
gather_subset:
- '!all'
- '!any'
- facter
Alex
проблема в том, что при делегировании таска на слейв, в переменной hostvars['app_master']['ansible_hostname'] я получаю itests-fdc6-slave, вместо ожидаемого itests-fdc6-master
Timur
Timur
TASK [debug] ***
ok: [app_master -> 35.205.xxx.xxx] => {
"msg": "itests-fdc6-master"
}
Alex
это я для упрощения пытался смоделировать реальный кейс
Alex
в реальном проекте
TASK [itests/jfxr : fail] ***
fatal: [app_master -> 35.205.xxx.xxx]: FAILED! => {"changed": false, "msg": "itests-fdc6-slave"}
...ignoring
Timur
Alex
значение переменной используется в конфигурационном шаблоне приложения, соответсвенно оно не запускается в HA режиме
Jungo
добрый вечер! а можно вот так делать в плейбуке? - почему то выполняются только два первых hosts
Ruslan
Ruslan
Словно это один смерженный плей
Ruslan
Ясн ) просто не вижу их
Timur
Egor
мне кажется, тут вопрос в формате, типа можно ли через запятую хосты указывать и т.д.
Egor
хотя хз
⎈
Timur
Timur
Timur
https://docs.ansible.com/ansible/latest/user_guide/intro_patterns.html#working-with-patterns
Timur
Timur
Не очень понял вопрос, если честно
⎈
Timur
Ilgiz
Кратко, есть возможность делать Jenkns stage as Ansible step?
Ilgiz
собсно воспрос выглядит как "можно степ выдернуть из ансибла" и чтоб он потом вернул 1
Timur
Anonymous
по теории вероятности
Egor
ну, в теории, можно каждую таску оформлять в отдельный плейбук, и делать метаплейбук, в котором они объединяются, и для каждой таски сделать енв, который будет выставляться по результатам таски, но это прям совсем наркомения :-)
Egor
и если тебе надо конкретную таску - дёрнул её плейбук, надо весь - дёрнул метаплейбук
𝚔𝚟𝚊𝚙𝚜
Egor
не, я сам делаю инклюды, правда обычно для конкретных групп действий, типа дистрозависимых опций, но не каждую же таску оформлять в отдельный плей :-)
tutunak
Egor
а если у тебя связанный конвеер, то проще раскидать
𝚔𝚟𝚊𝚙𝚜
Egor
Egor
там есть отдельно, креэйт, модифи и дестрой
Egor
и есть мейн таска, в которой есть проверка текущего состояния фабрики, и, в зависимости от состояния и переданных параметров - она инклюдит нужные такси
𝚔𝚟𝚊𝚙𝚜
А что за фьюз, можно ссылочку? - а то я чтот пропустил.
Egor
jboss fuse
Egor
https://redhat.axoft.ru/products/red-hat-jboss-fuse
Alexander
жесть какая. зачем вам это дно? еще и в конфигурации фабрик
Egor
вот такая холобудина для явы
Alexander
это не для явы, это для издевательства над людьми. редхат, кстати, после того как это поделие приобрел, постепенно от фабрика отказался. теперь их fuse от голого карафа ничем не отличается.
Alexander
у вас версия 6.x видимо ? если не секрет, то что за контора и какого размера фабрика (количество серверов и количество чайлд-контейнеров)
Egor
угу, 6.х
Egor
контору, сорян, не скажу, продукт не запущен, по шапке за это получить могу
Egor
фабрика на 7 узлов
Egor
пока что
Alexander
зоокипер в ensemble соединен ?
Alexander
в общем личный опыт, эта штука крайне плохо оркестрируется и управляется. мы пробовали писать таски, по итогам практически забили и будем с него мигрировать. ну там много к нему претензий, лучше уезжайте на голый караф и используйте их как standalone java приложения, с внешним оркестратором. но тут как бы ваше дело, надеюсь у вас там есть архитектор и он знает что делает.
+_-
День добрый. А насколько феншуйно использовать башсинбл для сбора информации? Ничего не меняя на системе, например.