@pro_ansible

Страница 218 из 625
Алексей
13.06.2017
14:13:49
Нужно --tags один раз но теги через запятую

lastsky
13.06.2017
14:13:55
Нельзя только дважды --tags
ну я вот так понял, а цитировал тебя по сути

Hackru
13.06.2017
14:13:56
ну так я так и делал или че

и до 2.5

Google
lastsky
13.06.2017
14:14:09
последняя опция в предложении - —skip-tags

Igor
13.06.2017
14:30:44
А как лучше организовать такую тему: Мне для разных серверов нужны разные значения в template.

допустим: для одного сервера 5 строк определённых, для другого - 7 строк определённых

Pavel
13.06.2017
14:34:09
может 2 разных темплейта и в хост-варс имя темлейта как параметр

Igor
13.06.2017
14:34:47
хм, вариант

Pavel
13.06.2017
14:36:10
я так делаю для веб-сервера: разные темплейты для http и https...

Igor
13.06.2017
14:37:14
спасибо

Pavel
13.06.2017
14:42:20
спасибо
пожалуйста... мы ж здесь для того и собрались чтобы помогать друг другу

Igor
13.06.2017
14:43:55
?

Роман
14.06.2017
07:46:59
Ребята, а как мне присвоить переменной то, что ввёл пользователь (то есть я) с клавиатуры? vars_prompt работает так, как надо, но не там, где надо. У меня несколько ролей и запрос переменных нужен только у некоторых. Пробовал pause и register, но пишет undefined в задаче, где используется шаблон.

lastsky
14.06.2017
07:51:52
ansible-playbook release.yml —extra-vars "version=1.23.45 other_variable=foo"

вот так, точнее

Serg
14.06.2017
09:09:44
Всем привет. Как указать в ансибле путь до приватных ключей для подключения к нодам?

Google
Zhenia
14.06.2017
09:12:19
ansible_ssh_private_key_file

гугли

Zhenia
14.06.2017
09:13:22
не, я так понял ему нужно для разных нод, разные ключи

Serg
14.06.2017
09:16:04
ansible_ssh_private_key_file Похоже на то. Для каждой ноды одинаковые ключи. Но их 2 , для рута и пользователя.

Ни кто не сталкивался с ошибкой dict_keys' object does not support indexing? Создаю instance в openstack модуль os_server

Sander
14.06.2017
13:34:23
Всем привет

как чистить кеш с помощью ansible быстрей? мой способ делает это очень медленно

- name: "Find cache files in folders" find: paths: "{{ cache_folders }}" patterns: "*" register: cache_files_result - name: "Remove cache" file: path: "{{ item.path }}" state: absent with_items: "{{ cache_files_result.files }}"

Pavel
14.06.2017
13:53:48
всем защищать cache_folders
если не ставить when: cache_folders is defened может получиться команда command: rm -rf "/*"

что не есть хорошо

Hackru
14.06.2017
13:54:14
defined же, ну куку

Pavel
14.06.2017
13:54:46
очипятка

Hackru
14.06.2017
13:54:54
два раза подряд?

Pavel
14.06.2017
13:55:05
копи-паст

нипридирайся

Google
Sander
14.06.2017
14:03:03
как-то не хотелось использовать command

конечно пробовал

command: rm -rf "{{ cache_folders }}/*" другого нормального способа нет?

Hackru
14.06.2017
14:56:03
модуль file чем не подходит?

state=absent recurse=yes

не?

Kuroi
14.06.2017
16:21:46
Привет! Играюсь тут с ufw, и выяснилось, что моя изначальная задумка кормить ufw не ip-адресами a inventory_hostname провалилась, ибо ufw не понимет хостнеймы (хотя iptables под капотом). В следующий заход я попробовал скормить ufw ansible_default_ipv4 из hostvars['groupname'], но и тут не удалось, ибо серевра могут быть в нескольких подсетях, в том числе и внешних, а нужен один конкретный адрес из конкретной подсети, а ansible_default_ipv4 отдает адрес с 1 интерфейса. Есть мысль написать луп с резолвом на каждый inventory_hostname, но это во первых не красиво, а во вторых будет долго. Может есть еще какие способы?

Алексей
14.06.2017
16:40:27
да .hostvars[inventory_hostname].ansible_all_ipv4_addresses

запили - name: Display ansible_connection type debug: var: ansible_connection verbosity: 8 tags: - always сохрани как файлик. используй как справочник

lastsky
14.06.2017
17:58:38
я видел таск который проверяет ip адрес на публичность но это такое программирование на конфигах что я даже не буду вспоминать, где.

для этой же задачи.

Pavel
14.06.2017
18:01:01
модуль file чем не подходит?
там ньюанс есть небольшой - рекурсив только для папки идет и {{ cache_folders }}/* не прокатит, только для {{ cache_folders }} и потом ее ({{ cache_folders }}) пересоздать надо будет

Admin
ERROR: S client not available

Anatoly
14.06.2017
18:24:54
Дернуть urlом ifcfg.me?

Алексей
14.06.2017
18:35:22
наличие внешнего ойпи не гарантирует наличие интернета

Anatoly
14.06.2017
18:46:20
ipify_facts? В таком случае

Sergey
14.06.2017
19:54:31
типа - взяли все адреса, взли из них нужную подсеть, взяли из адресов, принадлежащих этой подсети, последний элемент, взяли первый элемент получившегося списка

Google
Kuroi
14.06.2017
19:57:50
Ага, спасибо, попробую по всякому

lastsky
15.06.2017
06:35:44
- set_fact: public_ip_detected="{{ ansible_default_ipv4.address | ipaddr('private') is none }}" - name: do something <...> when: public_ip_detected

вчера был заёбан, сегодня вот вспомнил, нашел свой факап годичной давности.

Igor
15.06.2017
06:50:09
Да, забавный факап

Алексей
15.06.2017
08:32:36
lastsky
15.06.2017
08:34:54
кстати да, pip install netaddr

Sergey
15.06.2017
08:34:55
Требует модуль ipaddr на управляющем хосте
факт. но ведь у тебя ansible же в virtualenv установлен, правда? ? тогда всё просто - source /venv_path/bin activate pip install ipaddr

Sergey
15.06.2017
08:35:37
Лучшее.
доскер?

ну вот, не утерпел, придётся язык с мылом мыть

ну то есть руки

lastsky
15.06.2017
08:37:56
вот кстати поэтому я и выкинул данный кусок кода и поскорее забыл, а вопрос решился политически, переменными ext_ip и int_ip в hostvars.

(и в принципе много других проблем этими переменными решилось)

https://github.com/ansible/ansible/issues/23517

чем меньше нестабильных модулей, костылей и прочего, тем меньше багов. важно найти баланс ?

вот например такое я переделал на ext_ip и убрал костыль для вагранта. - name: restrict listening interface lineinfile: state=present dest=/etc/ssh/sshd_config regexp="^ListenAddress {{ ansible_default_ipv4.address }}" line="ListenAddress {{ ansible_default_ipv4.address }}" when: ansible_default_ipv4.address != "127.0.0.1" notify: reload sshd

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