@pro_ansible

Страница 230 из 625
Vasiliy
05.07.2017
07:48:15
Что бы с дефолтовыми не было в перемешку

Bogdan
05.07.2017
07:56:58
может проще дефолтные потом отпарсить?

Alexey
05.07.2017
11:15:43
Коллеги, я новичок в системах оркестрации. Мне очень хотелось бы посмотреть какие-то примеры как устроена инфраструктура оркестрации у других (Какое ПО они используют, для каких целей, почему не альтернативы и т.д.). Просто я не верю, что то, как это устроена у нас (к примеру, ты разворачиваешь всё Ansible, но все пароли и логины заходишь и вбиваешь в конфиги ручками) - это правильное развитие событий. Если есть какие-то классные видео на эту тему - будет круто, т.к. на просторах интернета я нашёл пока только обучалки по Ansible, что не есть то, что нужно. В общем, буду благодарен за любые видео, статейки или возможность лично от кого-то узнать, как это должно правильно работать. Заранее спасибо!

Google
Oleksandr
05.07.2017
11:19:38
ansible-vault hashicrop-vault Есть для таких штук
психанул про hashicorp - тут для начала бы разобраться с Jinja потом уже с ansible-vault ну а по hashicorp сам пусть решает надо или нет... то уже для просветеленных )

Bogdan (SirEdvin)
05.07.2017
11:20:33
психанул про hashicorp - тут для начала бы разобраться с Jinja потом уже с ansible-vault ну а по hashicorp сам пусть решает надо или нет... то уже для просветеленных )
Если больше двух-трех людей, то вроде альтернатив нет. Не знаю, мне казалось, что ansible-vault вообще минут на 5-10, как и jinja в базовом варианте.

Oleksandr
05.07.2017
11:21:29
Не ну человек после ansiblа проходится и вбивает руками ) видать не знает... пока не овладеет минимумом смысл hashicorp vault предлагать ?

вообще в заголовке чата есть классная ссылка - там практически % на 95 актуальная инфа

Alexey
05.07.2017
11:27:32
Окей, спасибо за ответы! Прос Hashicorp Vault слышал, но на предложение его развернуть было высказано фи. Обязательно прочитаю на днях про Ansible-Vault! Есть ещё такой вопрос: бывают ситуации когда одна машина из 30 должна заливаться по-иному (к примеру лишний файл закидываться в firewalld или сервис устанавливаться). Я под данную машинку должен создавать отдельный playbook или правильнее делать обработку данного события в самом playbook?

Sergey
05.07.2017
12:40:02
если приходится вешать гроздьями when-ы - ты что-то делаешь не так

lastsky
05.07.2017
12:40:37
да, именно, можно when на block же вешать )

(шутка)

Sergey
05.07.2017
12:41:28
(шутка)
тонко

Google
Alexey
05.07.2017
12:44:49
Эм... А я уже начал читать о block'ах и думать, что это крутая вещь =)

lastsky
05.07.2017
12:46:41
ну да, эта штука иногда полезна, когда ты уже написал велосипед из граблей, и тебе лень вешать гроздьями when.

Alexey
05.07.2017
12:48:04
И есть ещё один вопрос относительно структуры playbook'ов: Правильно делать единый реп со всеми playbook'ами внутри по типу: playbook1.yml playbook2.yml .... playbookn.yml roles type1 role1 type2 role2 type3 role3 Или же лучше для каждого playbook'а делать отдельную структуру каталогов?

Просто сейчас у меня первый вариант и там тьма playbook'ов. Каждый проект как минимум имеет 3 версии с разными указанными хостами (dev, preprod, prod). А т.к. проектов тьма, то получается не плохой список

И что-то мне подсказывает, что так быть не должно

lastsky
05.07.2017
12:53:11
Эм... А я уже начал читать о block'ах и думать, что это крутая вещь =)
https://github.com/major/ansible-hardening/blob/master/tasks/main.yml#L17 можно вот взять пример у хайдена, если тебе нужно разрулить задачи одной роли по дистро-зависимым переменным, и для одного дистро одни переменные, для другого совсем другие. ну и см. далее там тонна примеров по программированию на конфигах.

lastsky
05.07.2017
12:57:48
https://github.com/openstack/openstack-ansible вот тут его творчество в полную силу, можно читать долгими зимними вечерами и восклицать "бля а так можно разве?"

A
05.07.2017
13:00:08
ну мне больше интересно посмотреть на эти вот секьюрити-рекомендации для центось/рхел. https://github.com/major/ansible-hardening/blob/master/templates/sshd_config_block.j2 вон в sshd_config в принципе адекватные вещи пишутся

Bogdan
05.07.2017
15:09:49
Пипл, а как можно натравить lineinfile на все файлы в папке?

Alex
05.07.2017
15:11:05
with_fileglob

lastsky
05.07.2017
15:11:30
*для локальных файлов работает

Pavel
05.07.2017
15:12:16
регистрировать переменную, выполнять ls, ну а дальше цикл

Bogdan
05.07.2017
15:15:13
with_fileglob
на удалённом хосте не работает

Alex
05.07.2017
15:16:24
ага только для локальных, тогда только shell ls

Pavel
05.07.2017
15:18:44
ну или стартовать в пулл мод

Bogdan
05.07.2017
15:22:39
пришлось извратиться: - name: looping over a REMOTE command result shell: "ls /etc/ssh/authorized_keys1" register: command_result - name: remove key lineinfile: dest={{ item }} line="{{key}}" state=absent with_items: - "{{ command_result.stdout_lines }}"

Igor
05.07.2017
15:29:50
C:\Windows\ServiceProfiles\LocalService
То что надо, заработало, спасибо )

