Files
ansible-playbook/llmdoc/guides/ansible-best-practices.md
Wang Defa 167fad20eb 添加 Nezha Agent 管理功能和完整文档系统
- 新增 Nezha Agent client_secret 更新 playbook(两种实现方案)
- 建立三层文档架构:docs/(用户文档)、examples/(配置示例)、llmdoc/(技术文档)
- 添加项目主 README.md 和配置示例文件
- 初始化 .gitignore 保护敏感信息
2025-12-16 10:52:38 +08:00

59 lines
1.2 KiB
Markdown

# 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 模块化
- 减少重复代码
- 添加充分的注释说明