ansible

v2026.09.24

Automate configuration management and application deployment with Ansible. Use when tasks mention ansible-playbook, inventory files, Ansible roles, ad-hoc commands, ansible-galaxy, or agentless SSH automation.

GitHub
安装命令
npx skhub add greedychipmunk/ansible
Markdown
SKILL.md

Ansible

Intent Router

RequestReferenceLoad When
Install tool, SSH setup, ansible.cfgresources/install-and-setup.mdUser needs to install Ansible or configure control node
Inventory files, group_vars, host_varsresources/inventory-and-variables.mdUser needs inventory structure or variable precedence
Playbook authoring, roles, modulesresources/playbook-patterns.mdUser needs play structure, task patterns, or common modules
CLI commands, vault, galaxyresources/command-cookbook.mdUser needs ansible/ansible-playbook/ansible-vault/galaxy commands

Quick Start

# 1. Define your inventory
cat > inventory.ini <<'EOF'
[web]
web1.example.com
web2.example.com

[db]
db1.example.com
EOF

# 2. Test connectivity (ad-hoc ping)
ansible all -i inventory.ini -m ping

# 3. Run a playbook
ansible-playbook -i inventory.ini site.yml

# 4. Dry-run a playbook (check mode — no changes)
ansible-playbook -i inventory.ini site.yml --check --diff

Core Concepts

ConceptDescription
Control nodeMachine where Ansible runs (requires Python; no agent needed on targets)
Managed nodeTarget host reached via SSH (Linux) or WinRM (Windows)
InventoryList of managed nodes (INI, YAML, or dynamic script)
PlaybookYAML file defining ordered plays and tasks
RoleReusable directory structure (tasks, handlers, templates, vars)
ModuleIdempotent unit of work (copy, service, package, user, command…)
CollectionPackaged set of roles, modules, and plugins from Ansible Galaxy

Safety Guardrails

  • Always run with --check --diff first to preview changes without applying them.
  • Use --limit to target a subset of hosts before running against all inventory.
  • Avoid command and shell modules when an idempotent module exists.
  • Running as root (become: true) requires explicit approval — confirm privilege escalation scope.
  • Protect secrets with ansible-vault encrypt — never commit plaintext passwords.
# Install a role then dry-run the playbook to preview changes
ansible-galaxy role install geerlingguy.java
ansible-playbook -i inventory.ini site.yml --check --diff

Workflow

  1. Define or update inventory.
  2. Test connectivity: ansible all -m ping -i inventory.ini
  3. Write or update playbook.
  4. Dry-run: ansible-playbook site.yml -i inventory.ini --check --diff
  5. Run against a subset: ansible-playbook site.yml -i inventory.ini --limit web1.example.com
  6. Run against all: ansible-playbook site.yml -i inventory.ini

Related Skills

  • terraform — provision infrastructure; Ansible configures after provisioning
  • pulumi — IaC with code; Ansible handles post-provision configuration

References

发现
标签

此技能尚未发布标签。

版本
最新版本元数据

版本

v2026.09.24

发布时间

2026年9月24日

分类

未分类

许可证

MIT

源路径

ansible

默认分支

main

最新提交

8bacd2d

Tree SHA

9e372ba