puppet(单机模式)-实现redis主从

主机规划: mainfests:172.16.13.133 

      master:172.16.13.134 

      slave:172.16.13.135

实现过程:

1、所有主机安装puppet:yum install puppet

2、准备redis主从相关的配置文件:

  为了方便,先在本机安装redis,利用现有的配置文件来生成主从的配置文件

cp /etc/redis.conf /root/manifests/redis/files/redis-master.conf 

cp /etc/redis.conf /root/manifests/redis/files/redis-slave.conf


vim redis-master.conf  修改如下行

  bind 0.0.0.0      #这里为了方便使用配置为0.0.0.0,一般设置为127.0.0.1

  requirepass 123456  #开启密码认证

 

vim redis-slave.conf

  bind 0.0.0.0

  requirepass 123456

  slaveof 172.16.13.134 6379  #指明主服务器的ip及监听端口

  masterauth 123456        #密码


3、编辑清单文件  

vim /root/manifests/redis/redis.pp  #路径可自己控制

class redis {

        package {'redis':           #安装redis

                ensure => installed,

        }

        service {'redis':           #启动redis服务

                ensure => running,

                enable => true,

                hasrestart => true,

                hasstatus => true,

        }

}

class redis::master inherits redis {      #redis-master使用如下source指定的配置文件,redis::master表示继承redis类

        file{'/etc/redis.conf':

                ensure => file,

                source => '/root/redis/files/redis-master.conf',

                owner => 'redis',

                group => 'root',

                mode => 0640,

        }

        Package['redis'] -> File['/etc/redis.conf'] ~>Service['redis']  #定义依赖关系

}

class redis::slave inherits redis {      #redis-slave使用如下source指定的配置文件

        file{'/etc/redis.conf':

                ensure => file,

                source => '/root/redis/files/redis-slave.conf',

                owner => 'redis',

                group => 'root',

                mode => 0640,

        }

        Package['redis'] -> File['/etc/redis.conf'] ~>Service['redis']

}


4、将对应的清单文件以及所需配置文件放到对应主机:

scp -r /root/manifests/redis/ 172.16.13.134:/root/

scp -r /root/manifests/redis/ 172.16.13.135:/root/

 

5、调用与自己角色相关的类:

  在master主机操作:vim /root/redis/redis.pp

  末尾加入如下一行:include redis::master


  

  在slave主机操作:vim /root/redis/redis.pp

  末尾加入如下一行:include redis::slave


6、执行(可以在执行前测试一下:puppet apply -v --noop redis.pp)

 blob.png

 blob.png

 

 在主从上都看一下数据是否同步:

 blob.png 

 blob.png 

 













本文转自lc0108131451CTO博客,原文链接http://blog.51cto.com/13150617/2053800: ,如需转载请自行联系原作者



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值