@pro_ansible

Страница 593 из 625
Victor
04.10.2018
09:56:20
И почему боль с их организацией

Kirill
04.10.2018
09:56:42
хмм, а бэкапы это не host-specific files?

Victor
04.10.2018
09:57:14
бэкапы чего?

Kirill
04.10.2018
09:57:40
да чего хочешь, как разница чего, того же smtp server, certificates etc

Google
Kirill
04.10.2018
09:59:21
потом эти все бэкапы как ресторить если они host-specific?

Victor
04.10.2018
10:02:11
имхо host-specific конфигурация должна лежать в inventory, сертификат вообще проще новый поставить.

Kirill
04.10.2018
10:03:36
ну если вообще всегда ставить новые сертификаты, то к чему тогда бэкапы, ну да, ну да

Victor
04.10.2018
10:04:19
бекапить нужно дату, которая не является конфигурацией

Kirill
04.10.2018
10:05:04
какую дату если у тебя сотни k8s нод, с сертификатами, и если одна нода вылетает тебе надо максимально быстро сделать рестор, включая сертификаты

Victor
04.10.2018
10:07:58
Но зачем, если можно завести новую ноду?

Kirill
04.10.2018
10:15:31
потому что kubeletом надо обновлять все k8s workers если упал мастер, а в случае рестора не надо

Vadim
04.10.2018
10:15:34
хранить сертификаты для каждой ноды в ansible? Но зачем? Есть tls bootstrapping

Victor
04.10.2018
10:17:56
потому что kubeletом надо обновлять все k8s workers если упал мастер, а в случае рестора не надо
в 2к18м жить с одним мастером. Или я что-то не понимаю про мастера.

Sergey
04.10.2018
10:18:35
Victor
04.10.2018
10:19:08
кубер позволяет жить и без воркеров:)
Ну без воркеров так себе жизнь.

Sergey
04.10.2018
10:19:36
зато для тестов самое оно(если ресурсов немного) можно разрешить мастеру деплоить на себя

Google
Kirill
04.10.2018
10:20:33
ты удивишься но деплоев в мире с одним мастером пруд пруди

Victor
04.10.2018
10:22:12
в продакшене?

Kirill
04.10.2018
10:22:19
и мы не ограничиваемся одним kubernetes, при управлениями 10-20-30 DNS auth серверами мы делаем бэкапы DNSSEC DBs, и эти вещи нельзя просто взять и создать заново при ресторе ноды

в продакшене?
и в продакшене видел лично

Sergey
04.10.2018
10:25:18
для тестов миникуб?
миникуб корявая калька

Victor
04.10.2018
10:58:14
и мы не ограничиваемся одним kubernetes, при управлениями 10-20-30 DNS auth серверами мы делаем бэкапы DNSSEC DBs, и эти вещи нельзя просто взять и создать заново при ресторе ноды
Делать бекап вирутулки целиком? RTO должно быть меньше. Или у вас baremetall? И да, если мы ресторим ноду, то можно использовать fetch и обратно copy.

Andrei
04.10.2018
10:59:09
подскажите куда копать, чтобы понять, что за d,s,p - name: Set the l_env set_fact: l_env: "{% if jm_env=='Develop' %}d{% elif jm_env=='Staging'%}s{% else %}p{% endif %}" это то, что будет если true первый if и то, что будет после else?

Andrei
04.10.2018
11:01:27
Andrei
04.10.2018
11:03:23
>что за d,s,p Звучат как магические буквы
это пример на so https://stackoverflow.com/questions/42935820/ansible-set-fact-using-if-then-else-statement

Egor
04.10.2018
11:03:27
>что за d,s,p Звучат как магические буквы
Это просто переключатели. Переменные просто одной буквой назвали и это вводит людей в заблуждение.

Victor
04.10.2018
11:05:46
это пример на so https://stackoverflow.com/questions/42935820/ansible-set-fact-using-if-then-else-statement
Ну у вопрошателя написано не то что он хотел достичь, ему написали как правильно

Artur
04.10.2018
15:43:15
привет. с чем может быть проблема. есть хост в заббиксе. при выполнение плейбука есть такое - name: Add link to backup template local_action: module: zabbix_host state: present status: enabled server_url: https://{{ zabbix_server }} login_user: "{{ zabbix_server_login }}" login_password: "{{ zabbix_server_password }}" host_name: "{{ ansible_hostname }}" link_templates: - Template Backup become: no линк на шаблон создаётся, но при этом затираются все остальные линки

D
04.10.2018
15:52:26
Так работает этот модуль, нужно перечислять все линки

Artur
04.10.2018
15:56:32
This module allows you to create, modify and delete Zabbix host entries and associated group and template data говорят модифицировать может. или это такое странное понятие модификации у них ?

да и пример есть обновления

D
04.10.2018
16:04:09
Нет нормальное, а как ты этим модулем уберешь лишние шаблоны с хоста? Ну и в общем ансибл хранит стейт, т.е. к этому стейту ты приводишь хост

Google
Artur
04.10.2018
16:05:24
убирать то и не требуется. я хочу добавить линк к существующим

