#安装tcl环境
yum install -y tcl
#安装gcc环境
yum -y install gcc gcc-c++ libstdc++-devel
# 下载redis并解压缩
wget http://download.redis.io/releases/redis-4.0.9.tar.gz
tar -zxvf redis-4.0.9.tar.gz
cd redis-4.0.9.tar.gz
#安装redis
make && make test && make install
#解决redis warning 警告
echo 1 > /proc/sys/vm/overcommit_memory
echo never > /sys/kernel/mm/transparent_hugepage/enabled
#1.首先需要安装ruby 和gem 下载redis-cluster运行所需要的包
#2.安装开发工具
yum groupinstall "Development tools"
#3.清理已安装过的 ruby
yum erase ruby ruby-libs ruby-mode ruby-rdoc ruby-irb ruby-ri ruby-docs
#4.安装gem 运行所需要的的依赖包
yum -y install zlib-devel curl-devel openssl-devel httpd-devel apr-devel apr-util-devel mysql-devel
#5.安装ruby(注:yum install ruby 安装的版本太低,没法用)
#下载ruby 2.3.0包在 /usr/local下
tar zxvf ruby-2.3.0.tar.gz
#进入 ruby-2.3.0 文件夹下
./configure
make & make install
#ruby要支持redis的通信,需要下载redis相关包
gem install redis
报错Error downloading packages: perl-Storable-2.45-3.el7.x86_64: [Errno 256] No
yum clean cache
yum makecache
yum -y update
#最后发现dns配置多了个空格 ,执行yun -y update 最后报的这个错,修改后恢复正常
# ruby 安装
#下载ruby 2.3.0包在 /usr/local下
wget https://cache.ruby-china.com/pub/ruby/ruby-2.3.0.tar.gz
tar zxvf ruby-2.3.0.tar.gz
#进入 ruby-2.3.0 文件夹下
cd ruby-2.3.0
./configure
make & make install
#ruby要支持redis的通信,需要下载redis相关包
gem install redis
缺少zlib库依赖
cd /usr/local/ruby-2.3.0
cd ext/zlib/
ruby extconf.rb
make && make install
缺少openssh依赖
cd /usr/local/ruby-2.3.0
cd ext/openssl
ruby extconf.rb
make
#若报错
#make: *** No rule to make target `/include/ruby.h', needed by `ossl_pkey_dsa.o'. Stop.
vi Makefile
#顶部添加
top_srcdir = ../..
make && make install
cd /usr/local/ruby-2.3.0
gem install redis
mkdir -p /etc/redis-cluster
mkdir -p /var/log/redis
mkdir -p /var/redis/7001
修改conf文件
port 7001
cluster-enabled yes
cluster-config-file /etc/redis-cluster/node-7001.conf(记录集群信息,不用手动维护,Redis Cluster 会自动维护))
cluster-node-timeout 15000 (Cluster 集群节点连接超时时间,如果集群规模小,都在同一个网络环境下,可以配置的短些,更快的做故障转移。))
daemonize yes
pidfile /var/run/redis_7001.pid
dir /var/redis/7001 (设置文件数据存储路径))
logfile /var/log/redis/7001.log (日志名称))
bind 192.168.1.103(当前服务器ip地址)
appendonly yes
cd /usr/local/redis-4.0.9/utils
#把 redis启动脚本下载下来名称修改成redis_7001
#修改内容
REDISPORT=7001
#赋予脚本权限
chmod 777 redis_7001
#启动各个节点
./redis_7001 start
cp /usr/local/redis-4.0.9/src/redis-trib.rb /usr/local/bin
redis-trib.rb create --replicas 1 192.168.1.103:7001 192.168.1.103:7002 192.168.1.104:7003 192.168.1.104:7004 192.168.1.105:7005 192.168.1.105:7006
#报错 Sorry, can't connect to node 192.168.X.X
用 ps _ef |grep redis查看了下,所有地址都是显示的127.0.0.1,
查看conf文件 bind 绑定了192.168.1.103 又绑定了127.0.0.1,将绑定127.0.0.1的注释,重启redis然后运行redis-trib.rb
连接 host写127.0.0.1 然后 shutdown, 再利用脚本文件重启
redis-cli -h host -p port -a password
#设置redis自启动
cd /etc/init.d
vi redis_7001
#添加下面两行注释
# chkconfig: 2345 90 10
# description: Redis is a persistent key-value database
chkconfig redis_7001 on (设置开机自启动)