确认服务器端和客户端正常工作,开始编写module文件
[root@localhost etc]# cd /etc/puppet/modules/
新建puppet module目录结构
[root@localhost modules]# mkdir -p mysqld/{manifests,files,templates}
[root@localhost modules]# touch mysqld/manifests/init.pp
编写init.pp文件,启动mysqld服务,这里的linux服务需要支持以标准的service stop/start等格式
[root@localhost modules]# vi mysqld/manifests/init.pp
class mysqld::service
{
service { "mysqld":
ensure=>running,
}
}
class mysqld
{
include mysqld::service
}
编辑站点文件
[root@localhost manifests]# vi /etc/puppet/manifests/site.pp --表示c12,c13,c14节点都应用mysqld class
node 'c12', 'c13','c14'
{
include mysqld
}
保存退出,不需要重新启动puppet master
在客户端查看服务启动情况
[root@c12 modules]# ps -eaf | grep mysqld
root 12613 7125 0 12:36 pts/1 00:00:00 grep mysqld
稍过一段时间,具体取决于配置,发现mysqld服务已经启动了
[root@c12 modules]# ps -eaf | grep mysqld
root 14786 1 0 12:43 ? 00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/c12.pid
mysql 15009 14786 4 12:43 ? 00:00:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/mysql/plugin --user=mysql --log-error=/usr/local/mysql/data/localhost.localdomain.err --pid-file=/usr/local/mysql/data/c12.pid
root 15046 7125 0 12:43 pts/1 00:00:00 grep mysqld
[root@c12 modules]#
如果我们需要关闭大量服务器上的mysql服务, 只要把ensure改为stopped就可以了
[root@localhost manifests]# vi init.pp
class mysqld::service
{
service { "mysqld":
ensure=>stopped,
}
}
class mysqld
{
include mysqld::service
}