Size: a a a

ansible — русскоговорящее сообщество

2021 May 19

БН

Бельмо На тазу... in ansible — русскоговорящее сообщество
Понял спасибо. Очень странное. Использую ансибл не по назначению😁
источник
2021 May 21

MY

Mikhail Yurenkov in ansible — русскоговорящее сообщество
Всем привет. Подскажите как в AWX 19.1.0  добавить коллекции из Ansible Galaxy?
источник
2021 May 22

SM

Stanislav Motriy in ansible — русскоговорящее сообщество
источник
2021 May 26

DD

Dixon Dmitry in ansible — русскоговорящее сообщество
Друзья, подскажите.
сформировал такой список машин:
   "vmstatus": [
       "NAME",
       "----",
       "2mca-app2",
       "3par-rzn1-lp1",
       "abh-dbp1-lt3",
       "abh-dbp5-lp1",
       "abh-dbp6-lp2",
       "acc-ctlapp1",
задача проверить по этому списку, есть ли заданные в инвентори машины в списке:
clientname:
 - kgb-dbs14-lt3
 - kgb-dbs15-lt3
 - kgs-dbs15-lt4

Пробую вот так:
 - set_fact:
     commvreachable: "{{ OK [item] }}"
   when:  vmstatus is match item
   loop: "{{ clientname }}"
   changed_when: vmstatus is match item      
 - debug:
     var: item
   with_items: commvreachable

результат не тот:
TASK [set_fact commvreachable={{ OK [item] }}] *********************************
skipping: [amz-cfa1-lp1] => (item=kgb-dbs14-lt3)
skipping: [amz-cfa1-lp1] => (item=kgb-dbs15-lt3)
skipping: [amz-cfa1-lp1] => (item=kgs-dbs15-lt4)
TASK [debug var=item] **********************************************************
ok: [amz-cfa1-lp1] => (item=commvreachable) => {
   "ansible_loop_var": "item",
   "item": "commvreachable"
}
источник

A

Asdqwert in ansible — русскоговорящее сообщество
Всем привет. Подскажите, как собрать информацию обо всех установленный на системе Ubuntu пакетах и записать её в отдельные файлы в json формате каждый с именем хоста из hosts?

Сейчас даже в полуручном режиме без всяких loops (потому что не умею) сделал так и не работает, т.к. видимо имени сервера нет в данных.
---
- hosts: lab1:lab2
 gather_facts: no
 tasks:
   - name: "Gather the package facts"
     package_facts:
       manager: auto

   - name: "Print the package facts"
     debug:
       var: "{{ ansible_facts['lab1']['ansible_facts.packages'] }}"
     register: lab1_data

   - name: "Print the package facts"
     debug:
       var: "{{ ansible_facts['lab2']['ansible_facts.packages'] }}"
     register: lab2_data

   - name: "Create file"
     local_action: copy content={{ lab1_data }} dest=lab1.json

   - name: "Create file"
     local_action: copy content={{ lab2_data }} dest=lab2.json
источник

A

Asdqwert in ansible — русскоговорящее сообщество
Когда делал вот так то в результирующем json файле нет имён серверов :(
---
- hosts: lab1:lab2
 gather_facts: no
 tasks:

   - name: "Gather the package facts"
     package_facts:
       manager: auto

   - name: "Print the package facts"
     debug:
       var: ansible_facts.packages
     register: data

   - name: "Create file"
     local_action: copy content={{ data }} dest=ansible_output
источник

A

Asdqwert in ansible — русскоговорящее сообщество
В принципе можно всё в один файл запихать, если будет поле с именем хоста по которому потом можно jq пройтись и вытащить данные
источник

A

Asdqwert in ansible — русскоговорящее сообщество
Вопрос как добавить имена хостов туда
источник

A

Asdqwert in ansible — русскоговорящее сообщество
В результате этого вижу в логе ci примерно такое:
ok: [lab1] => {
   "ansible_facts.packages": {
       "a11y-profile-manager-indicator": [
           {
               "arch": "amd64",
               "category": "misc",
               "name": "a11y-profile-manager-indicator",
               "origin": "Ubuntu",
               "source": "apt",
               "version": "0.1.10-0ubuntu3"
           }
       ],
....
ok: [lab2] => {
   "ansible_facts.packages": {
       "a11y-profile-manager-indicator": [
           {
               "arch": "amd64",
               "category": "misc",
               "name": "a11y-profile-manager-indicator",
               "origin": "Ubuntu",
               "source": "apt",
               "version": "0.1.10-0ubuntu3"
           }
       ],
...

TASK [Create file] *************************************************************
changed: [lab1]
changed: [lab2]
источник

ММ

Микола Мельникович... in ansible — русскоговорящее сообщество
М.Б.  {{ inventory_hostname }} как имя файла использовать?
источник

A

Asdqwert in ansible — русскоговорящее сообщество
Вот так он несколько файлов создаст?    
 - name: "Create file"
     local_action: copy content={{ data }} dest={{ inventory_hostname }}
источник

A

Asdqwert in ansible — русскоговорящее сообщество
или нужно какую-то итеративную магию добавлять? :)
источник

A

Asdqwert in ansible — русскоговорящее сообщество
Огонь, работает! Спасибо!
источник

VP

Vasya Pupkin in ansible — русскоговорящее сообщество
слабо съехать с ansible на Dhall?
источник

A

Asdqwert in ansible — русскоговорящее сообщество
С инструмента на язык?
источник

VP

Vasya Pupkin in ansible — русскоговорящее сообщество
ну, с таким языком интрумент можно значительно упростить, по-меому
источник

VP

Vasya Pupkin in ansible — русскоговорящее сообщество
собственно, что значит инструмент - насколько я вижу дохрена сущностей в ansible уже, вполне потянет на целый язык
источник

VP

Vasya Pupkin in ansible — русскоговорящее сообщество
ну и в Dhall какие-никакие гарантии заложены, а ansible как минное поле как я понял
источник
2021 May 27

БН

Бельмо На тазу... in ansible — русскоговорящее сообщество
подскажите пожалуйста как правильно рестартовать sshd.
Я меняю порт SSH и рестартую sshd но в момент когда сервис рестартуется соединение падает(из-за смены порта) и таска фейлиться.
есть нормальные способы вместо ignore_errors: yes
?
источник

DD

Dixon Dmitry in ansible — русскоговорящее сообщество
формировать локальный файлик с настройками подключений
cat ~/.ssh/config
Host gl.hq.bc
       Hostname 127.0.0.1
       User user1
       PreferredAuthentications publickey
       IdentityFile /home/user1/.ssh/gitlab_rsa
#        Port 8087
источник