Ansible: Difference between revisions

From Network Security Wiki
Content added Content deleted
No edit summary
Line 41: Line 41:


= Notebooks =
= Notebooks =
*Ansible Command line can be used to make small changes.
*Real Usage of Ansible is its scripting capabilities using - Playbooks.
Puppet => Module
Chef => Cookbook
*Use Playbooks to perform many actions on multiple machines.
*Playbooks are written in - YAML

;Playbooks have 3 sections:
#Target Section - Defines all Hosts on which this playbook will be executed.
#Variable Section - Defines variables which cab be used from the playbooks.
#Tasks Section - Lists all modules intended to run in order.

{{UC}}
{{UC}}



Revision as of 12:26, 6 February 2018



Installation

Adding Repository:

sudo apt-get update
sudo apt-get install software-properties-common
sudo apt-add-repository ppa:ansible/ansible

Installation:

sudo apt-get update
sudo apt-get install ansible

Prepare the Remote Host

Generate SSH Key on the Ansible Server:

ssh-keygen

Copy the keys to the Remote Server:

ssh-copy-id -i ~/.ssh/id_rsa.pub aman@10.100.8.103

Test the Connection using SSH Keys:

ssh aman@10.100.8.103

Configure Ansible

Edit Ansible Hosts File:

sudo nano /etc/ansible/hosts

Create a Host:

my_server ansible_ssh_host=10.100.8.103

Or Create a Group:

[my_web_servers]
host1 ansible_ssh_host=192.0.2.1
host2 ansible_ssh_host=192.0.2.2
host3 ansible_ssh_host=192.0.2.3

Execute Commands

ansible -m ping all
ansible -m shell -a 'free -m' host1

Notebooks

  • Ansible Command line can be used to make small changes.
  • Real Usage of Ansible is its scripting capabilities using - Playbooks.
 Puppet => Module
 Chef => Cookbook
  • Use Playbooks to perform many actions on multiple machines.
  • Playbooks are written in - YAML
Playbooks have 3 sections
  1. Target Section - Defines all Hosts on which this playbook will be executed.
  2. Variable Section - Defines variables which cab be used from the playbooks.
  3. Tasks Section - Lists all modules intended to run in order.
        This section is under construction.



References





{{#widget:DISQUS |id=networkm |uniqid=Ansible |url=https://aman.awiki.org/wiki/Ansible }}