
Winnie
13.01.2017
11:44:12
спасибо

Alexey
13.01.2017
11:46:37

Winnie
13.01.2017
12:04:00
в докс можно подгядеть

Dmitriy
13.01.2017
14:35:07
у меня куплена, ноябрьская есть, 1.14

Google

Dmitriy
13.01.2017
14:35:17
могу скинуть

Павел
13.01.2017
14:35:34
А есть чатик по эластику?

Dmitriy
13.01.2017
14:39:02
https://telegram.me/elasticsearch_ru

jagga
13.01.2017
14:39:26
@bhavenger скинь плз

Павел
13.01.2017
14:41:51

Semyon
13.01.2017
15:47:59
Котаны, я туплю конски
есть вот такой вот таск
- name: configure InfluxDB
template:
src: influxdb.conf
dest: /etc/influxdb/influxdb.conf
notify:
- "restart service"
в handlers/main.yml написано следующее
---
- name: restart service
service:
name: influxdb
enabled: yes
state: restarted
на первом прогоне плейбука на чистой виртуалке хэндлер не вызывается
ни в какую вообще
при этом configure InfluxDB changed
ansible 2.2.0, если вдруг это важно

Yuri
13.01.2017
16:17:09

Google

Yuri
13.01.2017
16:18:07
Я, допустим, заметил, что если вместе стоят enabled и state - выполняется один из них. Вот, допустим, сейчас разворачивался - сервисы стартовали, но не включены в systemctl

Semyon
13.01.2017
16:21:13
короче, я дебил
разрбрался
хэндлеры же в конце плея выполняются, а я хотел чтобы в середине
Спасибо, котаны

Vlad
13.01.2017
16:59:55

Semyon
13.01.2017
17:00:05
дада
тупка напала, простите
Ничоси

solakkie
13.01.2017
17:37:24
О, Семен)

Sander
14.01.2017
10:49:07
в Ansible, можно ли как то в самом roles tasks в файле yml, делать какую-нибудь логику с j2
просто у меня идет:
links:
- mariadb
а для данного проекта я не использую bd вообще, поэтому вылезает ошибка.
может как-то при помощи if j2 можно проверить, чтоб он не использовал links в данном случаи вообще.
?

Павел
14.01.2017
13:58:00

Sander
14.01.2017
14:16:46
Проблема в ansible docker.
Не могу сделать docker login, приватного репозитория.
так как после установки docker, надо переподключиться, чтоб сбпросить сессию. Чтоб я смог сделать docker login за своего пользователя.
Я могу это сделать двумя командами, а хочется одной, bootstrap.yml которая настроит мне все то что мне нужно для работы с контейнерами.
---
Есть ли какая-нибудь возможность сделать это в один playbook?
?
?

Павел
14.01.2017
17:08:54


Sander
14.01.2017
17:09:10
vagrant тут не причем, 1 минуту
==============================
@linko22
Добавив пользователя "sander" в group docker, я не могу заставить "sander" использовать docker, пока висит текущая сессия, мне надо переподключиться чтоб сбросить сессию, чтоб я смог сделать за пользователя "sander" docker login.
Конечно я могу запускать через терминал все playbook команды раздельно, но хочется запустить просто один playbook команду: ansible-playbook bootstrap.yml
Вместо 2 или 3, так как этот playbook преднозначен только для настройки системы.
Все что мне нужно:
1. Чтоб вначале сделался centos-boostrap
2. ssh-reconnect/logout
3. gitlab
может есть и другие варианты, главное чтоб это можно было как-то сделать!
Как у меня это выглядит:
---
- hosts: "sajt.ru"
become: true
tasks:
- include: bootstrap/centos-bootstrap.yml
- include: bootstrap/gitlab.yml
?


Volodymyr
14.01.2017
23:41:23
- command: "pkill -u {{ my_user }} sshd"
sudo: no
when: add_group|changed
ignore_errors: True
?
https://github.com/ansible/ansible-modules-core/issues/921

Google

A
15.01.2017
00:10:37
https://superuser.com/questions/272061/reload-a-linux-users-group-assignments-without-logging-out
ага, не знал про newgrp, думал только через sg поменять можно
но вообще это не ансибль-специфичная проблема.

Farit
16.01.2017
13:24:12
Как можно получить ансиблом все алиасы хоста и записать один из них в переменную?
hostname -a
myhost.mydomain myhost somehost

Lev
16.01.2017
13:26:16
ты можешь прочитать выхлоп этой команды и разделить по пробелу

Denis
16.01.2017
13:55:21
А ansible_hostname, ansible_fqdn, inventory_hostname чем не подходят?

Serg
16.01.2017
14:51:13
Подскажите, как можно такой кейс реализовать - у нас есть неизвестный список серверов в inventory. Как можно каждому серверу поменять пароль пользователя на рандомный для каждого сервера?

