推荐的目录布局
了解剧本、清单和变量文件的存放位置
推荐的目录布局 是 CoddyKit 上的免费 DevOps Bootcamp 课时。 这是第 1 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 DevOps Bootcamp 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 DevOps Bootcamp 课程共包含 4 节课。
为什么目录布局很重要
随着项目不断扩大,散落的文件很快就会变得混乱。标准目录布局可以让团队明确知道每项内容位于何处。📁
site.yml 入口
按照惯例,site.yml 是顶层执行手册,它将整个基础设施连接起来,并包含其余内容。
# site.yml
- import_playbook: webservers.yml
- import_playbook: dbservers.yml根目录中的 inventory
您的inventory文件(或目录)位于接近顶层的位置,因此旁边的执行手册始终知道要管理哪些主机。
myproject/
inventory
site.yml按功能拆分的执行手册
将大型执行流程拆分成专注于单一功能的文件,例如 webservers.yml 和 dbservers.yml,然后从 site.yml 将它们串联起来。
group_vars 目录
group_vars 目录存放适用于整个主机组的变量,Ansible 会按组名自动加载这些变量。
group_vars/
webservers.yml
dbservers.ymlhost_vars 目录
host_vars 目录对单台机器执行相同的功能,其中每个文件都以对应主机的名称命名。
host_vars/
web01.example.com.ymlroles 目录
可复用的自动化内容存放在 roles 目录下。当执行流程按名称引用角色时,Ansible 会首先在这里查找。
roles/
common/
nginx/自定义 library 和插件
library 文件夹存放自定义模块,module_utils 或 filter_plugins 存放共享辅助代码;Ansible 会自动发现这些内容。
将 ansible.cfg 放在附近
将 ansible.cfg 放在项目根目录。Ansible 会从当前目录读取配置,从而让设置保持在项目范围内。
# ansible.cfg
[defaults]
inventory = ./inventory
roles_path = ./roles一个仓库呈现完整结构
采用这种布局后,一次 git clone 就能让团队成员获得执行手册、inventory、变量和角色,而且全部保持一致的结构。🎯
完整目录骨架
这里是官方文档建议的推荐骨架。请记住整体结构,而不是每个文件。
myproject/
ansible.cfg
inventory
site.yml
group_vars/
host_vars/
roles/快速检查
整个项目按惯例使用哪个文件作为顶层入口?
回顾
您了解了标准布局:一个仓库中包含 site.yml、inventory、group_vars、host_vars 和 roles。可预测的结构能够随着团队发展而扩展。✅
常见问题解答
「推荐的目录布局」课时是免费的吗?
是的 — 「推荐的目录布局」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 DevOps Bootcamp 课程的其余内容,请升级到 CoddyKit PRO。 DevOps Bootcamp 课程共包含 4 节课。
「推荐的目录布局」这节课中我会学到什么?
了解剧本、清单和变量文件的存放位置 你通过在浏览器中直接运行的动手代码来练习 DevOps Bootcamp,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 DevOps Bootcamp 需要有经验吗?
无需任何先前经验。CoddyKit 上的 DevOps Bootcamp 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 1 节课,共 4 节。
「推荐的目录布局」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 DevOps Bootcamp 课中编写并运行代码吗?
能。每节 DevOps Bootcamp 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。