D
04.10.2018
16:10:49
я про гипотетический случай)

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

Terminator
04.10.2018
17:14:35
@longbow будет жить. Поприветствуем!

@kvaps будет жить. Поприветствуем!

kvaps
04.10.2018
18:12:36
Парни подскажите как можно извлечь n первых элементов из списка, есть метод какой?

где n - это переменная

Wom
04.10.2018
18:18:23
https://stackoverflow.com/questions/46553820/get-first-n-elements-of-a-list-in-jinja2-template-in-ansible

kvaps
04.10.2018
18:22:17
циклом можно, да

в идеале, хочется как-нибудь range из переменной подставить, типа my_list[range]

где range="0:3"

Wom
04.10.2018
18:23:51
ты же про jinja таки спрашиваешь?

kvaps
04.10.2018
18:25:31
ага

Wom
04.10.2018
18:26:26
ну так и делай фильтрами

kvaps
04.10.2018
18:26:53
каким например?

Wom
04.10.2018
18:31:51
my_list[range]

kvaps
04.10.2018
18:34:02
так range - это переменная, верент ошибку типа elment not found

пока сделал так, но чет это говно какое то :-/ - hosts: localhost tasks: - debug: var: myslice vars: my_list: - a - b - c - d - e elements: 3 myslice_str: "{% for i in range(elements | int) %}{{ my_list[i] }} {% endfor %}" myslice: "{{ (myslice_str | trim).split(\" \") }}"

kvaps
04.10.2018
18:58:32
не канает, 2 - переменная

Google
Admin
ERROR: S client not available

bebebe
04.10.2018
18:59:05
не канает, 2 - переменная
--- - hosts: localhost vars: foobar: - 1 - 2 - 3 - 42 n: 2 gather_facts: false tasks: - debug: var: foobar[0:n]

kvaps
04.10.2018
18:59:54
o__O

странно, почему у меня не сработало

bebebe спасибо, это было просто)

bebebe
04.10.2018
19:00:40
обычно в этом месте уточняют версию ansible

kvaps
04.10.2018
19:01:13
не, твой плейбук работает, эт я значит где-то накосячил

Wom
04.10.2018
19:01:41
о как таки правильно

kvaps
04.10.2018
19:05:49
моя ошибка была в неприведении типов slice indices must be integers or None or have an __index__ method

myarr[0:(variable | int)] так работает

bebebe
04.10.2018
19:10:22
да, есть такая неприятность

Andrei
05.10.2018
07:50:44
ребята, как правильно посчитать яблоки? - set_fact: fruit_box: "[ 'апельсин', 'яблоко1', 'яблоко2', 'банан', 'киви', 'яблоко3']" - debug: msg: "{{ item }}" with_items: "{{ fruit_box}}" - name: Get number of apples. set_fact: apple_counter: "{% if 'яблоко' in item %}{{ apple_counter = apple_counter + 1 }}{% endif %}" with_items: "{{ fruit_box }}" - name: "apple_num" debug: msg: "{{apple_counter}}" ошибка "template error while templating string: expected token 'end of print statement', got '='. String: {% if 'яблоко' in item %}{{ apple_counter = apple_counter + 1 }}{% endif %}"}

а, сделал)

vars: apple_counter: 0 tasks: - set_fact: fruit_box: "[ 'апельсин', 'яблоко1', 'яблоко2', 'банан', 'киви', 'яблоко3', 'яблоко4']" - name: debug err_lines2 debug: msg: "{{ item }}" with_items: "{{ fruit_box}}" - name: Get number of apples. set_fact: apple_counter: "{% if 'яблоко' in item %} {% set apple_counter = apple_counter|int + 1 %} {% endif %}{{apple_counter}}" with_items: "{{ fruit_box }}" - name: "apple_num" debug: msg: "{{apple_counter}}" сюда написал и мысль пришла

Vadim
05.10.2018
07:57:16
{{ fruit_box|select("equalto", "яблоко") | length }}

bebebe
05.10.2018
07:58:59
пришел лесник и всех разогнал (с)

Andrei
05.10.2018
08:02:00
Vadim
05.10.2018
08:02:42
чтите документацию

Matvey
05.10.2018
09:09:39
почему при хранении инвентори в отдельных директориях не подтягиваются групповые переменные из "корня"?

типа хосты в project/inventory/dev/hosts.ini, а переменные в project/group_vars/all/common.yml

Google
Алексей
05.10.2018
09:11:22
https://github.com/ansible/ansible/blob/stable-2.7/changelogs/CHANGELOG-v2.7.rst

Matvey
05.10.2018
09:26:11
што

я хочу определить некоторые "глобальные" групповые переменные, и не дублировать их в каждом inventory/{dev,staging,production}

Victor
05.10.2018
09:29:28
што
У тебя инвентори где?

Matvey
05.10.2018
09:29:49
project/inventory/dev/hosts.ini

Victor
05.10.2018
09:29:58
папка с инвентори

Matvey
05.10.2018
09:30:08
мамка

Victor
05.10.2018
09:30:13
директория

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