redis集群搭建(多台云服务器搭建集群,非单台服务)
我是在两台云服务器上搭建的redis集群,①首先两台云服务器上必须要安装redis,(这里省略安装步骤)②在搭建redis集群之前需要安装ruby。redis使用ruby来做集群的。用一个叫redis-trib.rb的ruby脚本。redis-trib.rb是redis官方推出的管理redis集群的工具,集成在redis的源码src目录下(redis-xxx/src/)。是基于redis提供的集群
我是在两台云服务器上搭建的redis集群,
①首先两台云服务器上必须要安装redis,(这里省略安装步骤)
②在搭建redis集群之前需要安装ruby。redis使用ruby来做集群的。用一个叫redis-trib.rb的ruby脚本。redis-trib.rb是redis官方推出的管理redis集群的工具,集成在redis的源码src目录下(redis-xxx/src/)。是基于redis提供的集群命令封装成简单、便捷、实用的操作工具。redis-trib.rb是redis作者用ruby完成的。所以redis集群需要先安装ruby环境。安装好ruby后要安装redis的依赖--gem install redis(这里安装好后要确定是不是最新版本,至少是2.3版本)
yum install centos-release-scl-rh //会在/etc/yum.repos.d/目录下多出一个CentOS-SCLo-scl-rh.repo源
yum install rh-ruby23 -y //直接yum安装即可
scl enable rh-ruby23 bash //必要一步
ruby -v //查看安装版本
③首先在第一台服务器上创建多个节点,位置自己定,因为我使用的两台服务器,所以至少每台服务上要有三个节点,我是直接把每个节点的配置文件放到一个文件夹下的,没有单独存放,创建redis_cluster_node文件夹,进入文件夹,分别创建7000.conf,7001.conf,7002.conf,以一个文件中的内容为例,其他两个配置文件改为对应的端口等信息:
port 7000
bind 0.0.0.0
daemonize yes
pidfile 7000.pid
logfile 7000.log
cluster-enabled yes
cluster-config-file 7000_node.conf
cluster-node-timeout 15000
appendonly yes
protected-mode no
④第二台服务上同样以相同的方式创建三个配置文件,我用的是7003.conf,7004.conf, 7005.conf,分别对应其使用的端口号
⑤创建好以后,分别启动每个节点 redis-server 7000.conf 等
两台云服务上的节点正常启动后会如上图所示
⑥此时可以使用以下命令创建集群(ip1和ip2分别对应两台云服务的外网地址):
redis-trib.rb create --replicas 1 ip1:7000 ip1:7001 ip1:7002 ip2:7003 ip2:7004 ip2:7005
注:在启动前,首先要保证两台服务开放了对应的端口,并且开放了每个端口的总线端口(必须要开发,否则会遇到各种意想不到的问题)
这里需要开放 7000, 7001, 7002, 17000, 17001, 17002,服务2开放7005, 7003, 7004, 17005, 17004,17003
当然,如果报了下面这个错误:
说明ruby版本不是最新的,需要将ruby版本改为最新,至少2.3版本,如果这里又重新安装了ruby,还需要重新安装redis的依赖----- gem install redis
⑦如果使用命令启动正常的话;会出现下面提示:
到此说明redis集群创建成功!!!
下面可以测试下数据:
使用命令:redis-cli -h ip1 -c -p 7000连接刚刚创建的任意一个节点
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)