Redis-Cluster实战--4.官方安装(含视频)

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
简介: 转载请注明出处哈:http://carlosfu.iteye.com/blog/2240426     一、准备redis(下载、编译、安装、配置目录、数据目录) 1. 下载、编译、安装 cd /opt/soft wget http://download.

转载请注明出处哈:http://carlosfu.iteye.com/blog/2240426


   

一、准备redis(下载、编译、安装、配置目录、数据目录)

1. 下载、编译、安装

cd /opt/soft
wget http://download.redis.io/releases/redis-3.0.3.tar.gz
tar xzf redis-3.0.3.tar.gz
cd redis-3.0.3
make
make install

 

2. 配置目录、数据目录

cd /opt/soft/redis-3.0.3
mkdir -p data
mkdir -p conf

 

3.建立软链接:

ln -s /opt/soft/redis-3.0.3 /opt/soft/redis

 

 

二、配置、启动Redis节点(本例子以3主、3从组成Redis-Cluster)

 

(1) 配置redis节点,在conf目录下添加6个(7000-7005)redis-${port}.conf作为6个节点的配置文件

      其中7000-7005是六个端口号

port 7000
cluster-enabled yes
cluster-config-file nodes-7000.conf
cluster-node-timeout 5000
dir "/opt/soft/redis/data/"
appendonly yes
appendfilename "appendonly-7000.aof"
daemonize yes

 

生成另外5个文件

sed 's/7000/7001/g' redis-7000.conf > redis-7001.conf
sed 's/7000/7002/g' redis-7000.conf > redis-7002.conf
sed 's/7000/7003/g' redis-7000.conf > redis-7003.conf
sed 's/7000/7004/g' redis-7000.conf > redis-7004.conf
sed 's/7000/7005/g' redis-7000.conf > redis-7005.conf

  

 

(2) 启动6个节点。

redis-server /opt/soft/redis/conf/redis-7000.conf
redis-server /opt/soft/redis/conf/redis-7001.conf
redis-server /opt/soft/redis/conf/redis-7002.conf
redis-server /opt/soft/redis/conf/redis-7003.conf
redis-server /opt/soft/redis/conf/redis-7004.conf
redis-server /opt/soft/redis/conf/redis-7005.conf

 

 

查看节点是否都已经启动:

[@zw_53_162 conf]# 
[@zw_53_162 conf]# ps -ef | grep redis
root 26007 1 0 21:56 ? 00:00:00 redis-server *:7000 [cluster] 
root 26011 1 0 21:56 ? 00:00:00 redis-server *:7001 [cluster] 
root 26019 1 0 21:56 ? 00:00:00 redis-server *:7002 [cluster] 
root 26023 1 0 21:56 ? 00:00:00 redis-server *:7003 [cluster] 
root 26033 1 0 21:56 ? 00:00:00 redis-server *:7004 [cluster] 
root 26047 1 0 21:56 ? 00:00:00 redis-server *:7005 [cluster]

 

 

查看单个节点:(此时六个节点是分散的,没有形成集群,所有cluster_state=fail)

 

[@zw_53_162 conf]# redis-cli -c -p 7000
127.0.0.1:7000> cluster info
cluster_state:fail
cluster_slots_assigned:0
cluster_slots_ok:0
cluster_slots_pfail:0
cluster_slots_fail:0
cluster_known_nodes:1
cluster_size:0
cluster_current_epoch:0
cluster_my_epoch:0
cluster_stats_messages_sent:0
cluster_stats_messages_received:0

 

 

三、使用Redis-Cluster的Ruby工具完成集群的搭建:

 

/opt/soft/redis/src/redis-trib.rb create --replicas 1 127.0.0.1:7000 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

 

   安装信息:

>>> Creating cluster
# ping所有节点,如果有一个不OK,安装就结束了。
Connecting to node 127.0.0.1:7000: OK
Connecting to node 127.0.0.1:7001: OK
Connecting to node 127.0.0.1:7002: OK
Connecting to node 127.0.0.1:7003: OK
Connecting to node 127.0.0.1:7004: OK
Connecting to node 127.0.0.1:7005: OK
# 主从节点确认
>>> Performing hash slots allocation on 6 nodes...
Using 3 masters:
127.0.0.1:7000
127.0.0.1:7001
127.0.0.1:7002
Adding replica 127.0.0.1:7003 to 127.0.0.1:7000
Adding replica 127.0.0.1:7004 to 127.0.0.1:7001
Adding replica 127.0.0.1:7005 to 127.0.0.1:7002
M: 11e6c12da2521b1877c93cf64437af23b21889b3 127.0.0.1:7000
 slots:0-5460 (5461 slots) master
M: cee69d4f42bce422e864e0324679f1fbf7506dba 127.0.0.1:7001
 slots:5461-10922 (5462 slots) master
M: 32ff9de3a4bcdc9423fdf269b0d1588d50fd18e3 127.0.0.1:7002
 slots:10923-16383 (5461 slots) master
S: 0e5d897a3be6033ef6733fc37a974124e9e89cc8 127.0.0.1:7003
 replicates 11e6c12da2521b1877c93cf64437af23b21889b3
S: b294779edee369c669c44848d71d599c42a0bfe8 127.0.0.1:7004
 replicates cee69d4f42bce422e864e0324679f1fbf7506dba
S: f57f64229b6a7501d42bd70192eec4acd56422d6 127.0.0.1:7005
 replicates 32ff9de3a4bcdc9423fdf269b0d1588d50fd18e3
Can I set the above configuration? (type 'yes' to accept): yes(人工确认安装是否成功)
 #meet
>>> Nodes configuration updated
>>> Assign a different config epoch to each node
>>> Sending CLUSTER MEET messages to join the cluster
Waiting for the cluster to join..
>>> Performing Cluster Check (using node 127.0.0.1:7000)
#分配slots
M: 11e6c12da2521b1877c93cf64437af23b21889b3 127.0.0.1:7000
 slots:0-5460 (5461 slots) master
M: cee69d4f42bce422e864e0324679f1fbf7506dba 127.0.0.1:7001
 slots:5461-10922 (5462 slots) master
M: 32ff9de3a4bcdc9423fdf269b0d1588d50fd18e3 127.0.0.1:7002
 slots:10923-16383 (5461 slots) master
M: 0e5d897a3be6033ef6733fc37a974124e9e89cc8 127.0.0.1:7003
 slots: (0 slots) master
 replicates 11e6c12da2521b1877c93cf64437af23b21889b3
M: b294779edee369c669c44848d71d599c42a0bfe8 127.0.0.1:7004
 slots: (0 slots) master
 replicates cee69d4f42bce422e864e0324679f1fbf7506dba
M: f57f64229b6a7501d42bd70192eec4acd56422d6 127.0.0.1:7005
 slots: (0 slots) master
 replicates 32ff9de3a4bcdc9423fdf269b0d1588d50fd18e3
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.

  

确认集群是否安装成功:

[@zw_53_162 redis]# redis-cli -c -p 7000
127.0.0.1:7000> cluster info
cluster_state:ok
cluster_slots_assigned:16384
cluster_slots_ok:16384
cluster_slots_pfail:0
cluster_slots_fail:0
cluster_known_nodes:6
cluster_size:3
cluster_current_epoch:6
cluster_my_epoch:1
cluster_stats_messages_sent:985
cluster_stats_messages_received:985

 

 查看slots使用情况:

127.0.0.1:7000> cluster slots
1) 1) (integer) 5461
 2) (integer) 10922
 3) 1) "127.0.0.1"
 2) (integer) 7001
 4) 1) "127.0.0.1"
 2) (integer) 7004
2) 1) (integer) 10923
 2) (integer) 16383
 3) 1) "127.0.0.1"
 2) (integer) 7002
 4) 1) "127.0.0.1"
 2) (integer) 7005
3) 1) (integer) 0
 2) (integer) 5460
 3) 1) "127.0.0.1"
 2) (integer) 7000
 4) 1) "127.0.0.1"
 2) (integer) 7003

  