A
16.01.2017
14:58:48
сначала пройтись по всем хостам, сгенерировать пароль и положить всё в один файл вместе с именем хоста.
потом пройтись по всем хостам и через lookup ( https://docs.ansible.com/ansible/playbooks_lookups.html#the-csv-file-lookup ) поменять пароль на нужный
https://docs.ansible.com/ansible/faq.html#how-do-i-generate-crypted-passwords-for-the-user-module

Serg
16.01.2017
17:02:40


Sander
16.01.2017
18:38:05
*Как с помощью ansible, сделать правильно deploy проекта (то что пришло мне в голову)?*
Если вкратце то:
1. Подготовка на локальной машине артефакт.
./ansible/roles/deploy/files/*
2. Отприть артефакт на PROD.
/srv/releases/
3. Поменять symlink.
Пример:
/srv/site1
/current -> releases/2016.12.22-11:00:00
/releases
/2016.12.22-11:00:00
/2016.11.22-11:00:00
/2016.10.22-11:00:00
/2016.09.22-11:00:00
========================================================
*Как такое можно реализовать на ansible, как это сделать правильно. Рассматриваю best practices!*
В голову пришло только, создать playbook deploy.yml, в котором:
---
- include: artefact.yml
- include: release.yml
artefact.yml:
---
- hosts: local
become: true
tasks:
...
release.yml:
---
- hosts: prod
become: true
tasks:
...
Вначале делает 1 часть на local где-он подготавливает артефакт, после делает 2, чтоб на PROD, он его просто развернул, не делая никаких лишних действий.
По сути эти два playbooks, можно выполнить по отдельности.
========================================================


Алексей
16.01.2017
18:39:24
*Как с помощью ansible, сделать правильно deploy проекта (то что пришло мне в голову)?*
Если вкратце то:
1. Подготовка на локальной машине артефакт.
./ansible/roles/deploy/files/*
2. Отприть артефакт на PROD.
/srv/releases/
3. Поменять symlink.
Пример:
/srv/site1
/current -> releases/2016.12.22-11:00:00
/releases
/2016.12.22-11:00:00
/2016.11.22-11:00:00
/2016.10.22-11:00:00
/2016.09.22-11:00:00
========================================================
*Как такое можно реализовать на ansible, как это сделать правильно. Рассматриваю best practices!*
В голову пришло только, создать playbook deploy.yml, в котором:
---
- include: artefact.yml
- include: release.yml
artefact.yml:
---
- hosts: local
become: true
tasks:
...
release.yml:
---
- hosts: prod
become: true
tasks:
...
Вначале делает 1 часть на local где-он подготавливает артефакт, после делает 2, чтоб на PROD, он его просто развернул, не делая никаких лишних действий.
По сути эти два playbooks, можно выполнить по отдельности.
========================================================
ansistrano, deploy_helper


Sander
16.01.2017
18:39:51
deploy_helper я знаю, но он не решает моей проблемы
хелпер отличный

Sander
16.01.2017
18:41:50
по примерам что они предоставляют, они делают git clone на PROD сервере, а я хочу это сделать на Deploy Server, чтоб на PROD, отправить только артефакт. На PROD вообще у меня git, не будет.

Lev
16.01.2017
18:48:02
а зачем с помощью ansible что-то публиковать?
(ansible – система управления конфигурацией)

Sander
16.01.2017
18:50:36
Возможно, но в этой системе можно и публиковать, не зря же хелперы они предоставляют.
Как по мне, она очень удобная и для публикования.

Lev
16.01.2017
18:51:21
похоже на костылятину

Alexey
16.01.2017
18:51:37

Lev
16.01.2017
18:51:53
(подбегают люди с ansistrano)

Sander
16.01.2017
18:52:25
для валидации чего? если ты про CI это отдельная тема.

Google

Lev
16.01.2017
18:53:35
почему бы не тестировать и публиковать одним софтом, а машины настраивать другим?

Alexey
16.01.2017
18:54:09

Sander
16.01.2017
18:55:47
?

Admin
ERROR: S client not available

Lev
16.01.2017
18:55:54
мне только дженкинс и стеш встречается, я бы попробовал гитлаб, если бы начинал :)
* бамбу

Sander
16.01.2017
18:56:26
gitlab я буду брать тоже, но пока что мне надо это сделать, чтоб запускалось вручную
это все ci в общем и репозитории

Semyon
16.01.2017
18:56:39

Sander
16.01.2017
18:56:44
вот вот
я тоже не понял (

Semyon
16.01.2017
18:56:51
дженкинс сам по себе ничего не деплоит
и стеш с гитлабом тоже
(я деплою ансиблом, если что)

Sander
16.01.2017
18:57:08
?

Lev
16.01.2017
18:57:42
я просто не понимаю, что вы деплоите, если для этого вам нужен менеджер конфигураций
это замена каким-то скриптам?

Semyon
16.01.2017
18:58:00
софт, внезапно
да

Lev
16.01.2017
18:58:36
м, а в джобах это нельзя описать?

Google

Semyon
16.01.2017
18:59:03
в каких джобах?

Lev
16.01.2017
18:59:36
джобы они же задачи сборки/публикации

Semyon
16.01.2017
19:00:15
ты какими-то общими словами говоришь, бро
у тебя есть задача, надо взять байты и правильно их разложить на другой машинке
потом в правильном порядке перезапустить что тебе там надо
и, желательно, сделать это предсказуемо и идемпотентно

Роман
16.01.2017
19:01:18
Как как?)

Semyon
16.01.2017
19:01:20
ну и вообще, хранить логику деплоя в CI это очень скверная идея
Это даже не матюк
https://ru.wikipedia.org/wiki/Идемпотентность
:)

Sander
16.01.2017
19:02:00
?

Lev
16.01.2017
19:03:02
ну мож вы софт не тот выбрали? ansible – это про управление конигурацией, или нет?

Semyon
16.01.2017
19:03:40
про неё
а чем принципиально управление конфигурацией от деплоя отличается?