@pro_ansible

Страница 429 из 625
Alexey
07.04.2018
07:44:37
Эталонный образ виртуалки можно через packer удобно создавать. Там из коробки поддерживается провижинер ансибла
Я слышал о нём. Правильно ли я понимаю, что ты ему скармливаешь либо ISO с каким-нибудь kickstart'ом, либо образ эталонной VM и он сам тебе делает из него то, что надо по итогу?

Lev
07.04.2018
07:44:55
Тип того

Google
Lev
07.04.2018
07:47:57
Под капотом все банально 1 пакер стартует хттп сервер 2 стартует виртуалку 3 виртуалку бутит, что бы стянула кикстарт файл 4 отрабатывает кикстарт, подымает сеть, делает что надо 5 вм в ребуте, пришла сеть - допровижинивает как надо 6 экспортим и пакуем виртуалку

Вариантов настроек километр. Это порождает опасность ошибиться. Настойчиво рекомендую задуматься о тестирование для этого счастья

Alexey
07.04.2018
07:53:22
Понял. Спасибо всем за дискуссию! ^^

Пошёл думать, как привести всё это в тот вид, в котором оно и должно быть =)

Lev
07.04.2018
07:58:21
1 ci - jenkins/gitlab/teamcity 2 vm builds - packer ( можно nested virtualization) под каждую платформу 3 артифакторий - nexus/artifactory/s3 4 vm tests - testkitchen / molecula / testinfra 5 infrastructure provision - terraform/ nomad/ cloudfront Ну и на каждом уровне никто не отменял своих костылей и велосипедов

Nklya
07.04.2018
07:59:49
Артифакторий))

Lev
07.04.2018
08:00:14
Чем слово не угодило Оо

Nklya
07.04.2018
08:01:15
Я люблю собирать нелепые переводы англоязычных терминов

Lev
07.04.2018
08:03:16
А как правильно перевести? Хранилище артефактов?

Nklya
07.04.2018
08:04:15
Например

Artem
07.04.2018
08:05:14
профилакторий

архивариус)

Lev
07.04.2018
08:06:14
Спишем жаргонизм и опечатки на печатание с телефона

Google
Nklya
07.04.2018
08:06:31
Это как продуктив

Lev
07.04.2018
08:08:00
Кмк катить на продуктив звучит лучше, чем катить на бой

Nklya
07.04.2018
08:20:03
продакшн

Ivan
07.04.2018
10:50:10
Чем слово не угодило Оо
Nexus это же репозиторий

Nklya
07.04.2018
10:55:06
репозитарий

Roman
07.04.2018
11:02:40
Доброго дня, коллегии! Поделитесь, пожалуйста: кто как храни роли? Каждую в отдельной git-репе, а после, в проект субмодулями подключаете?

Vadim
07.04.2018
11:06:20
зачем сабмодулем, ansible-galaxy

Алексей
07.04.2018
11:06:43
нет плюсов у галакси

Vadim
07.04.2018
11:07:00
на прошлом проекте - в разных репах, на этом - всё в одном. Зависит от того, планируется ли этими ролями делиться с другими

Алексей
07.04.2018
11:07:03
имхо проект галакси не взлетел.

Vadim
07.04.2018
11:07:12
нет плюсов у галакси
зато у сабмодуля есть куча минусов

Алексей
07.04.2018
11:07:14
но вадиму как сотруднику надо продолжать пиарить

Nklya
07.04.2018
11:07:38
Vadim
07.04.2018
11:07:40
Алексей
07.04.2018
11:07:50
Vadim
07.04.2018
11:08:09
ну да, .. but $20 is $20

Алексей
07.04.2018
11:11:13
ой а где записаться в программу ? я тоже буду галакси хвалить за $20

Vladimir
07.04.2018
11:11:17
Доброго дня, коллегии! Поделитесь, пожалуйста: кто как храни роли? Каждую в отдельной git-репе, а после, в проект субмодулями подключаете?
Всё в одной репе. Это проще всего. Подозреваю, что даже если роли будут развесистые, то всё-равно в одной репе их будет хранить удобнее. Роли используем только мы.

Алексей
07.04.2018
11:11:29
даже демпингану за $19.95

Stepan T.
07.04.2018
11:12:45
Пользоваться ansible-galaxy это плохо?

Google
Vadim
07.04.2018
11:13:07
"доктор сказал в морг, значит в морг"

Roman
07.04.2018
11:14:49
Пользоваться ansible-galaxy это плохо?
Не хорошо некоторые вещи выкладывать в публичный доступ. Поэтому и спрашиваю.

Nklya
07.04.2018
11:16:29
галакси в том контексте был сказан не про выкладывание в общий доступ

А про скачивание ролей из гит репозиториев с помощью ansible-galaxy

Использовать сабмодули в гите на любителя

Алексей
07.04.2018
11:19:51
команда для скачивания ролей из реп более чем норм

есть важный момент

-f

Vadim
07.04.2018
11:20:00
Не хорошо некоторые вещи выкладывать в публичный доступ. Поэтому и спрашиваю.
Не обязательно юзать тот паблик инстанс, любой гитреп будет работать с CLI

Алексей
07.04.2018
11:20:03
он обязателен

иначе полная херня

Vadim
07.04.2018
11:20:48
ну эт зависит от того как запускаете. Мы вообще всё ложили в отдельный контейнер, проверяли на dev instance и давали его опсам

если сработало у нас и не сработало у них - кривой контейнер. Через ~ месяц все работало как часы

Stepan T.
07.04.2018
11:34:59
ну эт зависит от того как запускаете. Мы вообще всё ложили в отдельный контейнер, проверяли на dev instance и давали его опсам
простите за глупые вопросы, я неофит, как в линуксе в целом, так и пользовании систем контроля конфигурациями. Когда речь идёт о контейнере, вы говорите про докер-контейнер?

