Difference between revisions of "ansible notes"
From thelinuxwiki
				
								
				
				
																
				
				
								
				| Line 10: | Line 10: | ||
| ===[https://docs.ansible.com/ansible/latest/vault_guide/vault.html#vault Ansible Vault]=== | ===[https://docs.ansible.com/ansible/latest/vault_guide/vault.html#vault Ansible Vault]=== | ||
| Find out how to encrypt sensitive content in your inventory such as passwords and keys. | Find out how to encrypt sensitive content in your inventory such as passwords and keys. | ||
| − | |||
| variable ansible_connection | variable ansible_connection | ||
| Line 26: | Line 25: | ||
|   docker       Run tasks in docker containers                                                                                                     |   docker       Run tasks in docker containers                                                                                                     | ||
|   ... |   ... | ||
| + | |||
| + | ==playbooks== | ||
| + | ===examples=== | ||
| + |  - name: My first play | ||
| + |   hosts: myhosts | ||
| + |   tasks: | ||
| + |    - name: Print wall message | ||
| + |      ansible.builtin.command: /usr/bin/wall hello | ||
| + | |||
| + | |||
| + |  - name: output test  | ||
| + |   hosts: myhosts | ||
| + |   tasks: | ||
| + |    - name: run uname thru awk  | ||
| + |      ansible.builtin.shell:  /usr/bin/uname -a | awk '{print $NF}' | ||
| + |      register: results | ||
| + |    - debug: | ||
| + |        var: results.stdout | ||
| + | |||
| + |  $ ansible-playbook -i inventory.ini shelltest.yaml | ||
| + |  PLAY [output test] ******************************************************************************************************************************** | ||
| + |  <br> | ||
| + |  TASK [run uname thru awk] ************************************************************************************************************************* | ||
| + |  changed: [10.0.0.15] | ||
| + |  <br> | ||
| + |  TASK [debug] ************************************************************************************************************************************** | ||
| + |  ok: [10.0.0.15] => { | ||
| + |     "results.stdout": "GNU/Linux" | ||
| + |  } | ||
| + |  <br> | ||
| + |  PLAY RECAP **************************************************************************************************************************************** | ||
| + |  10.0.0.15                  : ok=2    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0    | ||
| + | |||
| + | |||
| + | |||
| + | |||
| [[category:ansible]] | [[category:ansible]] | ||
Revision as of 01:59, 21 February 2024
| Contents | 
installation
pip install ansible
Adding variables to inventory
Connecting to hosts
Ansible Vault
Find out how to encrypt sensitive content in your inventory such as passwords and keys.
variable ansible_connection
listing connection types/plugins
$ ansible-doc -t connection -l kubectl Execute tasks in pods running on Kubernetes libvirt_lxc Run tasks in lxc containers via libvirt chroot Interact with local chroot psrp Run tasks over Microsoft PowerShell Remoting Protocol network_cli Use network_cli to run command on network appliances vmware_tools Execute tasks inside a VM via VMware Tools ssh connect via ssh client binary httpapi Use httpapi to run command on network appliances docker Run tasks in docker containers ...
playbooks
examples
- name: My first play
 hosts: myhosts
 tasks:
  - name: Print wall message
    ansible.builtin.command: /usr/bin/wall hello
- name: output test 
 hosts: myhosts
 tasks:
  - name: run uname thru awk 
    ansible.builtin.shell:  /usr/bin/uname -a | awk '{print $NF}'
    register: results
  - debug:
      var: results.stdout
$ ansible-playbook -i inventory.ini shelltest.yaml PLAY [output test] ********************************************************************************************************************************
TASK [run uname thru awk] ************************************************************************************************************************* changed: [10.0.0.15]
TASK [debug] ************************************************************************************************************************************** ok: [10.0.0.15] => { "results.stdout": "GNU/Linux" }
PLAY RECAP **************************************************************************************************************************************** 10.0.0.15 : ok=2 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
 
					