@pro_ansible

Страница 178 из 625
Sander
19.03.2017
20:18:38
``` alert_diskio_enabled: True alert_bwout_enabled: True alert_bwout_threshold: 10 alert_diskio_enabled: True```

один и тот же парамтер два раза прописан

Vladimir
19.03.2017
21:32:45
Есть ли простой способ получить голый шелл через Ansible? Суть в следующем: ansible уже знает как ходить на какой хост (с какими логинами/ключами/bastion host, etc), не хочется дублировать эту конфигурацию в ~/.ssh/config, хочется что-то вроде $ ansible -m raw-ssh node1 user@node1 ~$ # здесь обычный терминал, так, будто зашел через ssh на node1

Pavel
19.03.2017
21:36:42
вот такое? https://github.com/dominis/ansible-shell

Google
Vladimir
19.03.2017
21:39:18
@chebotarevp @freeseacher круто, спасибо, сейчас гляну!

ansible-shell близок к тому, что мне нужно, но похоже, что он не умеет дать именно голый ssh —- он может запускать отдельно взятые (сырые) команды и выводить их результат

запустить тот же tmux через него, насколько я вижу, через него не получится

Алексей
19.03.2017
22:44:42
да не получится. это инструмент adhoc управления

боюсь tnux и ad-hoc далеки как динозавтры и белка со стрелкой

Vladimir
19.03.2017
22:53:56
Можно ли как-то удобно с Ansible-vault хранить целые файлы зашифрованными в репозитории? Например, я хочу положить туда приватный ssh ключ. Я могу сделать на него ansible-vault enctrypt keyfile и закоммитить в репозитоний, но чтобы его потом использовать на машине разработчика (чтобы указать его в ssh_config, например), кто-то должен его расшифровать.

Пока я вижу только вариант добавить плейбук, в котором этот файл расшивровывать/копировать в локальную директорию.

Но это выглядит как-то не очень —- дублируется информация, неочевидно как править файлы, и т.п.

Michael
20.03.2017
06:46:11
@rutsky почему выбрано именно это решение - раздавать разрабам приватные ключи, а не собирать их публичные?

Vladimir
20.03.2017
07:59:18
@rutsky почему выбрано именно это решение - раздавать разрабам приватные ключи, а не собирать их публичные?
Для упрощения конфигурации. Виртуалки разворачиваются с уже вшитым деплой-ключом и не хочется делать дополнительно распространение ключей разработчиков (это в каком то смысле менее секьюрно, например, ключ нельзя отозвать, но для нас это сейчас не важно).

Я хочу не только приватные ключи шифровать ansible-vault, но и какие то данные, которыми Ansible фактически не будет управлять, но хранить и шифровать их хочется (например, Secrets для Kunernetes)

Google
Vladimir
20.03.2017
08:02:03
Но похоже, что ansible-vault совсем не предназначен, для хранения вещей, которые не будут читаться только из плейбуков

iF
20.03.2017
08:04:34
Народ, кто-нибудь в своих модулях использовал переменные из ansible.cfg?

iF
20.03.2017
08:06:47
нет, модулях

в ролях я знаю как

Michael
20.03.2017
08:11:26
@rutsky так получается, что вы конфигурацию как раз усложнили я бы использовал приватный репозиторий с доступом по ключам и динамический инвентори к этому репозиторию

Vladimir
20.03.2017
08:24:18
Michael
20.03.2017
08:26:35
да http://devdocs.io/ansible/intro_dynamic_inventory

Vladimir
20.03.2017
08:28:20
да http://devdocs.io/ansible/intro_dynamic_inventory
Интересно, посмотрю, спасибо!

да http://devdocs.io/ansible/intro_dynamic_inventory
Я правильно понимаю, что dynamic inventory это просто написание (или использование готового) генератора инвентаря?

Т.е. файл инвентаря заменяем на скрипт, который его генерит.

Dary
20.03.2017
09:43:12
Привет! Однодневный интенсив в Киеве, приглашаю посетить) KUBERNETES FOR DEVOPS https://devops.events/kubernetes

Vladimir
20.03.2017
09:44:16
here1am
20.03.2017
10:04:55
поговорил с копипастой, день прожит не зря

