<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://dokuwiki.webmastermsk.ru/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://dokuwiki.webmastermsk.ru/feed.php">
        <title> linux:ansible</title>
        <description></description>
        <link>https://dokuwiki.webmastermsk.ru/</link>
        <image rdf:resource="https://dokuwiki.webmastermsk.ru/lib/tpl/dokuwiki/images/favicon.ico" />
       <dc:date>2026-08-12T15:27:31+0000</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:ad_hoc&amp;rev=1700726894&amp;do=diff"/>
                <rdf:li rdf:resource="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:ansible-lint&amp;rev=1701377116&amp;do=diff"/>
                <rdf:li rdf:resource="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:ansible_galaxy&amp;rev=1703430635&amp;do=diff"/>
                <rdf:li rdf:resource="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:async&amp;rev=1701343324&amp;do=diff"/>
                <rdf:li rdf:resource="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:blocks&amp;rev=1701116371&amp;do=diff"/>
                <rdf:li rdf:resource="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:changed_when_and_failed_when&amp;rev=1703621319&amp;do=diff"/>
                <rdf:li rdf:resource="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:debug&amp;rev=1700771648&amp;do=diff"/>
                <rdf:li rdf:resource="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:error&amp;rev=1701115997&amp;do=diff"/>
                <rdf:li rdf:resource="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:filters&amp;rev=1703942755&amp;do=diff"/>
                <rdf:li rdf:resource="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:include&amp;rev=1703791096&amp;do=diff"/>
                <rdf:li rdf:resource="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:install&amp;rev=1700668756&amp;do=diff"/>
                <rdf:li rdf:resource="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:install_docker&amp;rev=1701377938&amp;do=diff"/>
                <rdf:li rdf:resource="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:inventory&amp;rev=1700684196&amp;do=diff"/>
                <rdf:li rdf:resource="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:lookups&amp;rev=1703940991&amp;do=diff"/>
                <rdf:li rdf:resource="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:loops&amp;rev=1703792293&amp;do=diff"/>
                <rdf:li rdf:resource="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:module&amp;rev=1700685779&amp;do=diff"/>
                <rdf:li rdf:resource="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:playbooks&amp;rev=1700755437&amp;do=diff"/>
                <rdf:li rdf:resource="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:roles&amp;rev=1703350947&amp;do=diff"/>
                <rdf:li rdf:resource="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:tags&amp;rev=1703435452&amp;do=diff"/>
                <rdf:li rdf:resource="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:vars&amp;rev=1700755533&amp;do=diff"/>
                <rdf:li rdf:resource="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:vault&amp;rev=1704024491&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://dokuwiki.webmastermsk.ru/lib/tpl/dokuwiki/images/favicon.ico">
        <title></title>
        <link>https://dokuwiki.webmastermsk.ru/</link>
        <url>https://dokuwiki.webmastermsk.ru/lib/tpl/dokuwiki/images/favicon.ico</url>
    </image>
    <item rdf:about="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:ad_hoc&amp;rev=1700726894&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-23T08:08:14+0000</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux:ansible:ad_hoc</title>
        <link>https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:ad_hoc&amp;rev=1700726894&amp;do=diff</link>
        <description>Ad Hoc команды

C помощью Ad-hoc команд — мы можем запускать различные действия из командной строки. Это самый простой и быстрый способ использования Ansible.</description>
    </item>
    <item rdf:about="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:ansible-lint&amp;rev=1701377116&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-30T20:45:16+0000</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux:ansible:ansible-lint</title>
        <link>https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:ansible-lint&amp;rev=1701377116&amp;do=diff</link>
        <description>ansible-lint

Установка:


sudo apt update
sudo apt -y install ansible-lint


Удаление:


sudo apt-get remove ansible-lint
sudo apt-get -y autoremove ansible-lint


Использование:



$ ansible-lint config.yaml
[201] Trailing whitespace
config.yaml:36
             deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] 

[201] Trailing whitespace
config.yaml:37
             https://download.docker.com/linux/ubuntu</description>
    </item>
    <item rdf:about="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:ansible_galaxy&amp;rev=1703430635&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-24T15:10:35+0000</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux:ansible:ansible_galaxy</title>
        <link>https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:ansible_galaxy&amp;rev=1703430635&amp;do=diff</link>
        <description>Ansible Galaxy

сли вы захотите использовать роль, написанную кем-то другим, или просто посмотреть, как кто-то решил похожую задачу, вам поможет Ansible Galaxy. Это хранилище ролей Ansible с открытым исходным кодом, пополняемое членами сообщества Ansible. Сами роли хранятся на GitHub.</description>
    </item>
    <item rdf:about="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:async&amp;rev=1701343324&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-30T11:22:04+0000</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux:ansible:async</title>
        <link>https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:async&amp;rev=1701343324&amp;do=diff</link>
        <description>Асинхронность в Ansible

