# Ansible 最佳实践指南 ## 1. 参数管理 ### 变量定义 1. **明确区分必填和可选参数** 2. **使用布尔开关控制功能** 3. **默认值设置要合理** 示例: ```yaml vars: # 必填参数 pool_url: "" # 可选参数 enable_cc: true # 默认开启某些功能 ``` ## 2. 模块使用 ### 推荐模块 - `ansible.builtin.set_fact`:动态构建参数 - `ansible.builtin.debug`:日志和调试 - `ansible.builtin.get_url`:文件下载 - `ansible.builtin.shell`:执行复杂命令 - `ansible.builtin.file`:文件管理 ## 3. 命令构建 ### 条件渲染技巧 1. 使用三元运算符动态生成命令 2. 根据布尔开关添加可选参数 ```yaml install_command: >- bash script.sh {{ '--optional-flag' if enable_feature else '' }} ``` ## 4. 安全与权限 ### 特权执行 - 始终使用 `become: yes` - 谨慎管理 `sudo` 权限 ## 5. 错误处理 ### 日志与调试 1. 使用 `register` 捕获命令输出 2. 通过 `debug` 模块记录执行过程 3. 考虑添加更详细的错误处理机制 ## 6. 性能与维护 ### 代码组织 - 保持 Playbook 模块化 - 减少重复代码 - 添加充分的注释说明