redis3.0集群搭建

1. 在m01 m02 m03上创建7001,7002   7003,7004  7005,7007文件夹

2. 将redis.conf 拷贝到7001文件夹

3. vi redis.conf

     3.1)修改绑定地址及端口号

     3.2)dir  指定数据存储目录 (每个要指定不同的目录)

     3.3)cluster-enabled  yes

     3.4)cluster-config-file nodes700*.conf(启动自动生成)

     3.5)cluster-node-timeout  5000

     3.6)appendonly   yes

4. 其余的配置文件做相应改变

5. 安装ruby,因为redis集群操作脚本用ruby写的

yum install ruby 

yum install rubygems

6. 依次启动各个redis节点

7. 使用./redis-trib.db  create  --replicas 1 xxx:7001 xxx:7002  xxx:7003  xxx:7004  xxx:7005  xxx:7006 

(--replicas 1  表示主节点和从节点的比例为1   即3主3从)

8.登录  redis-cli   -c -h xxx -p 7001 

9查看集群信息

xxx:7001>cluster  nodes



package bhz.redis01;


import java.util.HashSet;
import java.util.Set;


import redis.clients.jedis.HostAndPort;
import redis.clients.jedis.JedisCluster;
import redis.clients.jedis.JedisPoolConfig;


public class TestClusterRedis {


public static void main(String[] args) {
   
   Set<HostAndPort> jedisClusterNode = new HashSet<HostAndPort>();
   jedisClusterNode.add(new HostAndPort("192.168.1.171", 7001));
   jedisClusterNode.add(new HostAndPort("192.168.1.171", 7002));
   jedisClusterNode.add(new HostAndPort("192.168.1.171", 7003));
   jedisClusterNode.add(new HostAndPort("192.168.1.171", 7004));
   jedisClusterNode.add(new HostAndPort("192.168.1.171", 7005));
   jedisClusterNode.add(new HostAndPort("192.168.1.171", 7006));
   //GenericObjectPoolConfig goConfig = new GenericObjectPoolConfig();
   //JedisCluster jc = new JedisCluster(jedisClusterNode,2000,100, goConfig);
   JedisPoolConfig cfg = new JedisPoolConfig();
   cfg.setMaxTotal(100);
   cfg.setMaxIdle(20);
   cfg.setMaxWaitMillis(-1);
   cfg.setTestOnBorrow(true); 
   JedisCluster jc = new JedisCluster(jedisClusterNode,6000,1000,cfg);   
   
   System.out.println(jc.set("age","20"));
   System.out.println(jc.set("sex","男"));
   System.out.println(jc.get("name"));
   System.out.println(jc.get("name"));
   System.out.println(jc.get("name"));
   System.out.println(jc.get("name"));
   System.out.println(jc.get("name"));
   System.out.println(jc.get("name"));
   System.out.println(jc.get("name"));
   System.out.println(jc.get("name"));
   System.out.println(jc.get("age"));
   System.out.println(jc.get("sex"));
   jc.close();


}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值