我的任务是对 MySQL 的 my.cnf 进行模板化,以尝试使用 Puppet 标准化从属数据库之间的配置。现在,我的目标是 innodb 设置。 是否存在可以根据内存、磁盘和进程等硬件规范安全计算的配置选项?
最佳答案
你需要事实。
puppet:/etc/puppet/modules/master/lib/facter$ cat disks.rb
#!/usr/bin/ruby
#require 'facter'
mount = `/bin/mount`
disks=Array.new
mount.split("\n").each_with_index { | disk,i |
unless disk.scan(/ext3|simfs|reiserfs|xfs/).empty?
d=disk.split[2]
disks.push d
disks.push ','
end
}
Facter.add('disks') do
setcode do
disks
end
end
` 在 puppet.pp 中我使用 facts $disks
#add disk check to zabbix
exec { "create_host":
command => "/bin/echo $fqdn $ipaddress $disks | do_work",
require => File["/root/ticket"],
subscribe => File["/root/ticket"],
refreshonly => true,
}
请参阅 puppet labs 上的“将自定义事实添加到 Facter”。
关于mysql - 模板化 MySQL 的 my.cnf 以在 Puppet 中设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5046244/