1. 首先要ssh免密登录
redis集群,3台虚拟机,6个节点,每台机器2个节点一主一从。
192.168.132.154 c0
192.168.132.156 c1
192.168.132.155 c2
下载并解压文件,请到官网下载。文末有网盘下载地址。
tar -zxvf redis-5.0.4.tar.gz
安装或更新C语言环境
yum install gcc-c++
安装Redis,默认安装在当前目录下,可以使用PREFIX参数更改安装位置
make install PREFIX=/home/xiaozw/soft/java/redis
2. 修改配置文件redis.conf,3台服务器,6个节点都需要修改。
日志文件路径
logfile "/home/xiaozw/soft/tmp/redis"
Redis绑定的Ip地址
bind 192.168.132.154
bind 192.168.132.156
bind 192.168.132.155
端口(7000-7005):
port 7000
每个Redis的集群设置打开
cluster-enabled yes
daemonize yes
aof日志每一个操作都记录模式
appendonly yes
查看redis状态
ps -ef|grep redis
关闭redis
./redis-cli -h 192.168.132.154 -p 7000 shutdown
拷贝文件到其它服务器,切换当前路径到/home/xiaozw/soft/java
scp -r redis [email protected]:/home/xiaozw/soft/java
3. 分别启动6个节点
./redis-server ./redis.conf
4. 安装ruby
yum install ruby
5. 将6个Redis加入一个集群
./redis-cli --cluster create 192.168.132.154:7000 192.168.132.154:7001 192.168.132.156:7002 192.168.132.156:7003 192.168.132.155:7004 192.168.132.155:7005 --cluster-replicas 1
6. java调用
/** * 配置缓存服务器ip和端口 * @return */ @Bean public JedisCluster JedisClusterFactory() { Set<HostAndPort> jedisClusterNodes = new HashSet<HostAndPort>(); jedisClusterNodes.add(new HostAndPort("192.168.132.154", 7000)); jedisClusterNodes.add(new HostAndPort("192.168.132.154", 7001)); jedisClusterNodes.add(new HostAndPort("192.168.132.156", 7002)); jedisClusterNodes.add(new HostAndPort("192.168.132.156", 7003)); jedisClusterNodes.add(new HostAndPort("192.168.132.155", 7004)); jedisClusterNodes.add(new HostAndPort("192.168.132.155", 7005)); JedisCluster jedisCluster = new JedisCluster(jedisClusterNodes); return jedisCluster; }
/** * 测试写入读取缓存 */ @RequestMapping("/getCacheTest") @ResponseBody public void getCacheTest(){ redisDAO.set("myKey","hello world"); System.out.println("缓存返回:"+redisDAO.get("myKey")); }
返回:
7. 文件下载地址
链接:https://pan.baidu.com/s/1sgerqrHFWxxewXJBu8yyTg
提取码:1o8d
原文地址:https://www.cnblogs.com/xiaozw/p/11865625.html