Redis 集群版安装,
由于是自己安装着的玩的,所以就使用了一个虚拟机,通过不同port来实现集群的效果的.
Mkdir rediscluster,新建文件夹.
解压安装
Tar -zxvf redis-4.0.1.tar.gz,
重命名:
Mv redis-4.0.1 redis
进入cd redis
Make编译
新建目录,并进入
Mkdir cluster;
Cd cluster;
新建目录conf,mkdir conf;
新建文件7001.conf,(或者自己认为通俗易懂的名称,我是根据自己的端口号命名的)
Touch 7001.conf
新增内容:
port 7000
# //端口7000,7002,7003
bind 192.168.17.128
# //默认ip为127.0.0.1 需要改为其他节点机器可访问的ip 否则创建集群时无法访问对应的端口,无法创建集群
daemonize yes
# //redis后台运行
pidfile ./redis_7000.pid
# //pidfile文件对应7000,7001,7002
cluster-enabled yes
# //开启集群 把注释#去掉
cluster-config-file nodes_7000.conf
# //集群的配置 配置文件首次启动自动生成 7000,7001,7002
cluster-node-timeout 15000
# //请求超时 默认15秒,可自行设置
appendonly yes
# //aof日志开启 有需要就开启,它会每次写操作都记录一条日志
同样,在conf目录下,新建7001.conf.
此时直接复制7000.conf
Cp 7000.conf 7001.conf
Cp 7000.conf 7002.conf
Cp 7000.conf 7003.conf
Cp 7000.conf 7005.conf
Cp 7000.conf 7005.conf
总共至少需要6个,主配机个数比例至少1:1;主机要求满足心跳机制,必须是大于1的奇数个;主机(master)至少三台,辅机(slave)至少和主机(master)相同,也是三台,所以要求共6个redis.
复制后修改各自的参数,使其与相应的端口号一致.我主要使用的是7000,7001,7002,7003,7004,7005,而redis默认使用6179我没有使用.
启动6台redis.在/redis/src目录下:
redis-server ../cluster/conf/7000.conf,依次使用6次,
6台全部打开.接下来就是搭载集群.
接下来会出现很多问题:
正确的顺序,或者说顺利的话,你的虚拟机在环境,尤其是pathoy环境都预装好的情况下,非常顺利,
yum安装ruby和依赖的包
yum -y install ruby ruby-devel rubygems rpm-build
使用gem这个命令来安装redis接口
gem install redis
安装rubygems,成功!
Redis集群搭建,在redis/src目录下,
ruby ./redis-trib.rb create --replicas 1 192.168.17.128:7000 192.168.17.128:7001 192.168.17.128:7002 192.168.17.128:7003 192.168.17.128:7004 192.168.17.128:7005
--replicas 1表示为集群的master节点创建1个副本。那么6个实例里,有三个master,有三个是slave。
后面跟上6个实例就好了,形式就是ip:port
登录集群客户端,-c标识以集群方式登录
redis-cli -h 192.168.17.128 -p 7000 -c
没毛病,启动成功.这时一切顺利的.
但事实是,前面的很多地方,我们都出现错误了:
一般问题就是出现在gem install redis时,会出现下面错误,
找不到gem,查网上知道,安装gem之前需要先装ruby,所以先装ruby
yum -y install ruby ruby-devel rubygems rpm-build
此时执行gem install redis,又会报如下的错误:
说明gem命令是有了,安装成功了,只是版本问题,所以就更新版本了.
也就是要升级ruby的版本
可以根据 ruby -v查看当前版本.
RVM需要通过CRUL来进行下载,那么我们要先下载CUEL,CURL是什么呢,它是Linux下的文件传输工具,利用URL的规则在命令行下工作,输入命令 " yum install curl " 进行安装
使用curl安装rvm ,输入命令 " curl -L get.rvm.io | bash -s stable " 进行安装
这里又出现了另外一个问题,比较烦躁:
不知道什么问题,但是知道没有成功,来来回回搞了好几遍,把连接拿出来单独访问是可以的,然后ping外网也是可以的,我个人认为是github拒绝了我的访问,但是网上也有说法,如下:
后来也没管那么多,xjb折腾了.
插入一段广告:哈啊哈:
关于RVM的安装方法,除了以上安装方法,《 ruby 中国官网 》也介绍了RVM的安装,安装方法如下:
这里所有的命令都是在用户权限下操作的,任何命令最好都不要用 sudo,
[root@localhost ~]# gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
[root@localhost ~]# \curl -sSL https://get.rvm.io | bash -s stable
[root@localhost ~]# source ~/.bashrc
[root@localhost ~]# source ~/.bash_profile
修改 RVM 的 Ruby 安装源到 Ruby China 的 Ruby 镜像服务器,这样能提高安装速度
[root@localhost ~]# echo "ruby_url=https://cache.ruby-china.org/pub/ruby" > ~/.rvm/user/db
3、使用source让当前shell读入路径为" /usr/local/rvm/scripts/rvm "(路径可以自定义)的shell文件并依次执行文件中的所有语句,并重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录,
输入命令 " source /usr/local/rvm/scripts/rvm " ,查看rvm中管理的所有ruby版本,
输入命令 " rvm list known " 进行查询,
这时网上给的另一段说明
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
\curl -sSL https://get.rvm.io | bash -s stable
source ~/.bashrc
source ~/.bash_profile
echo "ruby_url=https://cache.ruby-china.org/pub/ruby" > ~/.rvm/user/db
反正也是各种错误,服!!
source /usr/local/rvm/scripts/rvm
rvm list known
security released on head
rvm install 2.3.4
现在可以执行gem install redis.哈哈哈:
接下来就像上面提到的一样的,所以不赘述.