远程提供、配置和维护freebsd监狱的工具
bsdplo的Python项目详细描述
bsdploy–免费bsd监狱设置
bsdploy是一个全面的工具,可以远程提供资源。 配置和维护
其主要设计目标是降低可重复监狱设置的障碍。
我们鼓励您更新设置的 说明,而不是在生产主机上执行更新,而是根据相同配置的登台方案对其进行测试,直到其按预期工作,然后将更新的配置自信地应用到生产中。
主要功能
- 规定 从无到有地完成监狱招待
- 描述 一个或多个监狱主人及其监狱的规范配置
- 声明性配置 –将剧本应用于主机和监狱
- 强制维护 –运行针对主机和监狱的脚本
- 使用全磁盘加密配置zfs池和文件系统
- 模块化配置 带有 virtualbox 和 Amazon EC2 的插件和支持更多功能的架构。
工作原理
bsdploy采用命令行工具的形式,名为 ploy ,它安装在所谓的 控制主机(通常是您的笔记本电脑或台式机)上,然后用它控制一个或多个 目标主机。bsdploy在目标主机上安装的只有python和ezjail这两个东西,其他的都留在控制主机上。
示例会话
下面是一个简单网站在amazon ec2实例上的监狱中的简短引导会话可能看起来像:
# ploy start ec-instance [...] # ploy configure jailhost [...] # ploy start webserver [...] # ploy configure webserver [...] # ploy do webserver upload_website
两全其美
将用于设置系统初始状态的声明性方法与用于在该状态上提供维护操作的命令性方法相结合具有显著的优点:
- 由于命令式脚本具有在定义良好的上下文中运行的奢侈性,因此您可以使它们保持简短和简洁,而不必担心所有这些边缘情况。
-
而且,由于playbooks不必关心执行更新或其他任务,因此您不必让它们处于尴尬的状态,例如
重新启动或 更新 或更糟的是,不需要状态,例如 shell 命令。
< > >
发动机罩下
bsdploy的范围是相当雄心勃勃的,所以它自然不会试图独自完成所有的工作。事实上,bsdploy只是现有优秀工具的一个相当薄、稍显固执己见的包装器。
除了上述ansible和fabric之外,它还使用主机上的ezjail来管理监狱,并在客户机上为几乎所有其他的东西。
完整文档
完整的文档位于rtd