阅读本文必要先读书安装Redis<准备>

开卷本文需求先读书澳门金沙国际,安装Redis<准备>

背景知识

1.下载安装

 1.
官网 下载最新的一往直前版本,那里是三.二.0

 2. sudu mv 到 /usr/local/

 叁. sudo tar -zxf redis-三.2.0.tar 解压文件

 四. 进入解压后的目录 cd
redis-三.二.0

 伍. sudo make test 测试编写翻译

澳门金沙国际 1

 6. sudo make install 

澳门金沙国际 2

 

  安装成功!

 

redis依赖

壹 架构细节

行使Mac远程访问,搭建单机Redis。安装Redis

  1. 条件介绍
  • 机器:ip:拾.50.八.60 暗中同意宽口
  • 版本:redis-4.0.1
  1. 搭建步骤步骤
    a. 下载安装包

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

b.将下载的压缩包放到/usr/local目录下,之后解压

mv redis-4.0.1.tar.gz /usr/local
进到/usr/local目录下
cd /usr/local
/usr/local tar -zxvf redis-4.0.1.tar.gz

c. 解压之后进到/usr/local/redis-4.0.1目录下

cd redis-4.0.1
/usr/local/redis-4.0.1 make PREFIX=/usr/local/redis install

d.
将/usr/local/redis-肆.0.一目录下的redis.conf文件复制到/usr/local/redis/bin目录下

/usr/local/redis cp /usr/local/redis-4.0.1/redis.conf
/usr/local/redis/bin

e.启动redis

  • 前者运维情势
    一向运行bin/redis-server将从前端形式运行,前端情势运转的毛病是ssh窗口关闭后,redis-serve程序甘休,不推荐使用此措施

bin/ ./redis-server

  • 后端运维情势
    修改配置文件
    进入/usr/local/redis/bin目录下,修改redis.comf

/usr/local/redis/bin vim redis.conf

将配置项demonize no 改成 demonize yes ,redis将从此端方式运转
实践以下命令

/usr/local/redis/bin ./bin/redis-server &

redis已启动

检查Redis是还是不是运营成功

ps -ef | grep redis

f.连接Redis客户

/usr/local/redis/bin/redis-cli

g.关闭redis
粗犷终止redis进程可能会招致Redis持久化数据丢失。所以应当利用shutdown命令

cd /usr/local/redis
./bin/redis-cli shutdown

涉及的Linux命令
install:用作安装、进级软件或数据备份
make:编写翻译命令

待完善

二. 服务配置

  切换到root用户

  一. /usr/local
起家有关目录    

    sudo mkdir  /usr/local/redis/bin    
                          

    sudo mkdir
 /usr/local/redis/etc

    sudo mkdir
 /usr/local/redis/db

  2. 拷贝/usr/local 下的 bin
目录到 /usr/local/redis/bin

    sudo cp /usr/local/bin
/usr/local/redis/bin

  3. 拷贝/usr/local/redis/redis-3.2.0/src
下的 mkreleasehdr.sh  到  /usr/local/redis/bin下 

    sudo cp /usr/local/redis3.2.0/src
/mkreleasehdr.sh /usr/local/redis/mkreleasehdr.sh

 
  澳门金沙国际 3

  4. 拷贝 redis.conf 到 /usr/local/redis/etc下    

     sudo cp /usr/local/redis-3.2.0/redis.conf /usr/local/redis/etc 

 

  5. 修改 redis.conf

     vim redis.conf

   

#修改为守护模式
daemonize yes
#设置进程锁文件
pidfile /usr/local/redis/redis.pid
#端口
port 6379
#客户端超时时间
timeout 300
#日志级别
loglevel debug
#日志文件位置
logfile /usr/local/redis/log-redis.log
#设置数据库的数量,默认数据库为0,可以使用SELECT <dbid>命令在连接上指定数据库id
databases 8
##指定在多长时间内,有多少次更新操作,就将数据同步到数据文件,可以多个条件配合
#save <seconds> <changes> 
#Redis默认配置文件中提供了三个条件:
save 900 1
save 300 10
save 60 10000
#指定存储至本地数据库时是否压缩数据,默认为yes,Redis采用LZF压缩,如果为了节省CPU时间,
#可以关闭该#选项,但会导致数据库文件变的巨大
rdbcompression yes
#指定本地数据库文件名
dbfilename dump.rdb
#指定本地数据库路径
dir /usr/local/redis/db/
#指定是否在每次更新操作后进行日志记录,Redis在默认情况下是异步的把数据写入磁盘,如果不开启,可能
#会在断电时导致一段时间内的数据丢失。因为 redis本身同步数据文件是按上面save条件来同步的,所以有
#的数据会在一段时间内只存在于内存中
appendonly no
#指定更新日志条件,共有3个可选值: 
#no:表示等操作系统进行数据缓存同步到磁盘(快) 
#always:表示每次更新操作后手动调用fsync()将数据写到磁盘(慢,安全) 
#everysec:表示每秒同步一次(折衷,默认值)
appendfsync everysec

  

    陆. 修改权限为近期使用者 xxx

    chown -R xxxx /usr/local/redis 

 

     七.初叶服务

     cd /usr/local/redis

    ./bin/redis-server ./etc/redis.conf

 

     捌.访问服务

     cd /usr/local/redis

     ./bin/redis-cli

  yum install gcc-c++