Serge
20.03.2017
10:29:15
Т.е. файл инвентаря заменяем на скрипт, который его генерит.
да. например, это использует pyventory https://github.com/lig/pyventory

да. например, это использует pyventory https://github.com/lig/pyventory
только щас брать не советую. скоро 2.0, там будет круто всё;)

но у меня в проекте щас и эта версия работает

Google
Vladimir
20.03.2017
11:44:33
Пока я всё равно не вижу простого решения для хранения секретов/ключей, используя Ansible, даже с динамическим инвентарём :)

Vladimir
20.03.2017
11:50:17
Сложный —- это положить в ansible vault ключи/секреты и написать отдельный плейбук, который на машине разработчика в текущую директорию эти секреты выплёвывает.

@WindWriter ^^

Serge
20.03.2017
11:56:11
Сложный —- это положить в ansible vault ключи/секреты и написать отдельный плейбук, который на машине разработчика в текущую директорию эти секреты выплёвывает.
А зачем их выплевывать куда-то? Их можно и нужно в плейбуках использовать. Или вы пытаетесь ансибл для хранения шареных в команде секретов использовать?

Serge
20.03.2017
12:01:04
Не надо пытаться ужа на ежа натягивать. Застрянет.

Pavel
20.03.2017
12:05:04
а можно вопрос от параноика: насколько анизибле аккуратно с секурити обходится - например создаю я на хосте люкс-контейнер и передаю пароль для его создания в параметрах, вопрос при получении полного доступа к хосту (рут) смогут ли злоумышленники выцепить его или из темпов анзибля или из удаленных файлов фс?

Vladimir
20.03.2017
12:06:23
https://www.passbolt.com/
Это разве не просто хранилище паролей/секретов для команды?

У него есть интеграция с гитом/ансиблом? Как он поможет мне версионировать секреты и доставлять их на машины разработчиков аналогично коду с git pull?

Maksim
20.03.2017
13:03:10
Привет! А как то можно нормально права ставить по uid, если имя неизвестно?

Serge
20.03.2017
13:13:09
У него есть интеграция с гитом/ансиблом? Как он поможет мне версионировать секреты и доставлять их на машины разработчиков аналогично коду с git pull?
а зачем ансибл? есть секреты для ансибла - они в волте. есть секреты для людей - они где-то еще. что у этой тулзы с версионированием не знаю. но подобных инструментов до фига.

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

Maksim
20.03.2017
13:16:35
Vladimir
20.03.2017
13:23:00
а зачем ансибл? есть секреты для ансибла - они в волте. есть секреты для людей - они где-то еще. что у этой тулзы с версионированием не знаю. но подобных инструментов до фига.
Я хотел использовать один инструмент для хранения секретов как для ansible, так и для других вещей, но, похоже, ansible-vault неудобен для этого.

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

Без необходимости брать откуда-то ключи, секреты для Kubernetes и т.п.

Google
Dmitry
20.03.2017
13:28:43
https://www.vaultproject.io/docs/configuration/

вот и ходи себе через апи откуда хошь

Paul
20.03.2017
13:34:05
вот и ходи себе через апи откуда хошь
есть модуль для ansible (точнее - плагин), даже api знать не обязательно

Dmitry
20.03.2017
13:34:19
просто он хочет же еще "для других вещей"

Paul
20.03.2017
13:35:22
просто он хочет же еще "для других вещей"
немного не понял – для каких? vault - очень узкоспецифичная вещь. Пароли, ключи, CA.

Dmitry
20.03.2017
13:35:40
"Я хотел использовать один инструмент для хранения секретов как для ansible, так и для других вещей,"

Vladimir
20.03.2017
13:43:42
немного не понял – для каких? vault - очень узкоспецифичная вещь. Пароли, ключи, CA.
Давайте начнём с приватного ключа ssh для доступа к виртуалкам. Я хочу 1) с помощью этого ключа ходить деплоить через Ansible на те виртуалки что-то 2) иметь возможность самостоятельно залогиниться на виртуалки с помощью этого ключа.

Как адекватно решить первую задачу? Можно ли ансибловскому ssh скормить приватный ключ, который находится в vault?

Admin
ERROR: S client not available