lastsky
05.07.2017
15:32:19
Google
lastsky
05.07.2017
15:33:05
БОЛЬШЕ ШЕЛЛА В АНСИБЛ!!! (c)

Bogdan
05.07.2017
15:41:37
БОЛЬШЕ ШЕЛЛА В АНСИБЛ!!! (c)
согласен: - name: listing files find: paths: "/etc/ssh/authorized_keys1" patterns: "*" register: result - name: remove key lineinfile: dest={{ item.path }} line="{{key}}" state=absent with_items: - "{{ result.files }}"

лучше?

lastsky
05.07.2017
15:46:09
угу, я также юзаю, проблем нет

Alex
05.07.2017
15:48:25
таки да, не знал про find

Anatoly
05.07.2017
16:00:37
как правильно сетить local_facts? сосздавать ini файл? а то что то set_fact так не работает

Quilleribe
06.07.2017
05:31:57
@FolderArchive - канал, где сливают платный полезный - образовательный контент и курсы, например можно скачать курсы "Нетологии" или все курсы "Бизнес Молодости".

qeng
06.07.2017
11:14:41
помогите с шаблоном. есть такой список переменных: vault: default: myuser: "myuser" mypassword: "mypassword" server: 192.168.1.1: auth: "secret1" name: "name1" 192.168.1.2: auth: "secret2" name: "name2"

и такой шаблон: {% for item in vault.server %} host "{{ item.name }}" { auth = "{{ item.auth }}" } {% endfor %}

на выходе получаю только % в файле

Sergey
06.07.2017
11:28:38
поставь по минусу перед IP-адресами ?

то бишь преврати ключи словаря в элементы списка (по которым как раз и работает with_items)

qeng
06.07.2017
12:01:45
неа, не помогло

Dmitry
06.07.2017
12:05:36
ну для начала минусы надо ставить выше

потому что он ходит по vault.serevr

а, да

перед ипами

тогда, как говорит один мой начальник - одна из обезьянок пиздит

Sergey
06.07.2017
12:40:13
ну теоретически vault может совпадать с именем какого-то внутреннего объекта в ансибле

так что я бы попробовал переименовать во что-то более обыденное - creds, auths, dannyes, parolys ?

Google
Anatoly
06.07.2017
12:41:48
A
06.07.2017
12:43:03
вы подозреваете что там настолько дятлы сидят, да?
ну это ж не мы придумали программировать на шаблонизаторе ;(

Anatoly
06.07.2017
12:43:37
ну и при чем здесь шаблонизатор тоже остается загадкой, кстати.

A
06.07.2017
12:44:38
я писал на пхп, да.

Anatoly
06.07.2017
12:45:27
я писал на пхп, да.
зачем ты мне это сказал? как мне теперь жить с этим?

Admin
ERROR: S client not available

Sergey
06.07.2017
13:48:42
вы подозреваете что там настолько дятлы сидят, да?
речь вообще-то не о подозрениях, а об исключении нелепых случайностей.

qeng
06.07.2017
13:50:02
нет, дело не имени vault

Sergey
06.07.2017
13:59:41
как сейчас выглядит входной yaml?

где он лежит?

qeng
06.07.2017
14:11:50
сам yaml лежит в group_vars, default из него дёргаю нормально. затык именно с шаблоном

структура такаяже как описал выше

минусы перед ip в списке servers поставил

Sergey
06.07.2017
14:18:42
а в выходном файле по-прежнему проценты? O_o

qeng
06.07.2017
14:20:03
в этом шаблоне. один символ, да. тот, куда default дёргается, всё хорошо

Sergey
06.07.2017
14:27:43
а если IP-адреса, используемые в качестве названий словарей, попихать в кавычки, и спрашивать именно их? просто items?

qeng
06.07.2017
14:35:18
про спрашивать именно их не понял

в общем, всё вы правильно подсказали, проверил на http://jinja2test.tk/

осталсь одна загадка, почему на выходе у меня только один символ - %

Google
lastsky
06.07.2017
17:04:47
так что я бы попробовал переименовать во что-то более обыденное - creds, auths, dannyes, parolys ?
кстати удобно когда знаешь второй язык - взял и свои переменные сделал на немецком :)

Алексей
06.07.2017
17:05:17
а лучши эмотиконами

lastsky
06.07.2017
17:05:30
осталсь одна загадка, почему на выходе у меня только один символ - %
переименуй default во что-нибудь и повтори. результат меняется?

Алексей
06.07.2017
17:05:55
да да я про нееже

lastsky
06.07.2017
17:06:25
emojifuck - замена brainfuck.

или ещё вот прекрасный пример - YOPTASCRIPT :)

ксива.малява("Я и правда язык") нах

lastsky
06.07.2017
17:13:09
ну баг зарегай в ansible, последний способ найти решение. либо узнать что оно через уменьшение этажности вложенных списков.

Andrey
06.07.2017
17:42:25
привет. подскажете, в ansible 2.3 как то можно обратиться к имени инвентаря как к переменной?

n4nn31355
07.07.2017
00:05:48
Гайс, хочу деплоить пользовательский публичный ssh-ключ. Как лучше организовать? Т.е. мне нужно из консоли указывать путь к файлу или сам ключ, пока не очень понимаю как это нормально сделать

Есть вариант, конечно, с указанием ключа в ENV, но об этом тоже надо помнить или в роль смотреть

Хм. Хотя ansible-way, наверное, для каждого хоста все ключи заносить в переменную/файл и хранить в git. Ибо иначе не идемпотентно будет

lastsky
07.07.2017
00:32:03
http://docs.ansible.com/ansible/authorized_key_module.html

примерчики всякие тоннами

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