一:安装集群
1.需要文件 redis-3.0.0.tar.gz(redis安装包) 和 redis-3.0.0.gem(ruby和rerdis接口)
2.redis集群依赖ruby环境,安装ruby
[root@localhost cluster-redis-3.0]# yum isntall ruby
[root@localhost cluster-redis-3.0]# yum isntall rubygems
3.创建新目录用于存在6个redis实例
/usr/local/programrun/cluster-redis-3.0/
在该目录下安装 redis01(参考单机版安装)
并修改redis.conf中 port 7001 和 cluster-enabled yes
复制成多分,并依次修改 redis.conf中 port 为: 7002 7003 ... 7006
[root@localhost cluster-redis-3.0]# ll
创建同一启动shell脚本:
[root@localhost cluster-redis-3.0]# vim startall.sh
[root@localhost cluster-redis-3.0]# chmod -x startall.sh
[root@localhost cluster-redis-3.0]# ./startall.sh
[root@localhost cluster-redis-3.0]# ps -ef|grep redis
可以看到全部启动:
上传redis-3.0.0.gem 在该文件目录下执行:
[root@localhost files]# gem install redis-3.0.0.gem
将redis源文件src目录的 redis-trib.rb(创建集群的ruby脚本) 拷贝到集群cluster-redis-3.0文件夹下:
[root@localhost src]# cp /usr/local/files/redis-3.0.0/src/*.rb /usr/local/programrun/cluster-redis-3.0/
创建集群:
./redis-trib.rb create --replicas 1 192.168.1.107:7001 192.168.1.107:7002 192.168.1.107:7003 192.168.1.107:7004 192.168.1.107:7005 192.168.1.107:7006
[root@localhost cluster-redis-3.0]# ./redis-trib.rb create --replicas 1 192.168.1.107:7001 192.168.1.107:7002 192.168.1.107:7003 192.168.1.107:7004 192.168.1.107:7005 192.168.1.107:7006
出现提示时输入:yes
二: 测试集群
[root@localhost cluster-redis-3.0]# ./redis01/redis-cli -h 192.168.1.107 -p 7001 -c
关闭redis:
redis01/redis-cli -p 7001 shutdown
Java代码中测试集群:
public static void main(String[] args) throws IOException {
HashSet<HostAndPort> nodes = new HashSet<>();
nodes.add(new HostAndPort("192.168.1.107", 7001));
nodes.add(new HostAndPort("192.168.1.107", 7002));
nodes.add(new HostAndPort("192.168.1.107", 7003));
nodes.add(new HostAndPort("192.168.1.107", 7004));
nodes.add(new HostAndPort("192.168.1.107", 7005));
nodes.add(new HostAndPort("192.168.1.107", 7006));
// 连接集群
JedisCluster cluster = new JedisCluster(nodes);
cluster.set("cluster", "cluster 213211");
String string = cluster.get("str");
System.out.println(string);
cluster.close();
}