Redis入门之Redis 安装超详细文档

来源:互联网 发布:a卡 mac dsdt hdmi 编辑:程序博客网 时间:2024/04/19 09:39
1、由于所在linux不能上网,需要提前准备好安装包  
    1) redis-3.0.5.tar.gz (集群安装包) 注:redis 集群是在 3.0 版本以后才有的,需要下载3.0 以上版本
    2)ruby-2.2.2.tar.gz
    3)rubygems-2.4.2.tgz
2、安装redis
    1)解压 redis-3.0.5.tar.gz
    2)安装软件时,安装的默认路径是 /usr/local/bin目录下,如果想更改为其他安装目录,可使用PREFIX参数修改:
    PREFIX=/usr/local/redis
    我的安装目录即为  /usr/local/redis/bin
    3)在源文件目录下执行  make && make install 
    即在 /usr/local/redis/redis-3.0.5 下面执行  make PREFIX=/usr/local/redis && make install  PREFIX=/usr/local/redis
    或者也可执行 make PREFIX=/usr/local/redis install 

安装成功后:
   
3、安装ruby
    1)解压 文件ruby-2.2.2.tar.gz       tar -zxvf ruby-2.2.2.tar.gz
    2)执行命令  ./configure -prefix=/usr/local/ruby
    3)执行命令 make 
    4)执行命令 make install       3 和 4 也可一块  make && make install
    5)设置环境变量
    echo "export PATH=/usr/local/ruby/bin:$PATH >> /root/.bash_profile"
    source /root/.bash_profile
    6)安装 zlib 扩展包    此目录  /usr/local/ruby/ruby-2.2.2/ext/zlib  下执行 sudo ruby extconf.rb
    7)执行命令 make
    8)执行命令 sudo make install
4、安装 rubygems
    1)解压缩文件 rubygems-2.4.2.tgz
    2)进入/usr/local/rubygems/rubygems-2.4.2
    3)ruby setup.rb
    4)gem --version
    
5、安装redis集群ruby扩展包
需要先下载 redis-3.2.1.gem
 sudo gem install -l redis-3.2.1.gem
 
6、配置文件
    1)在 /usr/local/redis 目录下 建立文件夹  redisCluster  建立子文件夹 redisCluster/redis-6000 redisCluster/redis-6001 redisCluster/redis-6002 redisCluster/redis-6003 redisCluster/redis-6004 redisCluster/redis-6005
    2)修改配置文件
    修改 /usr/local/redis/redis-3.0.5 目录下的 redis.conf 
    port 6000   -- 端口  分别是  6000  6001  6002 6003 6004 6005
    cluster-enabled yes  -- 开启redis集群
    cluster-config-file nodes-6000.conf -- 设置集群配置文件名称
    cluster-node-timeout 5000  -- 集群节点超时时间
     appendonly yes  -- 是否开启appendonlylog,开启的话每次写操作会记一条log,这会提高数据抗风险能力,但影响效率
    daemonize  yes -- 后台执行
    logfile "/usr/local/redis/redisCluster/redis-6002 /log/redis01.log"       --日志文件
   loglevel notice   --日志级别
    dbfilename dump-6000.rdb
    requirepass foobared -- redis 密码

下面是redis.conf的主要配置参数的意义:

  • daemonize:是否以后台daemon方式运行
  • pidfile:pid文件位置
  • port:监听的端口号
  • timeout:请求超时时间
  • loglevel:log信息级别
  • logfile:log文件位置
  • databases:开启数据库的数量
  • save * *:保存快照的频率,第一个*表示多长时间,第三个*表示执行多少次写操作。在一定时间内执行一定数量的写操作时,自动保存快照。可设置多个条件。
  • rdbcompression:是否使用压缩
  • dbfilename:数据快照文件名(只是文件名,不包括目录)
  • dir:数据快照的保存目录(这个是目录)
  • appendonly:是否开启appendonlylog,开启的话每次写操作会记一条log,这会提高数据抗风险能力,但影响效率。
  • appendfsync:appendonlylog如何同步到磁盘(三个选项,分别是每次写都强制调用fsync、每秒启用一次fsync、不调用fsync等待系统自己同步)

