<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Ansible on</title><link>https://dalieff.link/tags/ansible/</link><description>Recent content in Ansible on</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><lastBuildDate>Sun, 15 Feb 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://dalieff.link/tags/ansible/index.xml" rel="self" type="application/rss+xml"/><item><title>Create Files &amp; Folders</title><link>https://dalieff.link/ansible/files_folders/</link><pubDate>Sun, 15 Feb 2026 00:00:00 +0000</pubDate><guid>https://dalieff.link/ansible/files_folders/</guid><description>ℹ️ Создание пустой папки (директории) Чтобы создать папку, мы указываем state: directory. Если нужно создать цепочку папок (например, /app/src/config), Ansible сам создаст все недостающие родительские папки. - name: Создаем папку для приложения file: path: /var/www/myapp state: directory owner: www-data group: www-data mode: &amp;#39;0755&amp;#39; # Права доступа (лучше писать в кавычках) ℹ️ Создание абсолютно пустого файла (аналог команды touch) Если файла нет, Ansible его создаст. Если он уже есть, модуль просто обновит время его модификации, не затирая содержимое.</description></item><item><title>Create Users &amp; Groups</title><link>https://dalieff.link/ansible/users_groups/</link><pubDate>Sun, 15 Feb 2026 00:00:00 +0000</pubDate><guid>https://dalieff.link/ansible/users_groups/</guid><description>ℹ️ Самый простой (один пользователь + одна группа) Сначала создаем группу, а затем пользователя, привязывая его к этой группе как к основной (group). - name: Создаем группу разработчиков group: name: developers state: present - name: Создаем пользователя и добавляем в основную группу user: name: devuser group: developers shell: /bin/bash state: present ℹ️ Добавление в дополнительные группы (например, в docker или sudo) Часто пользователя нужно оставить в его основной группе, но накинуть ему дополнительные права.</description></item><item><title>Handlers</title><link>https://dalieff.link/ansible/handlers/</link><pubDate>Sun, 15 Feb 2026 00:00:00 +0000</pubDate><guid>https://dalieff.link/ansible/handlers/</guid><description>ℹ️ Классический кейс (Один триггер — один хэндлер) Самый частый вариант: конфиг изменился -&amp;gt; хэндлер перезапустил сервис. Если конфиг не менялся, шаг с перезапуском просто пропускается. tasks: - name: Кейс 1 — Меняем конфиг Nginx copy: src: nginx.conf dest: /etc/nginx/nginx.conf notify: Перезапустить Nginx # Имя должно строго совпадать с именем хэндлера handlers: - name: Перезапустить Nginx systemd: name: nginx state: restarted ℹ️ Один триггер вызывает цепочку хэндлеров (Список) Если изменение одного файла требует совершить сразу несколько действий (например, сбросить кэш, а потом перезапустить сервис), в notify можно передать список.</description></item><item><title>Help</title><link>https://dalieff.link/ansible/ansible_help/</link><pubDate>Sun, 15 Feb 2026 00:00:00 +0000</pubDate><guid>https://dalieff.link/ansible/ansible_help/</guid><description>gather_facts: false отключает автоматический сбор системных данных о хостах. Ускорение работы: Ansible не тратит время на запуск модуля setup перед выполнением задач. Экономия ресурсов: Меньше трафика и нагрузки на целевые узлы. Отсутствие фактов: В процессе выполнения тебе не будут доступны переменные вроде &amp;gt; ansible_distribution, ansible_eth0 или ansible_memtotal_mb. Используй это, если твой плейбук выполняет простые команды, не зависящие от характеристик ОС, или если ты хочешь максимально сократить время выполнения сценария
ansible-doc -l community.</description></item><item><title>Install/Update Linux pakage</title><link>https://dalieff.link/ansible/install_update/</link><pubDate>Sun, 15 Feb 2026 00:00:00 +0000</pubDate><guid>https://dalieff.link/ansible/install_update/</guid><description>ℹ️ Установка одного пакета (Самый частый кейс) Параметр state: present проверяет, есть ли пакет. Если есть — ничего не делает, если нет — устанавливает - name: Установка веб-сервера Nginx apt: name: nginx state: present ℹ️ Установка конкретной версии пакета Важно, когда приложению нужна строго определенная версия, чтобы ничего не сломалось при обновлении. - name: Установка конкретной версии пакета apt: name: nginx=1.18.0-0ubuntu1 state: present ℹ️ Установка нескольких пакетов списком (Оптимальный способ) В современных версиях Ansible не нужно использовать loop для пакетов.</description></item><item><title>Systemd</title><link>https://dalieff.link/ansible/systemd/</link><pubDate>Sun, 15 Feb 2026 00:00:00 +0000</pubDate><guid>https://dalieff.link/ansible/systemd/</guid><description>ℹ️ Запуск и автозапуск сервиса - name: Кейс 1 — Запускаем сервис и включаем его в автозапуск systemd: name: nginx state: started enabled: yes ℹ️ Остановка и отключение автозапуска - name: Кейс 2 — Полностью тушим сервис и убираем из автозапуска systemd: name: nginx state: stopped enabled: no ℹ️ Перезапуск (Полный и мягкий) - name: Кейс 3.1 — Жесткий перезапуск (с остановкой процесса) systemd: name: nginx state: restarted - name: Кейс 3.</description></item></channel></rss>