NS 🇷🇺
- hosts: <those_mysteriuos_hosts> gather_facts: yes tasks: []
я ж нарписал, что хосты не учавствуют, с них только надо получить данные
Sergey
я ж нарписал, что хосты не учавствуют, с них только надо получить данные
Вообще-то это и есть получение данных без участия (модуль setup будет запущен)
NS 🇷🇺
если плейбук без фильтра стартануть по хостам он у вас пройдет по всем, что указано там
Sergey
если плейбук без фильтра стартануть по хостам он у вас пройдет по всем, что указано там
Перечитай внимательно мой пост, пожалйуста. Там ещё можно обратить внимание на значение параметра "hosts".
Sergey
"У нас" плейбуки ходят только по тем хостам, которые указаны в hosts.
Sergey
да и по ним же собираются факты
Но если в плейбуке написать не один плей, а, например, два - первый для сбора фактов с той группы хостов, и второй - для выполнения всего остального.....
George
Скажите, какие абстракции рвёт вот этот код? - delegate_to: localhost command: reset
George
Этого достаточно 😂
George
Ага. Так же как и transport: lxc рвёт локальную консоль. Приходится чинить.
George
Сарказм и духовная усталось от подпирания идиотскими багфиксами идиотских багов.
Никита
У кого есть книга Запускаем Ansible? Поделитесь в лс :)
George
Ты только что описал всю суть айти
Наша интеллектуальная собственность состоит из говна, палок и интеллектуальной собственности, причём опереться в этом списке можно только на палки?
Sergey
У кого есть книга Запускаем Ansible? Поделитесь в лс :)
А против поиска по чату гордость и предубеждения?
Sergey
Её сюда постили хзскока
Sergey
Хм, ты на русском, что ли, хочешь?
Никита
Хм, ты на русском, что ли, хочешь?
Конечно, не вижу смысла читать в оригинале, если есть перевод
Никита
нет
Никита
Спасибо!
Никита
🤦‍♂🤦‍♂🤦‍♂🤦‍♂
Какой сакральный смысл?
Никита
книжка хорошая кстати, стоит свой косарик
Никита
Я понимаю если в документацию лезть, то да, читаешь в оригинале, но зачем мне, для усвоения принципов и базовых понятий в оригинале читать? Гораздо легче понимать на родном языке.
Sergey
"....Но принтер, плоттер, файл, дискета - Увы, сих слов на русском нету..." (С) не я, читал где-то давно
Никита
мне стартануть никакие статьи и книги не помогли помогли реальные задачи с дедлайнами
Никита
Наверное, потому, что плейбук, инвентори и плей до сих пор на русском не имеют аналогов?
Не возводите абсолют, думаю термины написаны на оригинале.
Никита
что такое плей?
Sergey
Вот и приехали. Это то, из чего состоят плейбуки.
George
сценарий и файл реестра
Оу, щит. Именно поэтому я предпочитаю книги на английском
Anonymous
@Qwerty_Sewr 2019-08-19 INFO: main.run_gluster: run_gluster: args=['/usr/sbin/gluster', '--mode=script', 'peer', 'status'] 2019-08-19 INFO: main.run_gluster: run_gluster: args=['/usr/sbin/gluster', '--mode=script', 'volume', 'info'] 2019-08-19 INFO: main.run_gluster: run_gluster: args=['/usr/sbin/gluster', '--mode=script', 'peer', 'probe', 'gluster2.local'] 2019-08-19 INFO: main.run_gluster: run_gluster: args=['/usr/sbin/gluster', '--mode=script', 'volume', 'create', 'gv0', 'replica', '2', 'transport', 'tcp', 'gluster1.local:/data/gluster/gv0/', 'gluster2.local:/data/gluster/gv0/', 'force'] 2019-08-19 INFO: main.run_gluster: run_gluster: args=['/usr/sbin/gluster', '--mode=script', 'volume', 'info'] 2019-08-19 INFO: main.run_gluster: run_gluster: args=['/usr/sbin/gluster', '--mode=script', 'volume', 'start', 'gv0'] 2019-08-19 INFO: main.run_gluster: run_gluster: args=['/usr/sbin/gluster', '--mode=script', 'volume', 'add-brick', 'gv0', 'replica', '2', 'gluster1.local:/data/gluster/gv0/', 'gluster2.local:/data/gluster/gv0/', 'force']
Qwerty
Версия гластера?
Anonymous
нет
Anonymous
тоже самое
Anonymous
выше вывод, что он там запускает через шелл
Anonymous
# gluster --version glusterfs 4.1.9
Qwerty
выше вывод, что он там запускает через шелл
Честно говоря глаз уже сейчас замылен( . Покажи плиз в пастебин.
Anonymous
минутку
Anonymous
https://pastebin.com/Hyayp32A
Anonymous
пытается выполнить две команды
Anonymous
/usr/sbin/gluster --mode=script volume create gv0 replica 2 transport tcp gluster1.local:/data/gluster/gv0/ gluster2.local:/data/gluster/gv0/ force /usr/sbin/gluster --mode=script volume add-brick gv0 replica 2 gluster1.local:/data/gluster/gv0/ gluster2.local:/data/gluster/gv0/ force
Qwerty
ну, Вы правы. это баг модуля
4 и 7 строка. В 4 четвертой создаёт. А в 7 добавляет в уже созданный.
Anonymous
на 7 падает
Anonymous
если в шелле выполнять
Qwerty
на 7 падает
Да. Так как волюм создан уже из этих бриков.
Anonymous
угу
Anonymous
может быть это работает в 3 версии, но в 4той увы
Dmitry
Я понимаю если в документацию лезть, то да, читаешь в оригинале, но зачем мне, для усвоения принципов и базовых понятий в оригинале читать? Гораздо легче понимать на родном языке.
1. Ты читаешь не оригинальную книгу, а перевод. Она может содержать дополнительные неточности. 2. Зачастую бывает так, что переводят книгу переводчики без технического бэкграунда и переводят в том числе термины. Переводят так, что иногда нужно сидеть и пытаться мысленно осуществить обратный перевод, потому что переводчик выбрал нечто не самое понятное 3. Если тебе все равно предстоит постоянно читать документацию на английском, то почему бы заодно не практиковаться, читая на английском всю техническую литературу?
Anonymous
Попробую с 5 гластером.
вряд ли поможет
Anonymous
пока предлагаю закомментировать
Anonymous
# if new_bricks: # add_bricks(volume_name, new_bricks, stripes, replicas, force) # changed = True
Anonymous
/lib/python2.7/site-packages/ansible/modules/storage/glusterfs/gluster_volume.py
Qwerty
/lib/python2.7/site-packages/ansible/modules/storage/glusterfs/gluster_volume.py
Хмм. Завтра постараюсь попробовать.
Anonymous
или лучше даже скопировать его в library текущего проекта, переименовать в fix_gluster_volume.py
Anonymous
и вызывать по имени
Anonymous
- name: create GlusterFS Volume fix_gluster_volume: state: present
Dmitry
Толку школьникам объяснять ?
Я в первый раз. Больше не буду)
Владислав
Поделитесь экспертным мнением, такая конструкция вообще законна? (не осилил формирование json без модуля template) copy: dest: "/tmp/{{ item }}.json" content: "{{ lookup('template', 'targets.yml.j2') | from_yaml | to_nice_json }}" targets.yml.j2 --- {% for host in groups[item] %} - targets: - {{ hostvars[host]['ansible_host'] }}:{{ hostvars[host]['node_exporter_port'] }} labels: instance: {{ hostvars[host]['inventory_hostname_short'] }} fqdn: {{ hostvars[host]['inventory_hostname'] }} {% endfor %}
Alexander
Имеется роль В files лежит target.jar Как правильно написать src для copy в таком случае?
Alexander
Отлично, спасибо
Alexander
Подскажите, как правильно использовать loops в таком случае: tasks/main - name: Import via API uri: url: "{{grafana_urls}}/api/dashboards/db" method: POST headers: Accept: "application/json" Content-Type: "application/json" Authorization: "Bearer {{api_key}}" status_code: 200 body_format: json body: "{{ lookup('file','dashboard.json') }}" и vars/main grafana_urls: - http://grafana1.url - http://grafana2.url - http://grafana3.url api_keys: - eyJrIjoiRmxSZ0pLdDd - disduysydusydysdusd - djskdjksjdwuieiufdf
Alexander
Нужно чтобы первый элемент urls запускался с первым keys, второй со вторым и тд