配置文件也可参考以下配置:
    redis-commn.conf  redis 通用配置文件
  1. #GENERAL  
  2. daemonize no  
  3. tcp-backlog 511  
  4. timeout 0  
  5. tcp-keepalive 0  
  6. loglevel notice  
  7. databases 16  
  8. dir /opt/redis/data  
  9. slave-serve-stale-data yes  
  10. #slave只读  
  11. slave-read-only yes  
  12. #not use default  
  13. repl-disable-tcp-nodelay yes  
  14. slave-priority 100  
  15. #打开aof持久化  
  16. appendonly yes  
  17. #每秒一次aof写  
  18. appendfsync everysec  
  19. #关闭在aof rewrite的时候对新的写操作进行fsync  
  20. no-appendfsync-on-rewrite yes  
  21. auto-aof-rewrite-min-size 64mb  
  22. lua-time-limit 5000  
  23. #打开redis集群  
  24. cluster-enabled yes  
  25. #节点互连超时的阀值  
  26. cluster-node-timeout 15000  
  27. cluster-migration-barrier 1  
  28. slowlog-log-slower-than 10000  
  29. slowlog-max-len 128  
  30. notify-keyspace-events ""  
  31. hash-max-ziplist-entries 512  
  32. hash-max-ziplist-value 64  
  33. list-max-ziplist-entries 512  
  34. list-max-ziplist-value 64  
  35. set-max-intset-entries 512  
  36. zset-max-ziplist-entries 128  
  37. zset-max-ziplist-value 64  
  38. activerehashing yes  
  39. client-output-buffer-limit normal 0 0 0  
  40. client-output-buffer-limit slave 256mb 64mb 60  
  41. client-output-buffer-limit pubsub 32mb 8mb 60  
  42. hz 10  
  43. aof-rewrite-incremental-fsync yes 
redis 各个端口配置文件
  1. #包含通用配置  
  2. include /opt/redis/redis-common.conf  
  3. #监听tcp端口  
  4. port 6379  
  5. #最大可用内存  
  6. maxmemory 100m  
  7. #内存耗尽时采用的淘汰策略:  
  8. volatile-lru -> remove the key with an expire set using an LRU algorithm  
  9. # allkeys-lru -> remove any key accordingly to the LRU algorithm  
  10. volatile-random -> remove a random key with an expire set  
  11. # allkeys-random -> remove a random key, any key  
  12. volatile-ttl -> remove the key with the nearest expire time (minor TTL)  
  13. # noeviction -> don't expire at all, just return an error on write operations  
  14. maxmemory-policy allkeys-lru  
  15. #aof存储文件  
  16. appendfilename "appendonly-6379.aof"  
  17. #rdb文件,只用于动态添加slave过程  
  18. dbfilename dump-6379.rdb  
  19. #cluster配置文件(启动自动生成)  
  20. cluster-config-file nodes-6379.conf  
  21. #部署在同一机器的redis实例,把<span style="font-size: 1em; line-height: 1.5;">auto-aof-rewrite搓开,防止瞬间fork所有redis进程做rewrite,占用大量内存</span>  
  22. auto-aof-rewrite-percentage 80-100 

7) 启动节点
./redis-server /usr/local/redis/redisCluster/redis-6004/redis.conf

查看节点启动情况 ps -ef|grep redis 


8)使用自带的ruby工具(redis-trib.rb)构建集群
在 /usr/local/redis/redis-3.0.5/src 目录下执行以下命令:
./redis-trib.rb  create --replicas 1 10.0.50.11:6000   10.0.50.11:6001   10.0.50.11:6002   10.0.50.11:6003   10.0.50.11:6004   10.0.50.11:6005
  1. #redis-trib.rb的create子命令构建  
  2. #--replicas 则指定了为Redis Cluster中的每个Master节点配备几个Slave节点  
  3. #节点角色由顺序决定,先master之后是slave(为方便辨认,slave的端口比master大1000)  

 

9)检查集群状态,
  1. #redis-trib.rb的check子命令构建  
  2. #ip:port可以是集群的任意节点  
  3. redis-trib.rb check 10.0.50.11:6000
输出信息:
 
由于 图片 看不见详细可参考文档:
http://download.csdn.net/detail/ningxuezhu/9364321
参考:
http://blog.csdn.net/myrainblues/article/details/25881535
http://blog.csdn.net/lifeiaidajia/article/details/45370377
http://www.cnblogs.com/shanyou/archive/2012/01/28/2330451.html
http://blog.csdn.net/cynhafa/article/details/38371037
http://www.2cto.com/database/201506/404046.html

所需资源包:
ruby-2.2.2.tar.gzhttp://download.csdn.net/detail/ningxuezhu/9364403   
redis-3.0.5.tar.gz:http://download.csdn.net/detail/ningxuezhu/9364345
rubygems-2.4.2.tgz  redis-3.2.1.gem : 
http://download.csdn.net/detail/ningxuezhu/9364417
0 0
原创粉丝点击