记redis-cluster集群搭建采坑记录--离线搭建ruby环境

本文详细介绍了在离线环境下搭建Ruby环境的过程,包括安装openssl、ruby、rubygem、zlib等依赖,以及解决安装过程中遇到的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

背景:

由于是在公司内网下安装,坑基本全在搭建ruby环境,记录此次踩坑笔记。

坑一:搭建ruby环境

此次安装全在离线环境下。
步骤:
1、安装openssl
2、安装ruby
3、安装rubygem
4、安装zlib
5、安装redis-gem

第一点说明:若linux环境之前没有openssl,则可以直接源码安装。外网下载gz压缩包,然后通过tar安装。

wget https://www.openssl.org/source/openssl-1.0.2m.tar.gztar -zxvf openssl-1.0.2m.tar.gzcd openssl-1.0.2m./config --prefix=/usr/local/openssl./config -tmakemake installopenssl version

若之前有安装低版本openssl,则用以下命令,并且安装前如果没有zlib,最好先安装zlib

tar -zxvf openssl-1.0.2m.tar.gz
cd openssl-1.0.2m
./config shared zlib  --prefix=/usr/local/openssl && make && make install
./config -tmake depend
cd /usr/local
ln -s openssl ssl
openssl version

然后在/etc/ld.so.conf文件的最后面,添加如下内容:/usr/local/openssl/lib
然后执行命令: ldconfig
最后一步: 添加OPESSL的环境变量,在etc/的profile的最后一行,添加如下内容:

export OPENSSL=/usr/local/openssl/bin
export PATH=$OPENSSL:$PATH:$HOME/bin

第二点说明:安装openssl过程种不报错安装成功后,安装ruby。

wget https://cache.ruby-lang.org/pub/ruby/2.4/ruby-2.4.2.tar.gz
tar -zxvf ruby-2.4.2.tar.gz
cd ruby-2.4.2
./configure --with-openssl-dir=/usr/local/openssl
make
make install
ln -s /usr/local/bin/ruby /usr/bin/ruby

安装完后查看/ruby-2.4.2/ext/zlib/Makefile,若最后几行有

zlib.o: $(top_srcdir)/include/ruby.h

则安装ruby成功

第三点说明:安装rubygem

tar -zxvf rubygems-2.3.0.tgz
cd rubygems-2.3.0
ruby setup.rb

若执行 setup.rb 报not found xxx,查看/usr/local/bin下的ruby文件是否才几kb,
则表示ruby安装失败。重装ruby后再次执行ruby setup.rb,并查看ruby文件大小,正常情况ruby有十几m。

第四点说明:安装zlib

cd /ruby-2.4.2/ext/zlib
ruby extconf.rb

若执行 ruby extconf.rb 报check xxxx yes,则表示安装成功。
若报check xxxx no,则表示openssl安装失败。建议重装openssl。
然后

vim /ruby-2.4.2/ext/zlib/Makefile
zlib.o: $(top_srcdir)/include/ruby.h

修改为:

zlib.o: ../../include/ruby.h

第五点说明
最后安装redis-gem,用于执行zlib相关redis包

gem install redis

也可先下载到本地

wget https://rubygems.org/downloads/redis-4.0.3.gem

可修改版本,下载相关redis-gem

ERROR:  While executing gem ... (Gem::Exception)
    Unable to require openssl, install OpenSSL and rebuild ruby (preferred) or use non-HTTPS sources

报这个错,安装openssl-devel,并重新编译ruby即可。

坑二:创建集群

若节点设置了密码,使用./redis-trib.rb create --replicas 1 创建集群时
会报错 Sorry, can't connect to node
这时要配置集群密码
/usr/local/rvm/gems/ruby-2.4.1/gems/redis-4.0.1/lib/redis/client.rb
可通过find / -name client.rb找一下
在前几行找到password ,修改密码

class Client
    DEFAULTS = {
      :url => lambda { ENV["REDIS_URL"] },
      :scheme => "redis",
      :host => "127.0.0.1",
      :port => 6379,
      :path => nil,
      :timeout => 5.0,
      :password => "passwd123",
      :db => 0,
      :driver => nil,
      :id => nil,
      :tcp_keepalive => 0,
      :reconnect_attempts => 1,
      :inherit_socket => false
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值