我最近在RHEL Satellite上的7.0版中添加了来自puppetLabs的mysql模块,用于管理所有MySql的服务器,并用等幂配置保存它们,并阻塞所有不需要的配置。
在这种情况下,具有授予权限的用户可以创建数据库(例如root @ localhost),因此可以使用命令create database dbname手动添加数据库。例如。
问题,如果我在实验室服务器上运行pupppet代理-t,则puppet只是确保存在(或不存在)我的智能类“ Databeses”中定义的数据,并且什么也不做...
预期结果是运行代理时可以删除任何修改(例如数据库创建)。
有没有办法做到这一点?
感谢回复
答案 0 :(得分:0)
由于Mysql_database
是实现预取的“可确保”插件类型,因此您应该能够使用the Resources
resource type清除在托管节点上创建的所有非托管数据库。它可能看起来像这样:
resources { 'mysql_database': purge => true }
仅在您确定自己确实想要时执行此操作!
此外,您可能希望尝试在--noop
模式下运行一些,以便在上线之前查找问题。这样可以帮助您识别出意料之外的问题,例如您想要保留的数据库(例如,属于MySQL本身),但目前尚未管理。