Difference between revisions of "ansible notes"
From thelinuxwiki
(→parsing json) |
(→parsing json) |
||
Line 82: | Line 82: | ||
[[category:ansible]] | [[category:ansible]] | ||
+ | |||
+ | ===writing to files=== | ||
+ | [https://www.uni-koeln.de/~pbogusze/posts/Ansible_export_facts_to_simple_csv_file.html Ansible export facts to simple csv file] |
Revision as of 16:10, 7 May 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
network automation
platform modules
platform modules (Maintained by Ansible Network Team)
checkpoint modules (gaia / mgmt)
programming
conditionals
loops
output
parsing json
use community.general.json_query which uses jmespath
Selecting JSON data: JSON queries