Linux Redis集群安装
来源:互联网 发布:免备案php空间 编辑:程序博客网 时间:2024/05/17 01:18
Linux Redis集群安装
软件版本:redis-3.0.7,必须使用该稳定版本否则会错各种问题
IP地址:
节点1:192.168.1.101:7000 主节点
节点2:192.168.1.101:7001 从节点
节点3:192.168.1.102:7002 主节点
节点4:192.168.1.102:7003 从节点
节点5:192.168.1.103:7004 主节点
节点6:192.168.1.103:7005 从节点
Redis安装(六个节点)
1:安装相关编译的依赖包
# yum -y install gcc make
2:安装redis(六个节点)
软件上传到/opt目录
# cd /opt/
# tar -zxvf redis-3.0.7.tar.gz
# mv redis-3.0.7/ redis/
# cd redis/
# make && make install
1、下载redis稳定版本:redis-3.0.7
2、保证节点机器之间能够两两免密码登陆
3、在node1 、node2、node3 上分别安装2个redis
目录如下:
node1 7000 /opt/redis
node1 7001 /opt/soft/redis
node2 7002 /opt/redis
node2 7003 /opt/soft/redis
node3 7004 /opt/redis
node3 7005 /opt/soft/redis
(1)安装相关编译的依赖包
# yum -y install gcc make
(2)安装redis(六个节点)
软件上传到/opt目录
# cd /opt/
# tar -zxvf redis-3.0.7.tar.gz
# mv redis-3.0.7/ redis/
# cd redis/
# make && make install
4、修改每一台redis的redis.conf文件,必须修改端口
port 7000
cluster-enabled yes
cluster-config-file nodes-7000.conf
cluster-node-timeout 5000
appendonly yes
port 7001
cluster-enabled yes
cluster-config-file nodes-7001.conf
cluster-node-timeout 5000
appendonly yes
port 7002
cluster-enabled yes
cluster-config-file nodes-7002.conf
cluster-node-timeout 5000
appendonly yes
port 7003
cluster-enabled yes
cluster-config-file nodes-7003.conf
cluster-node-timeout 5000
appendonly yes -----》官方推荐使用appendonly yes,
但是现实生活中,我们需要使用appendfsync everysec,原因
是3.0版本后每秒写入一次,做了优化!!
port 7004
cluster-enabled yes
cluster-config-file nodes-7004.conf
cluster-node-timeout 5000
appendonly yes
port 7005
cluster-enabled yes
cluster-config-file nodes-7005.conf
cluster-node-timeout 5000
appendonly yes
5、在每个redis机器上分别创建一个文件夹cluster-test,
然后进入cluster-test,再创建一个文件夹名称以端口号命名的文件夹
mkdir cluster-test
cd cluster-test
mkdir 7000
mkdir cluster-test
cd cluster-test
mkdir 7001
mkdir cluster-test
cd cluster-test
mkdir 7002
mkdir cluster-test
cd cluster-test
mkdir 7003
mkdir cluster-test
cd cluster-test
mkdir 7004
mkdir cluster-test
cd cluster-test
mkdir 7005
6、在目录cluster-test下各创建一个redis.conf 文件, 文件的内容可以使用上面修改好的redis.conf配置文件,
但记得将配置中的端口号从7000改为与文件夹名字相同的号码
分别进入cluster-test目录下启动各个节点,注意:这里的redis.conf文件,一定要是上面刚刚修改好的文件(即cluster-test目录下的文件)
cd 7000
../redis-server ./redis.conf
cd 7001
../redis-server ./redis.conf
cd 7002
../redis-server ./redis.conf
cd 7003
../redis-server ./redis.conf
cd 7004
../redis-server ./redis.conf
cd 7005
../redis-server ./redis.conf
如果正常,则会打印如下日志:
[82462] 26 Nov 11:56:55.329 * No cluster configuration found, I'm 全局唯一的id
7、进入任意一个机器,安装ruby的环境
#yum install ruby -y
#yum install rubygems -y
8、进入上述机器的redis的src目录下,安装
#gem install redis
9、创建集群,在node1的 7001节点的src目录下执行
./redis-trib.rb create --replicas 1 192.168.1.101:7000 192.168.1.101:7001 192.168.1.102:7002 192.168.1.102:7003 192.168.1.103:7004 192.168.1.103:7005
[OK] All 16384 slots covered
这表示集群中的 16384 个槽都有至少一个主节点在处理, 集群运作正常。
集群创建成功
10、进入node1开始测试
#redis-cli -c -p 7000(注意:如果报错,说明7000所在节点不是master,所以换一个节点即可,7001)
127.0.0.1:7000> set 3432 123
OK
11、编写java 代码,jedis分片测试:
public static void main(String[] args) {
Set<HostAndPort> jedisClusterNodes=new HashSet<HostAndPort>();
jedisClusterNodes.add(new HostAndPort("node1",7000));
jedisClusterNodes.add(new HostAndPort("node1",7001));
jedisClusterNodes.add(new HostAndPort("node2",7002));
jedisClusterNodes.add(new HostAndPort("node2",7003));
jedisClusterNodes.add(new HostAndPort("node3",7004));
jedisClusterNodes.add(new HostAndPort("node3",7005));
JedisCluster jc=new JedisCluster(jedisClusterNodes);
String key=String.valueOf(new Random().nextInt(368391));
int value=new Random().nextInt(238239);
jc.set(key,String.valueOf(value));
String valu=jc.get(key);
System.out.println("结果:"+valu);
}
默认7000 7002 7004 最先启动,则是主节点
测试故障转移时,kill 掉其中一个主节点,那么对应得从节点马上变为主节点!!
仍然执行以上代码时,也是正常的!!
12、停止集群
在node1节点上的/opt/redis目录下执行:
#./src/redis-cli -c -p 7000 shutdown
#./src/redis-cli -c -p 7001 shutdown
在node3节点上的/opt/redis目录下执行:
#./src/redis-cli -c -p 7000 shutdown
#./src/redis-cli -c -p 7001 shutdown
在node3节点上的/opt/redis目录下执行:
#./src/redis-cli -c -p 7000 shutdown
#./src/redis-cli -c -p 7001 shutdown
- Linux Redis集群安装
- linux 安装 redis集群
- CentOS/Linux Redis集群安装
- linux下redis集群安装
- linux服务器安装redis集群
- linux安装配置Redis及Redis集群
- Linux安装redis及redis集群
- redis 在单台linux集群安装
- 在Linux上安装Redis集群
- Linux(CentOS 6.5) 安装redis集群
- Linux-centos下安装redis及集群
- Linux环境下安装redis集群
- Linux 下Redis安装与集群配置 Redis配置文件详解
- Redis集群_1.redis安装
- Redis集群Redis-Cluster安装
- redis安装,主从集群
- Redis集群安装部署
- centOs 安装redis,集群
- $.ajax()方法详解
- CentOs-关闭防火墙
- postgresql数据库的备份和还原
- C 实现通用Tween缓动动画(1)插值公式
- Android使用ViewPager实现左右循环滑动及轮播效果
- Linux Redis集群安装
- js获取所选中复选框的值s
- 在Android Studio环境下进行OpenCV开发
- break ,continue ,return 的区别及作用?
- 复数类的实现
- 11g Grid Control安装过程的一些“坑”
- Unity锯齿消除
- ES6 函数参数默认值 default
- Eclipse Java注释模板设置详解