В Ansible есть понятие Async Actions. Ansible устанавливает подключение к целевым серверам через SSH. Это означает, что соединения SSH остаются активными на протяжении всего выполнения таска в плейбуке. Иногда нам может понадобиться выполнить длительный таск или процесс, который превышает тайм-аут SSH.…</description>
    </item>
    <item rdf:about="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:blocks&amp;rev=1701116371&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-27T20:19:31+0000</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux:ansible:blocks</title>
        <link>https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:blocks&amp;rev=1701116371&amp;do=diff</link>
        <description>Объединение задач в блоки.

Это позволит установить общие свойства и условие для нескольких задач. Такая форма записи уменьшит количиство строк и упростит восприятие.</description>
    </item>
    <item rdf:about="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:changed_when_and_failed_when&amp;rev=1703621319&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-26T20:08:39+0000</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux:ansible:changed_when_and_failed_when</title>
        <link>https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:changed_when_and_failed_when&amp;rev=1703621319&amp;do=diff</link>
        <description>Ansible changed_when and failed_when examples

В этом посте мы увидим, как использовать условные операторы Ansible, такие как when, changed_when, failed_when, а также где их правильно использовать и как это работает. С помощью этих условных модулей Ansible предоставляет нам возможность определить, когда Ansible должен запускать определенную задачу или считать выполненную задачу успешной или неудачной.…</description>
    </item>
    <item rdf:about="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:debug&amp;rev=1700771648&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-23T20:34:08+0000</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux:ansible:debug</title>
        <link>https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:debug&amp;rev=1700771648&amp;do=diff</link>
        <description>Отладка в ansible

Самое очевидное что приходит на ум это использование вспомогательного отладочного вывода. Тут нам на помощь приходит встроенный модуль debug. Все просто как 3 копейки - дебаг позволяет вывести сообщение или значение переменной.</description>
    </item>
    <item rdf:about="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:error&amp;rev=1701115997&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-27T20:13:17+0000</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux:ansible:error</title>
        <link>https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:error&amp;rev=1701115997&amp;do=diff</link>
        <description>Действия в случае ошибки.

Рассмотрим 2 варианта:

	*  Мы, в любом случае, хотим выполнить чать задачь, даже если сценарий прекратит работу из-за ошибки.</description>
    </item>
    <item rdf:about="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:filters&amp;rev=1703942755&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-30T13:25:55+0000</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux:ansible:filters</title>
        <link>https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:filters&amp;rev=1703942755&amp;do=diff</link>
        <description>Фильтры Ansible

Используя Ansible в качестве инструмента автоматизации, часто приходится сталкиваться с задачей обработки и фильтрации структурированных данных. Как правило, это набор фактов, полученных с управляемых серверов, или ответ на запрос к внешним</description>
    </item>
    <item rdf:about="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:include&amp;rev=1703791096&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-28T19:18:16+0000</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux:ansible:include</title>
        <link>https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:include&amp;rev=1703791096&amp;do=diff</link>
        <description>Как делать include задач в Ansible

Вы можете использовать модуль include_tasks Ansible для импорта задач из других файлов. Существует ряд причин, по которым вам может потребоваться переместить задачи в отдельные файлы при использовании Ansible:</description>
    </item>
    <item rdf:about="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:install&amp;rev=1700668756&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-22T15:59:16+0000</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux:ansible:install</title>
        <link>https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:install&amp;rev=1700668756&amp;do=diff</link>
        <description>Установка Ansible на Linux Mint 20.

По умолчанию Ansible доступен в базовом репозитории Linux Mint. Теперь мы установим Ansible на Linux Mint 20, выполнив команду ниже:</description>
    </item>
    <item rdf:about="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:install_docker&amp;rev=1701377938&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-30T20:58:58+0000</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux:ansible:install_docker</title>
        <link>https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:install_docker&amp;rev=1701377938&amp;do=diff</link>
        <description>Установка Docker, готовое решение

запуск сборки


ansible-playbook -i demo-server config.yaml -K


структура проекта


📁 ansible-demo
 +---📁 demo-server
 |    +---demo
 \---config.yaml



inventory demo</description>
    </item>
    <item rdf:about="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:inventory&amp;rev=1700684196&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-22T20:16:36+0000</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux:ansible:inventory</title>
        <link>https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:inventory&amp;rev=1700684196&amp;do=diff</link>
        <description>Инвентарный файл

