centOS安装Redis集群

  

1.集群节点规划

主节点192.168.236.130:7001 192.168.236.130:7002 192.168.236.130:7003

从节点192.168.236.130:7004 192.168.236.130:7005 192.168.236.130:7006

2.在/my/redis下创建redis-cluster目录

 mkdir redis-cluster

3.在Redis-cluster目录下创建7001~7006文件夹

[root@localhost redis]# cd redis-cluster/

[root@localhost redis-cluster]# ll

total 0

[root@localhost redis-cluster]# mkdir 7001

扫描二维码关注公众号,回复: 1061903 查看本文章

[root@localhost redis-cluster]# mkdir 7002

[root@localhost redis-cluster]# mkdir 7003

[root@localhost redis-cluster]# mkdir 7004

[root@localhost redis-cluster]# mkdir 7005

[root@localhost redis-cluster]# mkdir 7006

[root@localhost redis-cluster]#

4.将redis安装目录bin下的文件拷贝到每个700X目录内,同时将redis源码目录src下的redis-trib.rb拷贝到redis-cluster目录下。



5.修改每个700X目录下的redis.conf配置文件

端口号分别设置为700x

打开集群开关




cluster-enabled yes

6.分别进入各个Redis启动服务


7.执行创建集群命令

./redis-trib.rb create --replicas 1 192.168.236.130:7001192.168.236.130:7002 192.168.236.130:7003 192.168.236.130:7004192.168.236.130:7005 192.168.236.130:7006

如果报一下错误请先安装ruby环境(管理员权限)


yum install ruby


再次执行上述集群命令报以下错误

安装rubygems(显示已安装)



安装Redis驱动

gem install redis

gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
curl -sSL https://get.rvm.io | bash -s stable
find / -name rvm -print
source /usr/local/rvm/scripts/rvm
rvm list known
rvm install 2.4.1

参考

https://www.cnblogs.com/PatrickLiu/p/8454579.html

https://www.cnblogs.com/carryping/p/7447823.html

 

修改redis.cof 文件

单机版测试

@Test
    public void testJedisSingle() {

        Jedis jedis = new Jedis("192.168.150.128", 6379);
        jedis.set("xx", "bar");
        String name = jedis.get("xx");
        System.out.println(name);
        jedis.close();

    }

集群版测试

 @Test
    public void testJedisCluster() {

        JedisPoolConfig poolConfig = new JedisPoolConfig();
        // 最大连接数
        poolConfig.setMaxTotal(30);
        // 最大空闲数
        poolConfig.setMaxIdle(1);
        // 最大允许等待时间,如果超过这个时间还未获取到连接,则会报JedisException异常:
        poolConfig.setMaxWaitMillis(10000);
        Set<HostAndPort> jedisClusterNode = new LinkedHashSet<HostAndPort>();
        jedisClusterNode.add(new HostAndPort("192.168.150.128", 7001));
        jedisClusterNode.add(new HostAndPort("192.168.150.128", 7002));
        jedisClusterNode.add(new HostAndPort("192.168.150.128", 7003));
        jedisClusterNode.add(new HostAndPort("192.168.150.128", 7004));
        jedisClusterNode.add(new HostAndPort("192.168.150.128", 7005));
        jedisClusterNode.add(new HostAndPort("192.168.150.128", 7006));
        JedisCluster cluster = new JedisCluster(jedisClusterNode, poolConfig);
   
        cluster.set("age", "18");
        System.out.println(cluster.get("age"));
        try {
            cluster.close();
        } catch (IOException e) {
            e.printStackTrace();
        }


    }

结果



猜你喜欢

转载自blog.csdn.net/jhon1994/article/details/80378400