四、完整安装视频:

 

见附件。

 

 

 

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
2月前
|
NoSQL 数据可视化 Linux
redis学习四、可视化操作工具链接 centos redis,付费Redis Desktop Manager和免费Another Redis DeskTop Manager下载、安装
本文介绍了Redis的两个可视化管理工具:付费的Redis Desktop Manager和免费的Another Redis DeskTop Manager,包括它们的下载、安装和使用方法,以及在使用Another Redis DeskTop Manager连接Redis时可能遇到的问题和解决方案。
133 1
redis学习四、可视化操作工具链接 centos redis,付费Redis Desktop Manager和免费Another Redis DeskTop Manager下载、安装
|
29天前
|
存储 SQL 关系型数据库
2024Mysql And Redis基础与进阶操作系列(1)作者——LJS[含MySQL的下载、安装、配置详解步骤及报错对应解决方法]
Mysql And Redis基础与进阶操作系列(1)之[MySQL的下载、安装、配置详解步骤及报错对应解决方法]
|
2月前
|
NoSQL 关系型数据库 MySQL
MySQL与Redis协同作战:优化百万数据查询的实战经验
【10月更文挑战第13天】 在处理大规模数据集时,传统的关系型数据库如MySQL可能会遇到性能瓶颈。为了提升数据处理的效率,我们可以结合使用MySQL和Redis,利用两者的优势来优化数据查询。本文将分享一次实战经验,探讨如何通过MySQL与Redis的协同工作来优化百万级数据统计。
63 5
|
2月前
|
缓存 NoSQL Java
Spring Boot与Redis:整合与实战
【10月更文挑战第15天】本文介绍了如何在Spring Boot项目中整合Redis,通过一个电商商品推荐系统的案例,详细展示了从添加依赖、配置连接信息到创建配置类的具体步骤。实战部分演示了如何利用Redis缓存提高系统响应速度,减少数据库访问压力,从而提升用户体验。
92 2
|
2月前
|
NoSQL Ubuntu Linux
Redis 安装
10月更文挑战第14天
57 1
|
20天前
|
NoSQL 编译器 Linux
【赵渝强老师】Redis的安装与访问
本文基于Redis 6.2版本,详细介绍了在CentOS 7 64位虚拟机环境中部署Redis的步骤。内容包括安装GCC编译器、创建安装目录、解压安装包、编译安装、配置文件修改、启动服务及验证等操作。视频讲解和相关图片帮助理解每一步骤。
|
2月前
|
NoSQL Linux Redis
Docker学习二(Centos):Docker安装并运行redis(成功运行)
这篇文章介绍了在CentOS系统上使用Docker安装并运行Redis数据库的详细步骤,包括拉取Redis镜像、创建挂载目录、下载配置文件、修改配置以及使用Docker命令运行Redis容器,并检查运行状态和使用Navicat连接Redis。
273 3
|
2月前
|
NoSQL Linux Shell
Redis 的安装与部署(图文)
Redis 的安装与部署(图文)
|
存储 缓存 NoSQL
Redis实战之入门进阶到精通
Redis 是一个远程内存数据库,它不仅性能强劲,而且还具有复制特性以及为解决问题而生的独一无二的数据模型。Redis 提供了 5 种不同类型的数据结构,各式各样的问题都可以很自然地映射到这些数据结构上:Redis 的数据结构致力于帮助用户解决问题,而不会像其他数据库那样,要求用户扭曲问题来适应数据库。除此之外,通过复制、持久化(persistence)和客户端分片(client-side sharding)等特性,用户可以很方便地将 Redis 扩展成一个能够包含数百 GB 数据、每秒处理上百万次请求的系统。
Redis实战之入门进阶到精通
|
存储 NoSQL Java
当Java遇到Redis:Jedis实战入门
Redis是一个开源,高级的键值存储和一个适用的解决方案,用于构建高性能,可扩展的Web应用程序。本文将概要介绍Redis的特性和语法,并以实例代码的形式介绍如何通过Jedis在java语言环境下控制Redis,帮助各位读者快速入门。
1627 0