首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >模板化MySQL的my.cnf以便在Puppet中设置

模板化MySQL的my.cnf以便在Puppet中设置
EN

Stack Overflow用户
提问于 2011-02-19 04:32:24
回答 3查看 2.2K关注 0票数 3

我的任务是对MySQL的my.cnf进行模板化,尝试使用Puppet来标准化从属数据库的配置。现在,我的目标是innodb设置。是否有可根据内存、磁盘和处理器等硬件规格安全计算的配置选项?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-03-25 03:45:27

你需要facter。

代码语言:javascript
运行
复制
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中,我使用事实$disks

代码语言:javascript
运行
复制
#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,
}

请参阅木偶实验中的“向Facter添加自定义因子”。

票数 4
EN

Stack Overflow用户

发布于 2011-07-20 03:25:47

我很想把计算结果移到erb文件中,例如,建议将key_buffer_size设置为Systems RAM的1/4:

代码语言:javascript
运行
复制
set-variable = key_buffer_size=<%= (memorysize.split(' ')[0].to_i * 1024) / 4 -%>M

您没有理由不能使用Facter提供的其他变量(处理器数量等),并提出您自己的计算来设置上面的其他变量。

请记住,ERB实际上提供了Ruby的一个子集,所以在Ruby中可以做的几乎任何事情都可以在ERB中完成。

票数 2
EN

Stack Overflow用户

发布于 2011-03-09 13:41:32

木偶有erb模板,erb模板可以使用facter值,如hostname或memor。您可以编写自己的自定义shell脚本。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5046244

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档