@pro_ansible

Страница 158 из 625
nikoinlove
27.02.2017
15:59:36
ну почему не было. и сейчас нету

Dmitry
27.02.2017
17:57:57
фидорас бы скорее 2all написал

так что присоединяюсь к предъяве за слаковую хипстоту :)

Dmitry
28.02.2017
06:45:20
а ничего не менялось в 2.2х из-за чего у меня перестало тянуть groups.* в этом месте - name: verify backend db response uri: url=http://{{item}}/db return_content=yes with_items: groups.webserver register: app_db

Google
Dmitry
28.02.2017
06:45:24
?

группы тянутся из инвентори который указан в ansible.cfg

Denis
28.02.2017
07:45:49
with_items: "{{groups.webserver}}"

Dmitry
28.02.2017
07:46:52
Блять, кадаж это кончится

Bogdan (SirEdvin)
28.02.2017
09:51:23
Вот ведь херня: https://github.com/ansible/ansible/issues/11536

Sander
28.02.2017
13:12:46
Всем привет, спросить про ansible хотел несколько вопросов, 1) у меня 100500 сайтов как мне в моем случаи организовать playbooks для каждого сайта? в ansible и логически наверное делать один playbook для сайта, example: ansible-playbook/websites/site.ee.yml 2) как и где лучше всего хранить ssh ключи и как подключать их к ansible проекту? так как для каждого сайта будет свой ключ. 3) В проекте с ansible, я храню ansible-vault шифрованные пароли, но проблема состоит в том что, я не хочу их хранить в git, но они находятся в одном проекте с ansible, как быть в моей ситуации? Обычно я их хранию в group_vars или host_vars.

Dmitrii
28.02.2017
13:17:21
3) У нас подключен репозиторий с ключами как git submodule

A
28.02.2017
13:17:43
1) а тебе точно нужен плейбук для каждого сайта? они совсем-совсем по разному деплоятся? 2) ключи ssh хранить на своей машине 3) не вижу никаких проблем хранить зашифрованные в гите

Sander
28.02.2017
13:37:12
@pzskc383 1) слишком много логики, всегда все может быть разное. Различия в подключаемых ролях, приходится всякие проверки через when писать, выглядеть начинает очень грязно... Но логики хватает, может быть разные db(mysql, mongo, ..), разные язки (go, nodejs, php). --- Сложно тут сказать как лучше сделать... 2) Хранить в ~/.ssh/ ? Но как я их буду подключать к ansible, когда он будет подключаться к какой-либо машине? По default, он будет сучать только в id_rsa. 3) Не знаю, у меня какая-то мысль дикая, папку group_vars, host_vars как-то отдельно? какие-нибудь еще мысли? -----------------------------------

A
28.02.2017
13:39:19
ансибль по дефолту юзает /usr/bin/ssh, а тот берет все ключи которые есть в ssh-agent или настройки ключа из .ssh/config

Sander
28.02.2017
13:40:03
надо тогда в настройки прописывать .ssh/config .. а в ansible можно как-то прописать какой ему ключ ловить

A
28.02.2017
13:40:03
т.е. Host fake-and-gay HostName 10.45.14.242 User centos IdentityFile ~/.ssh/kp1.pem

Google
A
28.02.2017
13:40:25
да, что-то было в инвентори касательно ключа, посмотри в доке

Sander
28.02.2017
13:40:34
и просто указывать тогда в intevnories ansible_host

ansible_host=fake-and-gay

а есть ли способ чтоб быстро создать файлик config, со всеми хостами? может через jinja2? чтоб каждый раз ручками это не делать

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

jagga
28.02.2017
13:55:26
bash

A
28.02.2017
14:22:55
хм, смотрите. есть ансибль, есть кучка машинок на рекспейсе. еще есть pyenv и тут начинается веселье. дело в том, что ansible у меня установлен в системном питоне, а ранзые пакеты для доступа к рекспейсу (pyrax, nova) в отдельном pyenv потому что они с чем-то системным конфликтовали, не помню. соответственно когда я переключаюсь в pyenv где они работают, у меня корёжит ансибль: ~/dev/hmm/ansible git:master % ansible -i inventory --list-hosts all ERROR! Attempted to execute "/home/maniac/dev/hmm/ansible/inventory/rax.py" as inventory script: Inventory script (/home/maniac/dev/hmm/ansible/inventory/rax.py) had an execution error: Traceback (most recent call last): File "/home/maniac/dev/hmm/ansible/inventory/rax.py", line 171, in <module> from ansible.constants import get_config, mk_boolean ImportError: No module named ansible.constants

я конечно плюнул и просто доставил ansible той же версии что и в системе в этот энвайронмент, но может у кого-то есть лучше решения в голове?

hamper ?
28.02.2017
15:59:26
А можно как-то в ансибле в group_vars генерить массивы на основе списка серверов? То есть например абстрактно у мне надо получить что-то типа такого serv_vars: - some text [ip1] - some text [ip2] где [ip1], [ip2] берутся из хостов в groups['all'].

Dmitrii
28.02.2017
16:01:18
Можно создавать группы налету

hamper ?
28.02.2017
16:06:56
Ну просто я вот эту роль заюзать захотел https://galaxy.ansible.com/mikegleasonjr/firewall/ и не придумал как через нее можно в группах серверов разрешить трафик с серверов этой же группы.