Vladimir
20.03.2017
13:48:01
Если использовать стороннее решение (вроде hashicorp vault), то я не очень понимаю зачем мне тогда использовать ansible-vault, когда я (судя по всему, я не пользовался hashicorp vault), могу положить секреты в yaml, который будет под "шифроваться" hashicorp vault, а для ansible быть видным через fuse как обычный файл.

Vladimir
20.03.2017
14:12:36
А не путаете ли вы паблик с прайватом?
Нет, я именно хочу private часть ключа хранить зашифрованным в git-репозитории.

Anatoly
20.03.2017
14:13:29
Потому что чтобы ходить на виртуалки достачно паблик ключа на authorized keys

Vladimir
20.03.2017
14:14:09
Я не хочу добавлять паблик ключи всех разработчиков на все виртуалки, и поддерживать их в актуальном состоянии.

Я хочу использовать отдельный выделенный ключ для доступа и хранить его в git-репозитории с конфигурацией.

Vladimir
20.03.2017
14:15:43
это вам к ssh-agent скорее
Как здесь поможет ssh-agent?

Albert
20.03.2017
14:15:49
jenkins

Google
Albert
20.03.2017
14:15:55
Мы так используем

Запускаем ансибл через него. А ключь в jenkins-е храним

Vladimir
20.03.2017
14:16:53
Запускаем ансибл через него. А ключь в jenkins-е храним
Мы хотим запускать ansible с машин разработчиков, не автоматизированно

Т.к. в ansible сейчас часть, которая не должна часто меняться.

Мы не используем Ansible для именно разработки/деплоя нашего продукта.

Albert
20.03.2017
14:17:38
Если вы будете расшифровывать ключь на машине разработчика, то и смысла нет никакого зашифровывать

Vladimir
20.03.2017
14:17:45
Мы им Kubernetes разворачиваем с помощью Kargo, обновления накатываем и т.п. ops вещи

Если вы будете расшифровывать ключь на машине разработчика, то и смысла нет никакого зашифровывать
Смысл есть —- доступ к git репозиторию не будет означать доступ ко всем секретам.

Vladimir
20.03.2017
14:19:42
Не вижу как git спасает от чего либо
git не спасает —- он используется как система контроля версий

Albert
20.03.2017
14:19:53
И при чем тут ключь ssh?

Vladimir
20.03.2017
14:20:06
Так

Я начинаю сомневаться в осмысленности задания вопросов здесь :)

Albert
20.03.2017
14:22:27
Девелопер клонирует репозиторий к себе на комп, затем "что то" (что вы и ищите я так понимаю), расшифровывает ключь у девелопера. В руки девелопера попадает совершенно открытый ключь. Смысл его шифровать тогда??

time
20.03.2017
14:22:50
чтобы кто-то, кто стянул репо, не получил ключ

Albert
20.03.2017
14:23:30
Ага.. Тогда пароль от шифрования вышлите всем девелоперам, и все

Vladimir
20.03.2017
14:23:35
Девелопер клонирует репозиторий к себе на комп, затем "что то" (что вы и ищите я так понимаю), расшифровывает ключь у девелопера. В руки девелопера попадает совершенно открытый ключь. Смысл его шифровать тогда??
Вы правильно поняли, что я делаю. Скрыть ключ от разработчика цели нет (даже наоборот), но не хочется хранить ключ в git репозитории в открытом виде

Ага.. Тогда пароль от шифрования вышлите всем девелоперам, и все
Да! Пароль от ansible-vault будет у всех разработчиков

Albert
20.03.2017
14:24:01
Так в чем проблема?

time
20.03.2017
14:24:11
алсо можно поставить пароль на сам ключ

Vladimir
20.03.2017
14:24:59
Так в чем проблема?
Как мне использовать ssh-ключ, хранимый в ansible-vault, для авторизации самого ansible на виртуалках?

Albert
20.03.2017
14:25:40
Виртуалки уже с правильным authorized-keys подымаются?

Vladimir
20.03.2017
14:26:29
Сейчас у меня в ansible.cfg указано [ssh_connection] ssh_args = -i ~/.ssh/some_deploy_key_rsa, я хочу вот этот ~/.ssh/some_deploy_key_rsa в ansible-vault положить

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