不无的redis节点相互互联(PING-PONG机制)
内部选拔贰进制协议优化传输速度和带宽

解压

节点的fail是透过集群中中国足球球组织一流联赛越50%的节点检验失效时才生效

  cd redis压缩包所在目录

客户端与redis节点直连 不须要中间代理层 客户端不须要连续集群具有节点
连接集群中其余三个可用节点就能够

  tar -xvf redis-4.0.10.tar.gz

redis-cluster把全体的情理节点映射到[0-16383]slot上
cluster负责维护(redis集群中置放了163八伍个哈希槽
当须求在redis集群中放置一个key-value时
redis先对key使用crc1陆算法算出多少个结实 然后把结果对163八四求余数
那样各样key都会相应五个号码在0-163捌3以内的哈希槽
redis会依照节点数量大意均等的将哈希槽映射到差别的节点)

编译

澳门金沙国际 4

  cd redis解压包内部 -> cd /hy/redis-4.0.10

澳门金沙国际 5

  make

redis集群中足足应当有几个节点 要保障集群的高可用
供给各种节点有多个备份机

  make install PREFIX=/usr/local/redis

redis集群至少要求陆台服务器

布置文件准备

此地小编准备了陆台服务器

  cp /hy/redis-4.0.10/redis.conf /usr/local/redis/bin

120.79.191.xxx  39.108.121.xxx  120.77.148.xxx  39.108.162.xxx  120.79.62.xxx  112.74.54.xxx

编辑(根据key修改value)

 

  vim /usr/local/redis/bin/redis.conf

二在陆台服务器上各自安装运维Redis

# 注释掉bind
# bind 127.0.0.1
# 设置后台启动
daemonize yes
# 设置单机密码
requirepass redis12345

redis依赖

进入bin目录

  yum install gcc-c++

  cd /usr/local/redis/bin

解压

  启动

  cd redis压缩包所在目录

    ./redis-server redis.conf

  tar -xvf redis-4.0.10.tar.gz

  关闭

编译

    ./redis-cli -a redis12345 shutdown

  cd redis解压包内部 -> cd /hy/redis-四.0.十

澳门金沙国际 6

  make

 

  make install PREFIX=/usr/local/redis

配备文件准备

  cp /hy/redis-4.0.10/redis.conf /usr/local/redis/bin

编辑(根据key修改value)

  vim /usr/local/redis/bin/redis.conf

# 注释掉bind
# bind 127.0.0.1
# 设置后台启动
daemonize yes
# 设置集群密码
masterauth redis12345
# 设置单机密码
requirepass redis12345
# 开启集群
cluster-enabled yes
# 设置集群节点超时
cluster-node-timeout 15000

进入bin目录

  cd /usr/local/redis/bin

启动

  ./redis-server redis.conf

 

三 选择个中一台服务器配置集群

ruby环境

  yum install curl

  curl -L get.rvm.io | bash -s stable

  gpg –keyserver hkp://keys.gnupg.net –recv-keys
409B6B1796C275462A1703113804BB82D39DC0E3

  \curl -sSL | bash -s stable

  source ~/.bashrc

  source ~/.bash_profile

  source /usr/local/rvm/scripts/rvm

  rvm list known

  rvm install 2.5.1

  rvm use 2.5.1

澳门金沙国际 7

安装ruby脚本库

  cd ruby脚本库压缩包所在目录

  gem install redis-4.0.1.gem

编辑(根据key修改value)

  vim
/usr/local/rvm/gems/ruby-2.5.1/gems/redis-4.0.1/lib/redis/client.rb

:host => "0.0.0.0",
:password => "redis12345",

本子文件准备

  cp /hy/redis-4.0.10/src/redis-trib.rb /usr/local/redis/bin

推行脚本命令

  cd /usr/local/redis/bin

  ./redis-trib.rb create –replicas 1 120.79.191.xxx:6379
39.108.121.xxx:6379 120.77.148.xxx:6379 39.108.162.xxx:6379
120.79.62.xxx:6379 112.74.54.xxx:6379

 

四 化解大坑

情景: 使用./redis-cli存取数据没难题使用JedisCluster存取数据时好时坏(部分key会导致Could not get a resource
from the pool)

原因: redis集群中或多或少节点IP是私家IP 所以分配到该节点上的key是造访不到的

化解办法 -> 在陆台服务器上个别修改配置

  进入bin目录

    cd /usr/local/redis/bin

  关闭

    ./redis-cli -a redis12345 shutdown

  编辑(将富有节点私有IP换来公网IP 重点关切myself,master或myself,slave
注意每份配置文件要修改的IP不均等)

    vim /usr/local/redis/bin/nodes.conf

  启动

    ./redis-server redis.conf

期望道友早日看到 真是大坑…

 

相关文章