hamper ?
28.02.2017
16:07:09
Опять похоже свой костыль писать придется.

Dmitrii
28.02.2017
16:11:17
А кто вообще что то из галакси использует?

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

Hackru
28.02.2017
16:12:04
это так, но как тогда апдейты получать?

Dmitrii
28.02.2017
16:12:58
Апдейты чего?

Лучше тебя никто твою инфраструктуру не знает

Как правило тебе апдейты не нужны

Hackru
28.02.2017
16:13:46
ну типа ты скопипастил кусок роли

Google
Dmitrii
28.02.2017
16:13:59
и?

Hackru
28.02.2017
16:13:59
а в апстриме там за пол года накоммитили импрувментов

особенно когда там что-то серьезное типа postgres

руками утомишься перекидывать

Dmitrii
28.02.2017
16:14:39
Нахера они нужны если у меня старая роль раскатывает все отлично?

Если что то типа постгреса то тут тоже не все однозначно

Не видел еще ни одной роли которая бы "влилась" в текущую инфраструктуру как надо

hamper ?
28.02.2017
16:16:09
А кто вообще что то из галакси использует?
Ну вот jdauphant.nginx мне нравится.

elasticsearch я из гитхаба вообще из мастера вытащил потому что в гелакси нет коммитов которые мне подозрительно нужными показались.

aerospike тоже с гитхаба нашел вполне неплохую роль правда кое-что мне в ней сильно не нравится но переделывать времени нет

под clickhouse вот свое писал

Потому что не смог ничего нормального найти вроде.

Pavel
28.02.2017
16:20:30
Я использую галакси только со своими ролями, держу их в репах.

А сторонние роли и правда нафиг не нужны, там заимпрувят, а оно у тебя на серверах все потрет

Или поставит новую мажорную версию софта.

hamper ?
28.02.2017
16:23:25
А сторонние роли и правда нафиг не нужны, там заимпрувят, а оно у тебя на серверах все потрет
ну так импрувменты не проверяя не надо пуллить, но с готовыми ролями можно например сделать за 3 дня то, что со своими костылями будет писать недели полторы если там несколько десятков ролей используется

Pavel
28.02.2017
16:24:16
Ну хорошенько проревьюить роль занимает по времени не сильно меньше чем написать самому.

А еще как правило роль не полностью подходит и процентов 10 надо выпиливать

hamper ?
28.02.2017
16:24:51
Ну вот например официальная роль от эластика https://github.com/elastic/ansible-elasticsearch почему бы ее не использовать что бы поставить этот эластик?

Admin
ERROR: S client not available

Google
hamper ?
28.02.2017
16:25:40
Потом к части ролей привыкаешь и уже просто таскаешь их из одного проекта в другой

Pavel
28.02.2017
16:26:44
Сразу вопрос - как будет обновляться elasticsearch у такой роли?

Если надо новую версию поставить.

Сразу вопрос номер два - закрывает ли эта роль эластик торчащий наружу, через который обычно все лезут.

Надо все внимательно читать изучать что она делает.

hamper ?
28.02.2017
16:28:44
es_version: "5.1.2" меняешь на нужную просто, если надо понизить версию то еще es_allow_downgrades: true выставить, а закрывать наружу оно ничего и не должно, это для роли фаервола больше подходит, но по дефолту там es_api_host: "localhost" то есть наружу оно и не торчит

Часто достаточно посмотреть что в defaults лежит.

И ты же не сразу на продакшн новые роли выкатываешь? Сначала развернуть все на тестовых серваках и убедиться что все правильно и как надо а потом уже на продакшн.

Pavel
28.02.2017
16:31:38
Ну если оттуда повыкидывать плейбуки под другие платформы то и останется как раз роль которую можно написать за денек. Используя эту в качестве шаблона ?

hamper ?
28.02.2017
17:23:12
Кстати еще плюс готовых ролей, не надо под все платформы сочинять когда оно уже есть, никогда не знаешь куда придется разворачивать проект.

Hackru
28.02.2017
17:23:59
Ну блин

Как это так, не знаешь?

Denis 災 nobody
28.02.2017
17:27:51
а тут есть билд инженеры?

есть несколько вопросов..

Игорь
28.02.2017
17:29:30
а тут есть билд инженеры?
А что ты имеешь в виду?

Именно кто продовые релизы выпускает?

Denis 災 nobody
28.02.2017
17:31:25
что вообще включает в себя профессия, как это выглядит.. Например - есть у нас около 30 своих пакетов, надо сделать stable репу + обновить changelog где-либо, и тут непонятно, как этот лог собирать, как версии делать..

сейчас запилили фичу - собрали 1-5 пакетов (при необходимости обновили Requires), раскатали по нодам

такой CI

а надо более стабильные сборки

Google
Игорь
28.02.2017
17:32:42
Business impact на каждую строчку изменений и так далее

Denis 災 nobody
28.02.2017
17:34:17
и никакой автоматизации?

Игорь
28.02.2017
17:35:01
и никакой автоматизации?
Автоматизации разумеется

Denis 災 nobody
28.02.2017
17:35:37
как делаются заполнения релиз нот, версий, контроль того что данная сборка только под такие-то версии..

Игорь
28.02.2017
17:36:03
С таким не знаком (

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