Redis集群搭建:
类似于这种吧:
https://blog.csdn.net/woxingwosu0100/article/details/77840486
这中间出现的问题主要是 ruby 的版本太低,所以要安装最新版本的ruby
在线更新ruby版本需要安装rvm,一种ruby在线版本控制工具
安装这种工具也会出现很多问题(到目前为止虚拟机上面的ruby还没有安装成功,下载是需要安装证书,但是证书一直都无法安装)
https://blog.csdn.net/legend_x/article/details/11224859
有一个非常非常坑爹的问题,和ruby版本在线升级一样坑爹
就是安装完成ruby之后,会发现版本还是之前的版本,没有变化,因此应该修改默认的ruby版本
Rvm use 2.4.5 但是会出现无法使用的问题
大致看懂上面的东西
在rvm安装时,会给你的~/.bashrc导入你的rvm的bin路径
还有重要的一点是他还会给你~/..BASH_LOGIN 导入另外一个路径
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm
类似于这种
而我们的终端在启动的时候是按照non_login_shell启动的,因此只会读取~/.Bashrc的内容
因此他会提示你
/bin/bash --login 说利用这个命令
但是在使用这个命令后还是不行
有一种做法事将$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm
添加到~/.bashrc 之中,只收刷新 source
再次使用vrm use 还是提示一样的问题
重点来了:
只需要再打开一个终端输入相同命令即可
最后一点提示:
不要yum安装redis
反正我是没有找到redis-trib.rb 这个集群启动文件
第二个坑爹的问题是:
/usr/share/rubygems/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- redis (LoadError)
报这个错误
度娘说是gem install redis
但是安装之后还是不正确
猜测原因是:
我之前yum 安装了ruby 然后提示我ruby版本过低
于是安装rvm 进行在线升级
升级之后ruby -v 显示为正确版本
之后gem install redis
gem list 发现redis 也已经安装上了
但是接着运行还是出现错误
然后提醒错误是找不到redis
但是我redis.gem命名安装了啊,
所以此时想的是我这个时候用的ruby不是最新的ruby
做实验
Yum remove ruyb
然后ruby -v
发现还是最新版的ruby
然后再运行redis-trib.rb,发现报ruby找不到的问题
所以问题可以确认
现在就是将最新规定ruby路径添加到默认路径下就行了
然后添加默认 路径到~/.bashrc下
之后source ~/.bashrc
运行,,不行 再刷新,运行,还是不行
之后重新打开一个窗口,然后再运行,可以了
我想应该是刷新之后感觉还是没有加载啊
第三个问题:
端口连接问题,其实这个问题对于大部分人来说不是问题,只是我们的服务器的端口并不是百分百开放的,所以我在第一次搭建的时候其实一直没有搭建成功,显示连接不上,然后就自己琢磨,问题是老大让我搭建的时候也没有说端口不开放(有点小坑),后来试了一下其他的端口,还是不行,然后就直接问老大如何开放端口(云服务器),找了另外一个部门的人才可以。中间沟通效率有点低吧,反正前前后后一周,才把redis集群搭建完毕,不过也是很开心。
注意:在开放端口的时候,(以及设置端口的时候),不要设置过高,因为redis集群有个总线端口 = 端口 + 10000,我第一次设置的是60003,然后果断报错,端口过高
在开放端口的时候也要把总线端口和这个端口一起开放
https://www.cnblogs.com/xuliangxing/p/7146868.html(问题总结的较为详细)