Files
ansible/async.md

40 lines
911 B
Markdown

## Async
Run tasks asynchronously to avoid blocking:
### Key Parameters
- `async`: Maximum number of seconds to wait for the task to complete
- `poll`: Number of seconds to wait between checks (0 means no polling)
### Example Playbook
```yaml
- name: Restart service asynchronously
service:
name: apache2
state: restarted
async: 10
poll: 0
# Check async task status:
# ansible-playbook site.yml --check
```
### Best Practices
1. Use async for long-running tasks (e.g., backups, migrations)
2. Combine with `ignore_errors: yes` for resilient task execution
3. Monitor task status using `async_status` module
4. Use `--check` flag to simulate async operations
### Troubleshooting
- Check task output with `--verbosity=2`
- Use `async_status` to track task progress:
```yaml
- name: Check async task status
async_status:
jid: "{{ async_jid }}"
register: task_result
```