Vadim
07.04.2018
11:37:15
>вы говорите про докер-контейнер? да

Roman
07.04.2018
11:41:12
Сейчас структура проекта выглядит так ├── ansible.cfg ├── group_vars │ ├── group1 │ └── group2 ├── hosts ├── hosts_dev ├── playbooks │ ├── group1.yaml │ └── group2.yaml └── roles ├── role1 ├── role2 └── role3

Впринципе, удобно, что без проблем скармливается AWX

опять же, иногда бывает проблема, что при подключении git-submodule привязка идёт к опрелеленному коммиту.

т.е. периодически приходится делать обновление реп ролей

Google
Vadim
07.04.2018
11:42:49
в общем у нас был такой монструозный скрипт - https://gist.github.com/vrutkovs/0120ed4f8400d31ae695dc303699df22 - который мы, вместе с зависимостями, ложили в контейнер

оно само всё пыталось собрать, установить и прогнать тесты

опять же, иногда бывает проблема, что при подключении git-submodule привязка идёт к опрелеленному коммиту.
https://docs.ansible.com/ansible/latest/reference_appendices/galaxy.html#installing-multiple-roles-from-a-file наверное будет проще чем сабмодули

Алексей
07.04.2018
12:35:52
господа а можно как то проверить что заданный порт (не?) доступен с инета ? поясню что хочу. хочу http get c параметром port который в обратку попробует connect на адресс с которого пришел запрос и порт указанный в get и в ответ мне скажет connected/not connected

Ivan
07.04.2018
13:22:05
Чего то типа https://networkappers.com/tools/open-port-checker такого?

Alex
07.04.2018
13:22:43
или такого ? https://help.shodan.io/the-basics/on-demand-scanning

Алексей
07.04.2018
13:28:22
или такого ? https://help.shodan.io/the-basics/on-demand-scanning
апи кей надо держать. но в целом интересно.

Чего то типа https://networkappers.com/tools/open-port-checker такого?
да тип такого но именно этот не подошел. я их уже 2 десятка перебрал

Alex
07.04.2018
13:29:32
тогда самому сервис поднимать

там делов-то всего ничего

Ivan
07.04.2018
13:30:24
У меня был похожий кейс, но я с подконтрольной машины решал.

Mike
07.04.2018
16:39:15
привет всем, может кто подскажет как правильно разобрать стрингу из переменной и поменять нужные символы, пробовал через sed но там много кавычек и еще надо передать как-то "{{item}}" на что ансибл сказал юзать lineinfile, но lineinfile не может поменять просто стринг, только в файле насколько я знаю

Алексей
07.04.2018
16:39:58
combine

Mike
07.04.2018
16:40:01
а точнее кейс просто такой, что от API получают путь к файлам но он виндовый и надо просто sed "s%\\\%/%g". ему сделать

Алексей
07.04.2018
16:42:04
может просто {{ blabla| replace("a","b") }}

желание постебатся сильнее желания помочь ? ну ну

Mike
07.04.2018
16:46:22
Aleksey, спасибо, попробую через replace

Stepan T.
07.04.2018
16:46:23
Никакого стёба.

Алексей
07.04.2018
16:47:03
Aleksey, спасибо, попробую через replace
подозреваю что там буде ад экранирования и \ потребуется штук 14

но это должно быть привычно парням имющим дело в windows

Google
Mike
07.04.2018
16:48:03
ага, я почему то наивно думал что вставлю просто шелл команду с sed и забуду)

Алексей
07.04.2018
16:49:38
https://stackoverflow.com/questions/33162552/how-to-extend-windows-path-variable-using-ansible

может так ?

Mike
07.04.2018
16:51:29
Stepan, наверное я неккоретно вначале написал, все-таки мне не разобрать стринг, а просто сделать replace

Stepan T.
07.04.2018
16:55:55
Mike
07.04.2018
17:00:35
похоже на то, чекну, спасибо

Stannis
08.04.2018
06:25:04
Поцоны, это кошерный путь запускать так для другой роли? - name: update haproxy frontend delegate_to: "{{ item }}" delegate_facts: no vars: hosts_content: "{{ lookup('template', 'templates/mysql_front.j2') }}" lvs_bind_ip: "{{hostvars[item]['ansible_default_ipv4']['address']}}" blockinfile: path: /etc/haproxy/haproxy.cfg insertafter: "# Frontend section ---------------------------------------------------" marker: "# {mark} mysql frontend for {{ group_names[0] }}" content: "{{hosts_content}}" state: present run_once: true with_items: - "{{ groups.lvs}}"

Danila
08.04.2018
08:12:51
посоны, я на измену тут подсел с этим ансиблом

разворачиваю стенд плейбуком с ролью, короче, всё ок, но в конце приходит нотификация, в которой название стенда обьявлено в дефолтах. и, короче, там не оно, а вообще название стенда, который делал я неделю назад. перерыл всю папку роли и весь плейбук, такого слова нет нигде вообще, и стенд назвался так же, как и в нотификации. собсно, вопрос, к какому врачу идти, к офтальмологу или к психиатру?

?simplemice
08.04.2018
08:16:40
думаю что сначала к глазнику, может быть гдето переменную незаметил

Danila
08.04.2018
08:19:03
блять, он этим словом везде обьявил, теперь надо пофиксить пару конфиговвпридачу

?simplemice
08.04.2018
08:20:19
о_О

Vladimir
08.04.2018
08:20:21
set_fact... ?!

Danila
08.04.2018
08:21:05
це ж не факт

просто в дефолтах есть app: demo например

Страница 429 из 625