Ansible CLI cheatsheet
This page shows one or more examples of each Ansible command line utility with some common flags added and a link to the full documentation for the command. This page offers a quick reminder of some common use cases only - it may be out of date or incomplete or both. For canonical documentation, follow the links to the CLI pages.
ansible-playbook
ansible-playbook -i /path/to/my_inventory_file -u my_connection_user -k -f 3 -T 30 -t my_tag -M /path/to/my_modules -b -K my_playbook.yml
Loads my_playbook.yml from the current working directory and:
-i- usesmy_inventory_filein the path provided forinventory <intro_inventory>to match thepattern <intro_patterns>.-u- connectsover SSH <connections>asmy_connection_user.-k- asks for password which is then provided to SSH authentication.-f- allocates 3forks <playbooks_strategies>.-T- sets a 30-second timeout.-t- runs only tasks marked with thetag <tags>my_tag.-M- loadslocal modules <developing_locally>from/path/to/my/modules.-b- executes with elevated privileges (usesbecome <become>).-K- prompts the user for the become password.
See ansible-playbook for detailed documentation.
ansible-galaxy
Installing collections
- Install a single collection:
ansible-galaxy collection install mynamespace.mycollection
Downloads mynamespace.mycollection from the configured Galaxy server (galaxy.ansible.com by default).
- Install a list of collections:
ansible-galaxy collection install -r requirements.yml
Downloads the list of collections specified in the requirements.yml file.
- List all installed collections:
ansible-galaxy collection list
Installing roles
- Install a role named `example.role`:
ansible-galaxy role install example.role
# SNIPPED_OUTPUT
- extracting example.role to /home/user/.ansible/roles/example.role
- example.role was installed successfully
- List all installed roles:
ansible-galaxy role list
See ansible-galaxy for detailed documentation.
ansible
Running ad-hoc commands
- Install a package
ansible localhost -m ansible.builtin.apt -a "name=apache2 state=present" -b -K
Runs ansible localhost- on your local system. - name=apache2 state=present - installs the apache2 package on a Debian-based system. - -b - uses become <become> to execute with elevated privileges. - -m - specifies a module name. - -K - prompts for the privilege escalation password.
localhost | SUCCESS => {
"cache_update_time": 1709959287,
"cache_updated": false,
"changed": false
#...
ansible-doc
- Show plugin names and their source files:
ansible-doc -F
#...
- Show available plugins:
ansible-doc -t module -l
#...
谢谢你的反馈!