Linux 安装redis 集群

Linux环境安装redis集群node

[TOC]linux

安装环境

系统:CentOS release 6.5 (Final)redis

环境要求:数据库

​ gcc;vim

​ Ruby:ruby

​ Rubygems:bash

​ redis-3.X (须要3.0以上版本支持集群)服务器

注意:我测试时链接外网了,若是没有链接外网就须要离线下载所需的依赖,而后上传安装app

安装单个redis

注意:这里须要gcc和ruby的环境。安装前须要检查系统是否有gcc和ruby的环境:curl

  • gcc环境

    gcc用来编译redis的源码,使用gcc -v 查看,

  • ruby 环境

    ruby 用来执行集群的命名,使用ruby -v,gem -v 查看:

安装好上述两个依赖后,如今安装redis.

  1. 建立存放安装包的文件夹,makdir redis。而后cd到该目录,上传下载好的tar.gz文件。而后,执行解压命令
tar zxvf redis-3.2.12.tar.gz

  1. cd到redis的解压目录,而后执行make && make install 命令安装:

    $ cd /home/redis/redis-3.2.12
    $ make && make install  //make 这里若是不指定PREFIX,默认将安装在/usr/local/bin下,保持默认就好

安装成功后,出现以下图:

也能够在/usr/local/bin下查看redis的安装文件。

  1. cd到解压目录,指定配置文件启动。

    redis-server redis.conf

注意,这里启动的redis不是后台启动,退出会话后redis会自动退出。一般单机redis咱们须要修改以下配置:

daemonize yes  //默认不是以守护进程的方式运行,能够经过该配置项修改,使用yes启用守护进程
 requirepass foobared   //设置客户端链接密码
 port 6379  //指定端口
 bind 127.0.0.1  //绑定的主机地址,若是须要远程链接,则需修改该参数
 protected-mode  yes // 保护模式,若是须要远程链接,则须要修改该参数

安装Redis集群

安装集群至少须要三个主节点,三个对应的从节点。防止某个节点挂掉,其余两个节点能够推举其对应得从节点为主节点,必定程度的容错。

这里在同一台机器上安装,生产环境至少须要三台机器安装。建立6个文件分别存放配置信息,文件夹名以端口命名。好比7001-7006。

  1. 使用mkdir命令批量建立文件夹。

  1. 而后咱们须要在安装目录复制redis-cli、redis-server、redis.conf 三个配置文件到每一个文件夹,用来启动单个redis. 若是安装时没有指定目录,则默认在usr/local/bin 目录下复制redis-cli、redis-server文件,redis.conf在解压的目录能够复制,也能够本身建立。

在复制redis.conf配置文件

  1. 修改每一个redis.conf文件
bind 0.0.0.0   //0.0.0.0表示容许全部链接
protected-mode no //保护模式,yes表示不容许远程链接
port 7001  //端口,这里每一个配置文件不一样
daemonize yes  //之后台方式启动
appendonly yes   //redis 将每一次写操做请求都追加到appendonly.aof 文件中redis从新启动时,会从							该文件恢复出以前的状态。
cluster-enabled yes  //启用集群
cluster-node-timeout 5000  //节点超时时间
  1. 在每一个文件下执行redis-server redis.conf 命令。这个能够建立脚本执行比较快。
vim startall.sh 就会打开vim编辑器,建立一个空的文本

这里我每一个分别启动,脚本执行不起做用(心累)

  1. 此时,咱们进入解压的目录src下,复制redis-trib.rb 文件到redis目录;

  2. 在redis目录执行命令:

    注意:这里--replicas 1 表示每一个主数据库拥有从数据库个数为1。master节点不能少于3个。

    若是须要远程访问,这里的命令中127.0.0.1 须要换成服务器的ip地址。不然不能远程访问。

    ./redis-trib.rb  create --replicas  1  127.0.0.1:7001  127.0.0.1:7002  127.0.0.1:7003  127.0.0.1:7004  127.0.0.1:7005  127.0.0.1:7006

各类报错解决

执行./redis-trib.rb create --replicas 命令后报错:

而后,ruby-v 和gem -v 查看ruby环境发现都已经安装了。其实这个错误是缺乏redis对ruby的接口,咱们须要下载redis的gem包;

执行命令:gem install redis 有报错了。

ruby版本过低了。。。。

执行以下命令安装rvm,用他来安装ruby更新的版本:

//具体RVM安装命令地址:http://rvm.io/
  [root@linux ~]# gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB 

  [root@linux ~]# curl -sSL https://get.rvm.io | bash -s stable

  [root@linux ~]# find / -name rvm -print
  [root@linux ~]# source /usr/local/rvm/scripts/rvm

安装好rvm,就能够看到不少rvm的文件。

 

设置默认的ruby版本

 

在执行gem install redis,就会安装成功了。

gem install redis

接下来执行命令安装集群:

./redis-trib.rb  create --replicas  1  127.0.0.1:7001  127.0.0.1:7002  127.0.0.1:7003  127.0.0.1:7004  127.0.0.1:7005  127.0.0.1:7006

输入yes,回车。

终于成功了,显示显示的主从节点信息。

集群测试

切换到任意的节点目录下,链接添加数据测试:

redis-cli -p 7001  -c

这里就能够看到set name 集群已经hash了key分布在哪一个槽上,自动跳转到对应的节点上。

相关文章
相关标签/搜索