@pro_ansible

Страница 506 из 625
Ilya
04.07.2018
12:10:54
а этот плейбук в паблике есть ? Чтобы своё не придумывать.
есть. я вообще говоря обманул, вот моя статья. https://habr.com/post/322036/ вы на другую ссылались.

Vitaly
04.07.2018
12:11:32
Господа, а пользуется кто ansible для управления cisco?

Ilya
04.07.2018
12:12:30
keepalived кстати, после эксплуатации, тоже не советую использовать. сейчас регаю сервера в консуле и трафик отправляю через его сервис дискавери на живые хапрокси. а хапрокси уже кидает на мастера базы.

Vladimir
04.07.2018
12:16:11
Да мне кажется тут вопрос и не должно остаться что надо юзать консул всегда

Google
Gleb
04.07.2018
12:17:29
скорее он что то не смог

он там пг баунсер не советует случаем?

Vladimir
04.07.2018
12:17:56
Именно его и советует

Vasiliy
04.07.2018
12:18:51
Консул или что там в составе кубера(etcd вроде) - следующий шаг. И что теперь - ставить https://github.com/yandex/odyssey, которому всего неделя от роду ?)

Ilya
04.07.2018
12:19:00
Тут наоборот не советуют haproxy https://t.me/pgsql/82551
нормально все хапрокси отрабатывает, нет проблем. в случае фейловера надо просто закрывать соединения принудительно, у хапрокси есть эта опция.

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

однако я его с патрони не скрещивал, и как оно будет жить в проде не скажу.

Ilya
04.07.2018
12:34:24
А это разве их проект ? ОО
я наверное неясно выразился, имел в виду что хапрокси универсальная штука, а баунсер чисто под постгрес заточен. )

Vladimir
04.07.2018
12:34:50
А понял, спасибо :)

Lomakin
05.07.2018
00:01:03
Всем привет, подскажите есть фаил ipadr.txt.j2 — client server {{hostvars[item].ansible_default_ipv4.address}} {{item}} 1443 — в него мне надо подставить из инвентори ansible_host=10.0.0.1 для каждого из моих серверов и сложить их локально на каждый сервер /home/ipadr.txt server 10.0.0.1 1443

Vasiliy
05.07.2018
05:16:20
Везде одинаково или собрать все IP адреса ?

Google
Sergey
05.07.2018
06:35:01
Это выглядит как два отдельных таска. В первом - делегирование на локалхост и сбор фактов, во втором - раскладка шаблона, который использует полученный факт с адресами, по хостам.

Lomakin
05.07.2018
07:02:49
это таска - name: set client-configs template: src=~/ansible/playbook/templates/root/client-configs/ ipadr.conf.j2 dest=~/client-configs/ ipadr.conf мам фаил {% for item in groups['info-server'] %} remote {{ansible_host}} 443 {% endfor %}

ShadoWalkeR
05.07.2018
08:10:07
Господа, хотите творческий вопрос на тему шаблонов? У меня есть дефолтный шаблон, на основе которого я генерирую yml файлы на основе переданного имени. И я хотел бы для некоторых имен иметь возможность из второго шаблона дописать в результирующий файл (не перезаписать!) В модуле параметра позволяющего дописывать нет - как это можно реализовать?

А все - уже вроде нашел

Olga
05.07.2018
09:31:15
У меня такая проблема - есть много-много разных приложений, которые общаются между собой. Есть группа серверов на которые нужно эти приложения деплоить. Держать 15 плейбуков, каждый деплоит свой сервис, не вариант. Я пришла к такому решению: в переменных группы задавать куда что деплоится, а потом использовать delegate_to и run_once для каждой таски

Вот пример: https://gist.github.com/laserbat/f5995cb6ae6bccd103652259f32cd86e

Вопрос, есть ли более адекватный подход к решению моей проблемы?

Olga
05.07.2018
09:35:47
время задуматься о k8s
Я знаю. Но работаю в такой конторе что даже ansible - уже большое новшество. До меня всё ручками делалось...

Vladimir
05.07.2018
09:45:44
У меня такая проблема - есть много-много разных приложений, которые общаются между собой. Есть группа серверов на которые нужно эти приложения деплоить. Держать 15 плейбуков, каждый деплоит свой сервис, не вариант. Я пришла к такому решению: в переменных группы задавать куда что деплоится, а потом использовать delegate_to и run_once для каждой таски
Что-то такое я начинал делать для своего пет-проджекта. Но недавно пощупал тулзы от HashiCorp (начал с Terraform, Consul и Nomad), и решил уйти на них. А анзибл буду использовать для всяческого maintenance. Доеду до дома, гляну, как у меня там, в Ansible, было и тогда отвечу.

Lomakin
05.07.2018
10:30:05
?

Vladimir
05.07.2018
10:53:16
У меня такая проблема - есть много-много разных приложений, которые общаются между собой. Есть группа серверов на которые нужно эти приложения деплоить. Держать 15 плейбуков, каждый деплоит свой сервис, не вариант. Я пришла к такому решению: в переменных группы задавать куда что деплоится, а потом использовать delegate_to и run_once для каждой таски
Посмотрел, как я делал. Решение в принципе то, что в доках анзибла описано. Структура каталогов такая: 1) В корне лежат hosts с описанием хостов и групп, которые хосты составляют. Рядом лежат плейбуки. В каждом плейбуке указаны группы хостов (куда деплоить) и роли (что именно деплоить) 2) В roles/role_name/tasks/ лежат таски (что именно делать). В roles/role_name/templates/ , соотв., лежат темплейты для генерации конфигов конкретных приложений. 3) В /group_vars/ лежат переменные, которые в тасках соотв ролей будут использоваться. Вообще всё устроено примерно так, как описано в доках: https://docs.ansible.com/ansible/latest/user_guide/playbooks_best_practices.html#content-organization

