MyTetra Share
Делитесь знаниями!
Основные модули Ansible
Время создания: 27.11.2019 12:25
Автор: xintrea
Раздел: Компьютер - Linux - Оркестрация - Ansible
Запись: xintrea/mytetra_syncro/master/base/1574846752isf5lctraf/text.html на raw.github.com

В поставку Ansible входит множество модулей. В этой статье описываются самые часто используемые модули Ansible. Приводятся примеры их использования в консоли и в playbook-ах.



Модуль ping


Модуль проверяет, доступны ли и настроены ли удаленные узлы для выполнения команд Ansible.


Обычно модуль ping вызывается напрямую, не через playbook. Делается это командой:



$ ansible -m ping all


Если ответ будет pong, то хост работает и настроен для приема команд Ansible:


mylinux | SUCCESS => {

   "changed": false,

   "ping": "pong"

}



Запись задачи ping в виде playbook-файла выглядит так:


---

- hosts: all

tasks:

- name: Ping all hosts

ping:



Модуль apt


Данный модуль используется для установки программного обеспечения через утилиту apt, если таковая установлена на целевой машине.


Установка одного пакета:



- name: Install vim package
apt: pkg=vim state=latest



Эта задача задаёт пакету vim состояние latest, что заставит менеджер пакетов установить этот пакет в случае, если он еще не установлен.


Установка нескольких пакетов через цикл:



- name: Install Packages
apt: name={{ item }} state=latest
with_items:

- vim
- git
- curl



Установка нескольких пакетов из предопределенного массива (списка) packages:



- hosts: all
sudo: true
vars:

packages: [ 'vim', 'git', 'curl' ]

tasks:

- name: Install Package
apt: name={{ item }} state=latest
with_items: packages



Командный модуль command

Модуль принимает имя команды и аргументы. Не работают с модулем command переменные оболочки или операции (<,>, |, &), поскольку обрабатываются оболочкой. Данный модуль может принимать следующие параметры:

  • chdir: смена директории исполнения команды
  • creates: создание файла
  • removes: удаление файла

Командный модуль raw

Его используют при невозможности использования других командных модулей. С помощью него осуществляется запуск удаленных команд серверам по SSH. Raw работает на серверах даже без установленного Python.

Командный модуль shell

Этот модуль отличается от command использованием /bin/sh по умолчанию для запуска команд. Возможно использование переменных оболочек и иных функций.

Файловый модуль file

Он меняет атрибуты файла. С помощью него возможно создание файла, создание или удаление директории и символической ссылки


Так же в этом разделе:
 
MyTetra Share v.0.59
Яндекс индекс цитирования