redis安装

一 单机redis安装

首先下载redis到本机

wget http://download.redis.io/releases/redis-4.0.9.tar.gz

解压

tar -zxvf redis-4.0.9.tar.gz

切换到redis-4.0.9目录

cd redis-4.0.9

安装

make
make install PREFIX=/usr/local/redis   # PREFIX指定安装目录 

配置后台启动,将源文件中的redis.conf文件拷贝到redis安装目录中

sudo cp ~/redis-4.0.9/redis.conf /usr/local/redis/bin/

修改redis.conf配置文件

sudo vi /usr/local/redis/bin/redis.conf
# By default Redis does not run as a daemon. Use 'yes' if you need it.
# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
# 将daemonize no 修改为 daemonize yes
# daemonize no
daemonize yes

启动redis

cd /usr/local/redis/bin
sudo ./redis-server redis.conf

二 用redis实例模拟redis集群

安装ruby, centos7默认使用yum安装的ruby为2.0.6, 但是搭建redis4.0集群需要ruby版本大于2.2.2. 所以需要换源安装.

#会在/etc/yum.repos.d/目录下多出一个CentOS-SCLo-scl-rh.repo源
yum install centos-release-scl-rh
#直接yum安装即可
yum install rh-ruby23  -y 
#必要一步
scl  enable  rh-ruby23 bash
#查看安装版本
ruby -v    

接下来创建多个redis实例
首先创建文件夹并将先安装的redis拷贝出一个新的redis实例

sudo mkdir redis-cluster
sudo cp -r /usr/local/redis/bin/ /usr/local/redis-cluster/redis01

修改配置文件, 修改端口, 开启集群功能


# 修改端口,将端口修改为7001
# Accept connections on the specified port, default is 6379 (IANA #815344).
# If port 0 is specified Redis will not listen on a TCP socket.
# port 6379
port 7001

# 开启集群功能
# Normal Redis instances can't be part of a Redis Cluster; only nodes that are
# started as cluster nodes can. In order to start a Redis instance as a
# cluster node enable the cluster support uncommenting the following:
#
# cluster-enabled yes
cluster-enabled yes

将redis01复制出5个redis, 并修改配置文件, 修改端口

sudo cp -r redis01 redis02
sudo cp -r redis01 redis03
sudo cp -r redis01 redis04
sudo cp -r redis01 redis05
sudo cp -r redis01 redis06
# 修改端口
sudo vi ./redis02/redis.conf 
sudo vi ./redis03/redis.conf 
sudo vi ./redis04/redis.conf 
sudo vi ./redis05/redis.conf 
sudo vi ./redis06/redis.conf

创建6个redis实例的统一启动脚本

sudo vim start-all.sh

# 添加如下内容
cd ./redis01
sudo ./redis-server redis.conf
cd ..
cd ./redis02
sudo ./redis-server redis.conf
cd ..
cd ./redis03
sudo ./redis-server redis.conf
cd ..
cd ./redis04
sudo ./redis-server redis.conf
cd ..
cd ./redis05
sudo ./redis-server redis.conf
cd ..
cd ./redis06
sudo ./redis-server redis.conf
cd ..

# 修改权限
sudo chmod 755 start-all.sh

将redis-trib.rb拷贝到/usr/local/redis-cluster目录下

sudo cp /home/mejhwu2/redis-4.0.9/src/redis-trib.rb /usr/local/redis-cluster/

创建集群

sudo /usr/loca/redis-cluster/redis-trib.rb create --replicas 1 192.168.1.202:7001 192.168.1.202:7002 192.168.1.202:7003 192.168.1.202:7004 192.168.1.202:7005 192.168.1.202:7006

可能出现的错误

[ERR] Sorry, can't connect to node 192.168.1.202:7001

解决方法:
需要在配置文件中注释掉bind 127.0.0.1, 如果不注释掉的话,就只能127.0.0.1能够访问. 关闭protected-mode

# 注释 bind 127.0.0.1
# IF YOU ARE SURE YOU WANT YOUR INSTANCE TO LISTEN TO ALL THE INTERFACES
# JUST COMMENT THE FOLLOWING LINE.
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# bind 127.0.0.1

# 修改protected-mode
# By default protected mode is enabled. You should disable it only if
# you are sure you want clients from other hosts to connect to Redis
# even if no authentication is configured, nor a specific set of interfaces
# are explicitly listed using the "bind" directive.
# protected-mode yes
 protected-mode no

连接redis集群并测试

redis01/redis-cli -h 192.168.1.202 -p 7002 -c
192.168.1.202:7002> set a 100
-> Redirected to slot [15495] located at 192.168.1.202:7003
OK
192.168.1.202:7003> get a
"100"
192.168.1.202:7003> set hello
(error) ERR wrong number of arguments for 'set' command
192.168.1.202:7003> set hello hello
-> Redirected to slot [866] located at 192.168.1.202:7001
OK
192.168.1.202:7001> get hello
"hello"
192.168.1.202:7001> 

你可能感兴趣的:(redis安装)