Но вообще да, анзибл тут немного неподходящий инструмент. Важное отличие Ansible от Nomad/k8s, в том, что у анзибла нет scheduler'а, который умеет самостоятельно планировать на каком хосте какие приложения должны работать. У анзибла это придётся строго задавать, привязывая деплой конкретного приложения на конкретный хост.

Nklya
05.07.2018
10:57:02
анзибл

что ж не ансамбль сразу?

Vasiliy
05.07.2018
13:19:21
Может кто подсказать - почему не раскрывается следующая конструкция: - name: "Build hosts file" lineinfile: dest=/etc/hosts regexp='.*{{ item }}$' line="{{ hostvars[item].ansible_default_ipv4.address }} {{item}}" state=present when: hostvars[item].ansible_default_ipv4.address is defined with_items: groups['all'] Ошибка: The error was: error while evaluating conditional (hostvars[item].ansible_default_ipv4.address is defined): u\"hostvars['groups['all']']\" is undefined Вернее даже не так. Причина понятна - он подставил groups['all'] как строку. А как в таске раскрыть список всех хостов ?

Salem
05.07.2018
13:21:39
“{{ groups[‘all’] }}”? могу врать

Google
Vasiliy
05.07.2018
13:47:12
Нет, так на синтаксис жалуется.

Lomakin
05.07.2018
13:48:18
А есть у кого нибудь конструкция: файы на хостах в группе info-server находятся в дирректории /root/config/ipadr.txt их надо загрузить в ansible и разложить по директориям пример: /root/config/server-1/ipadr.txt /root/config/server-2/ipadr.txt /root/config/server-3/ipadr.txt

имена серверов надо взять из hosts.ini

Lomakin
05.07.2018
14:39:08
dynamic inventory?
Нет стаическое

Мне репорты эти надо себе на комп загружать

Stas
05.07.2018
14:58:59
посоны

можно ли объявить environment для всего playbookа

длинная портянка и для каждой таски её добавлять выглядит убого

Ilya
05.07.2018
15:00:30
или я чего не понял?

Stas
05.07.2018
15:00:55
переменные объявлять я умею

Stas
05.07.2018
15:01:07
environment variables

Ilya
05.07.2018
15:02:35
- hosts: blabla vars: foo: '{{ lookup('env','ENV_VAR') }}'

так чтоли?

или опять не тот environment? )

Stas
05.07.2018
15:02:52
без лукапов

но уже тот

https://docs.ansible.com/ansible/2.5/user_guide/playbooks_environment.html

Ilya
05.07.2018
15:04:23
You can also use it at a play level

Google
Ilya
05.07.2018
15:05:04
кстати ни разу не юзал это, поэтому и не понял о чем речь

Stas
05.07.2018
15:08:01
вот в том то и дело что не сработало

GithubReleases
05.07.2018
19:02:08
ansible/ansible was tagged: v2.5.6 Link: https://github.com/ansible/ansible/releases/tag/v2.5.6 Release notes: New release v2.5.6

ansible/ansible was tagged: v2.6.1 Link: https://github.com/ansible/ansible/releases/tag/v2.6.1 Release notes: New release v2.6.1

Admin
ERROR: S client not available

Dhinil
06.07.2018
03:06:40
Hi is there ansible module for suse firewall

Maksim
06.07.2018
06:31:25
Vladimir
06.07.2018
06:37:59
Maksim
06.07.2018
06:48:14
No different between iptables and firewalld, both use netfilter

Dmitry
06.07.2018
06:54:44
Firewalld использует d-bus в этом и есть разница

Div
06.07.2018
07:28:35
Hi is there ansible module for suse firewall
firewalld - Manage arbitrary ports/services with firewalld

как хочецца написать про забаненых в гугле...

Vladimir
06.07.2018
08:31:50
А давно веб версию гелакси поменяли ?Оо Чет сейчас зашел и не узанл

*не узнал

Vadim
06.07.2018
08:39:32
на этой неделе вроде

Stas
06.07.2018
09:45:38
ребят можно ли как нибудь закостылить

сейчас есть таск, который в цикле вызывает модуль shell

можно ли параллельно 4 шелла вызвать?

все это на одном хосте

Div
06.07.2018
09:54:35
параллельно или по очереди?

Google
Stas
06.07.2018
09:57:44
параллельно

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

Maksim
06.07.2018
10:42:39
ты мне скажи как ты в линуксе их паралельно запустил бы

я предпологаяю что какая нибудь магия вроде nohup script.sh

Alexander
06.07.2018
10:44:24
можно ли параллельно 4 шелла вызвать?
for i in $(seq 4); do bash -c 'some command' &; done

Maksim
06.07.2018
10:44:58
ну это не паралельно будет на самом деле

просто не дожидаясь их окончания

https://stackoverflow.com/questions/39347379/ansible-run-command-on-remote-host-in-background

Vladimir
06.07.2018
10:47:11
Господа, а кто как решал проблему удаления старых ядер для rpm based систем ? Centos\RHEL etc, через shell\command ?

Maksim
06.07.2018
10:48:50
что-то типа yum autoremove

Vladimir
06.07.2018
10:49:02
Он не удалит же ну :)

Если бы все так просто было бы, я бы не писал сюда

Это только в деб работает

Maksim
06.07.2018
10:49:50
https://www.tecmint.com/delete-old-kernels-in-centos-rhel-and-fedora/

magic

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