Linux实战教程合集
Linux实战教程合集
① 下载redis压缩包,然后解压压缩文件;
② 进入到解压缩后的redis文件目录(此时可以看到Makefile文件),编译redis源文件;
③ 把编译好的redis源文件安装到/usr/local/redis目录下,如果/local目录下没有redis目录,会自动新建redis目录;
④ 进入/usr/local/redis/bin目录,直接./redis-server启动redis(此时为前端启动redis);
⑤ 将redis启动方式改为后端启动,具体做法:把解压缩的redis文件下的redis.conf文件复制到/usr/local/redis/bin目录下,然后修改该redis.conf文件->daemonize:no 改为daemonize:yse;
⑥ 在/bin目录下通过./redis-server 启动服务 ./redis-cli启动客户端。
1、Redis集群至少需要3个节点,因为投票容错机制要求超过半数节点认为某个节点挂了,所以2个节点无法构成集群。
2、要保证集群的高可用,需要每个节点都有从节点,也就是备份节点,所以redis集群至少需要6台服务器。
因为没有那么多服务器,也启动不了那么多虚拟机,所以在这么搭建的是伪分布式集群,既一台服务器虚拟机运行6个redis实例,端口表一次修改为7001-7006,当然实际生产环境当中redis集群搭建跟这里一样。
具体步骤如下(注意要关闭防火墙,关闭防火墙参考:)https://blog.csdn.net/wxsyj/article/details/112574011
1、在redis安装父目录下 usr/local目录下新建一个空目录redis-cluster目录,用于存放集群节点。
2、把redis目录下的bin目录下的所有文件复制到/usr/local/redis-cluster/redis01目录下,不用担心这里没有redis01目录,会自动创建的。
操作命令如下(注意当前所在路径):
cp -r redis/bin/ redis-cluster/redis01
3、删除redis01目录下的快照文件dump.rdb,并且修改该目录下的redis.cnf文件。
具体修改两处地方:一是端口号修改为7001,二是开启集群创建模式,打开注释即可。分别如下图所示:
删除dump.rdb文件:
修改端口号为7001,默认是6379:
将cluster-enabled yes 的注释打开:
4、将redis-cluster/redis01文件复制5份到redis-cluster目录下(redis02-redis06),创建6个redis实例,模拟Redis集群的6个节点。
然后将其余5个文件下的redis.conf里面的端口号分别修改为7002-7006。分别如下图所示:
创建redis02-06目录:
分别修改redis.conf文件端口号为7002-7006:
5、接着启动所有redis节点,由于一个一个启动太麻烦了,所以在这里创建一个批量启动redis节点的脚本文件,命令为start-all.sh。
文件内容如下:
cd redis01 ./redis-server redis.conf cd .. cd redis02 ./redis-server redis.conf cd .. cd redis03 ./redis-server redis.conf cd .. cd redis04 ./redis-server redis.conf cd .. cd redis05 ./redis-server redis.conf cd .. cd redis06 ./redis-server redis.conf cd ..
6、创建好启动脚本文件之后,需要修改该脚本的权限,使之能够执行。
指令如下:
chmod +x start-all.sh
7、执行start-all.sh脚本,启动6个redis节点。
注意:如果启动不起来,就单个进入redis01-redis06 通过刷新redis.conf方式启动redis ./redis-server redis.conf。
8、至此6个redis节点启动成功,接下来正式开启搭建集群,以上都是准备条件。
要搭建集群的话,需要使用一个工具(脚本文件),这个工具在redis解压文件的源代码里。因为这个工具是一个ruby脚本文件,所以这个工具的运行需要ruby的运行环境,就相当于java语言的运行需要在jvm上。所以需要安装ruby。
9、把ruby相关的包安装到服务器,我这里用的是redis-3.0.0.gem,大家需要注意的是:redis的版本和ruby包的版本最好保持一致。
将Ruby包安装到服务器:需要先下载再安装,如图:
路径最好跟redis-cluster在相同目录下:
安装命令如下:
gem install redis-3.0.0.gem
9、上一步中已经把ruby工具所需要的运行环境和ruby包安装好了,接下来需要把这个ruby脚本工具复制到usr/local/redis-cluster目录下。
那么这个ruby脚本工具在哪里呢?之前提到过,在redis解压文件的源代码里,即redis/src目录下的redis-trib.rb文件。旧版本的redis没有,需要下载:
https://pan.baidu.com/s/1nHmmlXWptRzKT4LXWO-h5A
提取码:ba5m
10、将该ruby工具(redis-trib.rb)复制到redis-cluster目录下。
指令如下:
cp redis-trib.rb /usr/local/redis-cluster
然后使用该脚本文件搭建集群,指令如下:
./redis-trib.rb create --replicas 1 47.106.219.251:7001 47.106.219.251:7002 47.106.219.251:7003 47.106.219.251:7004 47.106.219.251:7005 47.106.219.251:7006 47.106.219.251:这里的ip是我本人的,需要把你的ip手动写上去
注意:如果这一步发生错误,需要你去每个节点的redis.conf中修改三个地方,注释掉,#bind 127.0.0.1 yes修改为no protected-mode no 把cluster-enabled yes的注释去掉。
11、中途有个地方需要手动输入yes即可。
至此,Redi集群搭建成功!大家注意最后一段文字,显示了每个节点所分配的slots(哈希槽),这里总共6个节点,其中3个是从节点,所以3个主节点分别映射了0-5460、5461-10922、10933-16383solts。
最后连接集群节点,连接任意一个即可:
redis01/redis-cli -p 7001 -c
注意:一定要加上-c,不然节点之间是无法自动跳转的!如下图可以看到,存储的数据(key-value)是均匀分配到不同的节点的:
最后,加上两条redis集群基本命令:
1.查看当前集群信息:
cluster info
2.查看集群里有多少个节点:
cluster nodes
推荐阅读
>>>新手必备-Linux系统安装配置+Xshell远程连接
运维界升职加薪必备的云计算技术,你学了吗?
学完高级运维云计算课程之后,你可以:
跨越90%企业的招聘硬门槛
增加70%就业机会
拿下BAT全国TOP100大厂敲门砖
体系化得到运维技术硬实力
技术大佬年薪可达30w+