это то с чего надо начинать работу, по умолчанию хранится в /etc/ansible/hosts, Можно создать свой, и указать его при запуске с помощью команды-i myhosts.ini либо прописать путь к нему в конфигурационном файле inventory = ./myhosts.ini(о нем поговорим позднее).</description>
    </item>
    <item rdf:about="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:lookups&amp;rev=1703940991&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-30T12:56:31+0000</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux:ansible:lookups</title>
        <link>https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:lookups&amp;rev=1703940991&amp;do=diff</link>
        <description>Стратегии плейбуков и lookups в Ansible

Недавно проводил несколько интервью и заметил тенденцию, что некоторые кандидаты плавают не только в понятии асинхронности, но и в стратегиях и лукапах в Ansible, поэтому сегодня давайте поговорим про стратегии плейбуков в Ansible.</description>
    </item>
    <item rdf:about="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:loops&amp;rev=1703792293&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-28T19:38:13+0000</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux:ansible:loops</title>
        <link>https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:loops&amp;rev=1703792293&amp;do=diff</link>
        <description>Как использовать loops в Ansible

В этом сообщении в блоге мы поговорим о 'циклах Ansible'. Мы начнем с того, что такое 'циклы', используя простой повседневный пример, чтобы каждый мог понять. Затем мы объясним, почему мы используем циклы в Ansible и как они могут нам помочь. Мы рассмотрим самый базовый тип цикла, а затем рассмотрим несколько различных видов. Мы покажем, как эти циклы используются в реальных ситуациях. И, наконец, мы поделимся некоторыми распространенными ошибками, которых следу…</description>
    </item>
    <item rdf:about="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:module&amp;rev=1700685779&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-22T20:42:59+0000</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux:ansible:module</title>
        <link>https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:module&amp;rev=1700685779&amp;do=diff</link>
        <description>Модули ansible

&lt;https://docs.ansible.com/ansible/latest/collections/index_module.html&gt;

Это небольшие программы, каждый модуль выполняет конкретную задачу. Модули можно выполнять отдельно в ad-hoc командах, как мы это сделали выше, указав используемый модуль с помощью -m ios_command, затем передали этому модулю аргумент -a “commands=’sh ip arp ‘“, в нашем случае аргумент это команда которую надо выполнить на удаленном устройстве, есть так же аргументы которые влияют на поведение модулей. Модули…</description>
    </item>
    <item rdf:about="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:playbooks&amp;rev=1700755437&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-23T16:03:57+0000</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux:ansible:playbooks</title>
        <link>https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:playbooks&amp;rev=1700755437&amp;do=diff</link>
        <description>Playbooks

Это файлы в которых прописаны сценарии действий, которые нужно выполнить с какой, то группой хостов.

playbook состоит из:

	*  Play — набор задач которые нужно выполнить для группы хостов</description>
    </item>
    <item rdf:about="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:roles&amp;rev=1703350947&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-23T17:02:27+0000</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux:ansible:roles</title>
        <link>https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:roles&amp;rev=1703350947&amp;do=diff</link>
        <description>Создание роли

Чтобы Ansible смог найти и использовать роли, нужна специально разработанная структура каталогов. Создадим каталог с именем roles:</description>
    </item>
    <item rdf:about="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:tags&amp;rev=1703435452&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-24T16:30:52+0000</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux:ansible:tags</title>
        <link>https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:tags&amp;rev=1703435452&amp;do=diff</link>
        <description>Ansible - Используем тэги (tags)

Иногда бывает полезным использование тэгов в большом playbook. Тэги необходимы для того чтобы выполнить именно определённые</description>
    </item>
    <item rdf:about="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:vars&amp;rev=1700755533&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-11-23T16:05:33+0000</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux:ansible:vars</title>
        <link>https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:vars&amp;rev=1700755533&amp;do=diff</link>
        <description>Переменные в ansible

Приоритет переменных



Переменная в задаче


---
- name: user
  hosts: demo #наша группа серверов
  tasks:
    - name: Create user # название таска
      vars:
        user: werwolf2
      user: # название модуля
        name: &quot;{{ user }}&quot; # имя нового пользователя
        state: present # создать пользователя если его нет
      become: true # использовать sudo…</description>
    </item>
    <item rdf:about="https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:vault&amp;rev=1704024491&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2023-12-31T12:08:11+0000</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>linux:ansible:vault</title>
        <link>https://dokuwiki.webmastermsk.ru/doku.php?id=linux:ansible:vault&amp;rev=1704024491&amp;do=diff</link>
        <description>Ansible Vault

зашифровать существующий файл

Для существующих файлов используйте команду ansible-vault encrypt, чтобы установить пароль.


$ echo &quot;SecurePassword&quot; &gt; passwords.txt
$ ansible-vault encrypt passwords.txt
New Vault password: 
Confirm New Vault password: 
Encryption successful</description>
    </item>
</rdf:RDF>
