Redis安装与集群部署
来源:互联网 发布:网络大电影预算表 编辑:程序博客网 时间:2024/05/28 16:16
- 安装
- apt-get包管理安装
- 安装
- 远程访问
- 源码编译安装
- 安装
- 启动
- apt-get包管理安装
- 配置集群
- 环境准备
- 安装ruby
- 修改配置文件
- 启动redis
- 组建集群
- 测试集群
- 存取测试
- 环境准备
安装
当前安装环境为:
- 系统:Ubuntu 14.04.4 LTS
- 单节:虚拟机单节点
- 地址:192.168.0.18
- 硬件:1核1G
apt-get包管理安装
安装
apt-get install redis-server
远程访问
使用包管理工具安装的redis默认是仅本机可访问,不支持远程访问的。所以需要修改redis的配置文件,取消绑定ip。
vi /etc/redis/redis.conf# 注释掉: bind 127.0.0.1这一行
源码编译安装
安装
源码编译安装其实只要完成编译工作,安装也就完成了。在编译过程中首先发现机器没有安装make工具,等把make装好后发现cc命令执行失败,所以又安装了gcc。等这些条件都准备好后,报了一个文件缺失的错误,网上查了一下,发现这是一个bug,好的是也给出了解决方案,这才顺利的完成编译过程。
# 源码下载wget http://download.redis.io/releases/redis-3.0.6.tar.gz# 解压tar xzf redis-3.0.6.tar.gz# 编译cd redis-3.0.6make MALLOC=libc# 直接执行make有可能会报错:fatal error: jemalloc/jemalloc.h# 无make模块的时候:apt-get install make# cc命令执行失败的时候:apt-get install gcc
启动
进入src目录,直接执行redis-server脚本即可以redis默认参数启动。另外也可以编写自定义配置文件,然后根据配置启动redis。
cd src./redis-server 或者 ./redis-server [configPath]
配置集群
环境准备
redis3.0以后开始支持集群,并提供了相关工具。集群工具位于源码src目录下的redis-trib.rb,该脚本是使用ruby书写的,所以当前环境还需要安装ruby。
安装ruby
apt-get install rubygem install redis
修改配置文件
默认配置文件仅能开启一个单节点redis,所以我们需要对配置文件做一定的修改。一下是配置集群的必须修改项。
cluster-enabled yescluster-config-file nodes.confcluster-node-timeout 5000appendonly yes
本次安装因为是单机多节点redis集群,而且每个节点都以守护进程模式启动。所以还需要修改pid文件和端口,已经启动模式。
daemonize yespidfile /var/run/redis0.pidport 6380
启动redis
本次集群计划6个redis实例:3个主节点,3个复制节点。端口分别位:6380,6381,6382,6383,6384,6385。
./redis-server ../shards/6380/shard.conf./redis-server ../shards/6381/shard.conf./redis-server ../shards/6382/shard.conf./redis-server ../shards/6383/shard.conf./redis-server ../shards/6384/shard.conf./redis-server ../shards/6385/shard.conf
组建集群
root@ubuntu:/opt/sbin/redis-3.0.6/src# ./redis-trib.rb create --replicas 1 127.0.0.1:6380 127.0.0.1:6381 127.0.0.1:6382 127.0.0.1:6383 127.0.0.1:6384 127.0.0.1:6385./redis-trib.rb:1573: warning: key "threshold" is duplicated and overwritten on line 1573>>> Creating cluster>>> Performing hash slots allocation on 6 nodes...Using 3 masters:127.0.0.1:6380127.0.0.1:6381127.0.0.1:6382Adding replica 127.0.0.1:6383 to 127.0.0.1:6380Adding replica 127.0.0.1:6384 to 127.0.0.1:6381Adding replica 127.0.0.1:6385 to 127.0.0.1:6382M: 1b85ea9b2e569906d6d6fb99ef59434690bb5314 127.0.0.1:6380 slots:0-5460 (5461 slots) masterM: 861172b6acc35c101eb349cf550a5f270b3b4260 127.0.0.1:6381 slots:5461-10922 (5462 slots) masterM: ac7155ff194714b67597c848d187d01c002fac91 127.0.0.1:6382 slots:10923-16383 (5461 slots) masterS: 8f1b32c678e136c2d5abba75c6b85d6c001ae297 127.0.0.1:6383 replicates 1b85ea9b2e569906d6d6fb99ef59434690bb5314S: 34ac1fc6237f84d7be105da86d7fc305757a8ae3 127.0.0.1:6384 replicates 861172b6acc35c101eb349cf550a5f270b3b4260S: 2b5e12e4ace97e8964abc5b596b065058f879086 127.0.0.1:6385 replicates ac7155ff194714b67597c848d187d01c002fac91Can I set the above configuration? (type 'yes' to accept): yes>>> Nodes configuration updated>>> Assign a different config epoch to each node>>> Sending CLUSTER MEET messages to join the clusterWaiting for the cluster to join...>>> Performing Cluster Check (using node 127.0.0.1:6380)M: 1b85ea9b2e569906d6d6fb99ef59434690bb5314 127.0.0.1:6380 slots:0-5460 (5461 slots) masterM: 861172b6acc35c101eb349cf550a5f270b3b4260 127.0.0.1:6381 slots:5461-10922 (5462 slots) masterM: ac7155ff194714b67597c848d187d01c002fac91 127.0.0.1:6382 slots:10923-16383 (5461 slots) masterM: 8f1b32c678e136c2d5abba75c6b85d6c001ae297 127.0.0.1:6383 slots: (0 slots) master replicates 1b85ea9b2e569906d6d6fb99ef59434690bb5314M: 34ac1fc6237f84d7be105da86d7fc305757a8ae3 127.0.0.1:6384 slots: (0 slots) master replicates 861172b6acc35c101eb349cf550a5f270b3b4260M: 2b5e12e4ace97e8964abc5b596b065058f879086 127.0.0.1:6385 slots: (0 slots) master replicates ac7155ff194714b67597c848d187d01c002fac91[OK] All nodes agree about slots configuration.>>> Check for open slots...>>> Check slots coverage...[OK] All 16384 slots covered.
测试集群
存取测试
root@ubuntu:~# redis-cli -c -h 192.168.0.18 -p 6380192.168.0.18:6380> set name kim-> Redirected to slot [5798] located at 127.0.0.1:6381OK127.0.0.1:6381> set bllow 192.168.0.1-> Redirected to slot [12497] located at 127.0.0.1:6382OK127.0.0.1:6382> set cat tom-> Redirected to slot [1075] located at 127.0.0.1:6380OK
阅读全文
0 0
- Redis安装与集群部署
- Redis集群安装部署
- redis集群安装部署
- Redis集群部署与测试
- redis安装与部署
- Redis部署与安装
- redis安装与部署
- redis安装与部署
- Redis(Sentinel)监控集群安装部署
- 安装部署master加密的redis集群
- Redis 单机/集群离线安装部署
- Redis-3.2.8的集群安装部署
- redis集群部署rvm安装问题
- redis 集群安装与配置
- redis 集群安装与使用
- redis与redis集群的安装
- Redis的安装与部署
- Redis下载、安装与部署
- SAP创建物料主数据(维护长文本,质量视图中质量类型,分类视图)
- 如何使用RedisTemplate访问Redis数据结构
- inline;strlen&sizeof
- 接口与实现:接口回调与接口多态
- 一只node爬虫的升级打怪之路
- Redis安装与集群部署
- 跳台阶问题
- Android实战系列(三)---级联菜单
- H264 数据帧理解(转载总结)
- 本地Git服务器的搭建及使用
- OpenCV入门初体验
- 5、SSM整合方式二--图文并茂详细版
- Mysql悲观锁和乐观锁的总结与实践
- JavaScript面向对象编程——类(笔记)