Dmytro
Пока с таким не сталкивался
Dmytro
В плане healthcheck где веб я тож чекаю по локалхост
Dmytro
Oleg Y.
бытовые примеры касательно именно бэкенда:
1. неправильно сконфигурирован, условно - отвечает не на том порту
2. смотрит на неправильную базу, как вариант п.1 и отдает http 5xx
3. завис или долго отвечает
Dmytro
такие вещи это уже неверные трансформы и я получу по рукам)
Oleg Y.
ну и в таком духе
Dmytro
особенно за смотрит на неправильную базу))
Dmytro
по завис или долго отвечает - для этого есть prom + grafana что сладит за nginx
Dmytro
как и за status codes
Dmytro
ибо сервисов много и все в hacluster
Oleg Y.
мониторинг решает, да
Dmytro
все это в healthcheck не запихнешь
Dmytro
вернее как запихнешь но мои не хотят в хелсчек базу добавлять - не сесюрно можно и ddos вловить на свой же хелсчек
Dmytro
я с ними не согласен - можно ж чекать srcip = 127.0.0.1 или ::1, но что имеем то имеем
Oleg Y.
ddos снаружи на хелсчек?)
Oleg Y.
трафик снаружи должен приземляться на балансировщик, а он через себя хелсчеки не пропустит при грамотной конфигурации
Dmytro
да и так и на сервисе самом в коде можно loopback разрешать только для healcheck
Dmytro
не сумел уговорить
Oleg Y.
:( эх
Dmytro
боль devops-dev
Dmytro
на яву
Dmytro
Dmytro
Dmytro
можно и им дергать curl + headers или python скрипт какой
Dmytro
и парсить output и передавать как одну переменную в zabbix
Dmytro
все же zabbix вам алармы сыпать будет
Dmytro
а ansible разве что если его к какомунибуть pushgateway на prometheus присобичите или напрямую к alertsystem аля dataduty etc или это был сарказм?))
Dmytro
ну а если кто то сделает kill -9 ansible?)
Dmytro
найти и наказать?)
Grek 🇺🇦
ребята, хватит) хоть и тяпница, но уж сильно во флуд уходим
Aleksey
найти и наказать?)
нет! просто еще один ансибл плей, который будет проверять работу первого и там тоже retries и delay
Dmytro
recursion
Aleksey
Dmytro
Aleksey
я уже не первый раз тут встречаю кейс ансибл как сервис. сейчас, и чуть ранее было, когда дама предложила обсудить функционал ансибл загрузчика ансибл ролей с удаленного сайта. вопрос, никто не встречал описания ансибльных антипаттернов, типа бэд практис. чисто интересно нет ли такого описания, что в ансибле делать не надо
Oleg Y.
по "ansible antipatterns" многое гуглится
Aleksey
Anonymous
https://paste.ubuntu.com/p/Gtmr5wSXjw/
Anonymous
why not download my jar file
Anonymous
this is my username and token
Anonymous
Anonymous
i use maven_artifact model
Anonymous
for download
Grek 🇺🇦
Николай
https://paste.ubuntu.com/p/Gtmr5wSXjw/
Try to provide username and password as a module parameters, not a url part
https://docs.ansible.com/ansible/latest/modules/maven_artifact_module.html#examples
Anonymous
https://paste.ubuntu.com/p/52NRp73NDS/
Anonymous
that's not gonna work either
Anonymous
Oleg Y.
seems that https://gitlab.com/api/v4/projects/19315665/packages/maven is not a valid repository URL, that is why you're facing the 404 Not Found error on metadata file.
Anonymous
no, this just is a maven url
Anonymous
https://paste.ubuntu.com/p/rqfVfd7JrC/
Anonymous
this is define my pom.xml , and i had deploy success
Oleg Y.
try to execute the same curl command from the 192.168.233.130 node, what is the result ?
Desdichado
because of HTTP Error 404: Not Foundfor URL ?
Anonymous
but i use curl can be response
Anonymous
curl https://gitlab.com/api/v4/projects/19315665/packages/maven/com/geek/helloworld/1.0-SNAPSHOT/maven-metadata.xml
Anonymous
you can try it
Anonymous
Anonymous
this is my gitab registry
Grek 🇺🇦
Desdichado
Try to compare urls
Anonymous
no , gitlab have access token
Mamun
hi everyone.. I am very new to ansible and wanted some very basic help and saw this channel and thought I'd join, apologies if I am talking too basic.
айтишник
Mamun
айтишник
Full
Народ, вопрос созрел, возможно, несколько странный.
Речь про awx.
Решил попробовать отделить инвентори от всего остального. Сделал отдельное репо, выглядит как-то так:
/files
└─user.id_rsa
/host_vars
└─host.yml
inventory.yml
Есть отдельное репо, где лежат плейбуки.
И вот заткнулся на добавлении ключей на хост.
Таска:
- name: Add Keys
authorized_key:
user: '{{ item.user }}'
key: '{{ item.key }}'
loop: '{{ users }}'
become: true
when:
- users is defined
item.key определен в инвентори так:
key: "{{ lookup('file', 'user.id_rsa') }}"
Ошибка - could not locate file in lookup. Хотя при поиске оно перебирает все каталоги file, которые можно найти.
Пробовал вот так:
key: "{{ lookup('file', inventory_dir + '/files.user.id_rsa') }}"
Результат тот-же, только уже не перебирает пути, а ищет по указанному.
Мне думается, все дело в том, что awx складывает все в /tmp до того, как запустить. Все, да похоже, что не все. С инвентори все хорошо, все переменные подтягиваются, но вот файлы из /files туда не попадают.
Сижу, размышляю, как бы поступить...
1. Забить и сложить инвентори рядом с плейбуками. Мне это не нравится, т.к. я специально их разводил. Чтоб в awx был универсальный набор плейбуков, которые можно запускать с разными, не связанными инвентори.
2. Забирать ключи не через lookup ('file'), а через lookup ('url') прямо из гита. Придется писать километровые статичные урлы, но это сработает. Как придумать динамический урл с путем, относительно текущего репо, я не придумал. Можно, конечно, где-то в переменных путь к репо задать, и потом конкатенацией к нему имя файла цеплять. Ну, такое.
Немного пятничной норкомании.
Op
Здравствуйте, подскажите, почему в списке драйверов молекулы нет vagrant? Молекулу ставил из pip, также поставил python-vagrant. В доке молекулы не нашел ничего об этом, кроме того что дефолтный список такой как у меня. Но судя по статьям в интернете такой драйвер есть и многие им пользуются. Мне в частности нужно тестировать роли, которые запускают docker-контейнейры. Возможно, vagrant для этого уже не лучшее решение?
.venv > molecule create scenario -s filebeat -d vagrant 18:30
Usage: molecule create [OPTIONS]
Try 'molecule create --help' for help.
Error: Invalid value for '--driver-name' / '-d': invalid choice: vagrant. (choose from delegated, docker, podman)
Отделение Bereke Bank
Vladimir
Народ, вопрос созрел, возможно, несколько странный.
Речь про awx.
Решил попробовать отделить инвентори от всего остального. Сделал отдельное репо, выглядит как-то так:
/files
└─user.id_rsa
/host_vars
└─host.yml
inventory.yml
Есть отдельное репо, где лежат плейбуки.
И вот заткнулся на добавлении ключей на хост.
Таска:
- name: Add Keys
authorized_key:
user: '{{ item.user }}'
key: '{{ item.key }}'
loop: '{{ users }}'
become: true
when:
- users is defined
item.key определен в инвентори так:
key: "{{ lookup('file', 'user.id_rsa') }}"
Ошибка - could not locate file in lookup. Хотя при поиске оно перебирает все каталоги file, которые можно найти.
Пробовал вот так:
key: "{{ lookup('file', inventory_dir + '/files.user.id_rsa') }}"
Результат тот-же, только уже не перебирает пути, а ищет по указанному.
Мне думается, все дело в том, что awx складывает все в /tmp до того, как запустить. Все, да похоже, что не все. С инвентори все хорошо, все переменные подтягиваются, но вот файлы из /files туда не попадают.
Сижу, размышляю, как бы поступить...
1. Забить и сложить инвентори рядом с плейбуками. Мне это не нравится, т.к. я специально их разводил. Чтоб в awx был универсальный набор плейбуков, которые можно запускать с разными, не связанными инвентори.
2. Забирать ключи не через lookup ('file'), а через lookup ('url') прямо из гита. Придется писать километровые статичные урлы, но это сработает. Как придумать динамический урл с путем, относительно текущего репо, я не придумал. Можно, конечно, где-то в переменных путь к репо задать, и потом конкатенацией к нему имя файла цеплять. Ну, такое.
Немного пятничной норкомании.
Обязательно item.key в инвентори определять?
Vladimir
Почему бы просто роль не написать?
Vladimir
Чтобы зависимости с инвентори не было
Vladimir
Ах да
Vladimir
Ой, июньский LDAP на Ansible :-)))
Full
Vladimir
Да.
Тогда не подскажу, ибо не знаю
Я написал рольку, у меня норм работает.