redis群集简单部署过程

2025-02-20 17:50

本文主要是介绍redis群集简单部署过程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

《redis群集简单部署过程》文章介绍了Redis,一个高性能的键值存储系统,其支持多种数据结构和命令,它还讨论了Redis的服务器端架构、数据存储和获取、协议和命令、高可用性方案、缓存机制以及监控和...

redis介绍

Redis 是一个开源的高性能键值存储系统,广泛应用于企业级应用中。它支持多种数据结构,包括字符串、列表、哈希表和集合(set)。Redis 提供了丰富的 API,包括客户端 SDK 和命令行工具。

1. 基本概念

  • **Redis** 是一个键值存储系统。
  • **字符串**:用于存储简单的文本数据。
  • **列表**:用于存储有序的无序集合(如哈希表)。
  • **哈希表**:用于存储键值对,每个键对php应一组值。
  • *js*集合**:用于存储唯一标识符的集合。

2. 服务器端

Redis 的服务器端通常由多个进程组成。以下是 Redis 的主进程和从进程的一些关键部分:

主进程

  •         `redis-server`:主进程负责启动和管理 Redis 服务器。
  •         `redis-cli`:用于与 Redis 进行交互的命令行客户端。
  •         `sysstat`:监控 Redis 服务器的各种性能指标。

从进程

  •     `redis-cli`:从进程负责连接到 Redis 服务器并执行命令。
  •         `client`:发送命令给 Redis 主进程,并获取响应。
  •         `exec`:通过管道将命令转发给 Redis 主进程,从而实现异步 I/O

3. 存储和获取数据

储存
Redis 支持多种存储编程类型,包括字符串、列表、哈希表和集合。以下是一些常用的数据操作:

  •         **set**:设置键的值,并返回一个标志。
  •         **get**:从键中获取值,返回空值或错误信息。
  •         **append**:将数据追加到字符串的末尾。
  •         **delete**:删除键。
  •         **exists**:检查键是否存在。

获取
Redis 支持多种查询类型,包括列表、哈希表和集合。以下是一些常用的数据查询操作:

  •         **lrange**:获取列表中指定区间的元素。
  •         **hgetall**:获取哈希表中的所有键值对。
  •         **scard**:统计哈希表中的键数量。
  •         **zcard**:统计集合中的元素数量。

4. 协议和命令

Redis 支持多种协议,包括 Redis 2.0 和之前的版本。以下是一些常用的命令:

  •         `SET`:设置键的值并返回一个标志。
  •         `GET`:从键中获取值,返回空值或错误信息。
  •         `APPEND`:将数据追加到字符串的末尾。
  •         `DELETE`:删除键。
  •         `EXISTS`:检查键是否存在。
  •         `LPUSH`:向列表末尾添加元素。
  •         `RPUSH`:向列表头部添加元素。
  •         `LPOP`:从列表中移除并返回第一个元素。
  •         `RPOP`:从列表头部移除并返回第一个元素。
  •         `SADD`:将值加入集合。
  •         `SMEMBERS`:获取集合中的所有键。
  •         `SCARD`:统计集合中的键数量。
  •         `ZADD`:向集合中添加一个或多个元素。

5. 高可用性

Redis 支持多种高可用性方案,包括主从复制、HAProxy 和 Redis Sentinel。以下是一些常见的高可用性配置:

  •        **主从复制**:确保多个服务器之间可以同时访问数据库
  •         **HAProxy**:一个高性能的反向代理,允许负载均衡和故障转移。
  •         **Redis Sentinel**:提供高可用性的服务,包括哨兵、集群管理器和监控功能。

6. 缓存

Redis 支持多种缓存机制,如 Redis Cache、Redis Memcached 和 Redis Memcached Server。以下是一些常见的缓存配置:

  •         **Redis Cache**:用于存储和获取缓存中的数据。
  •         **Redis Memcached**:一个高性能的内存缓存。
  •         **Redis Memcached Server**:一个高性能的内存缓存服务器。

7. 监控和日志

Redis 提供了多种监控和日志功能,包括 Redis Sentinels、Redis Dashboard、Redis Slaves 和 Redis Cluster。以下是一些常见
的监控配置:

  •         **Redis Cache**:用于存储和获取缓存中的数据。
  •         **Redis Memcached**:一个高性能的内存缓存。
  •         **Redis Memcached Server**:一个高性能的内存缓存服务器。

前提准备:

1. 准备6台centos7,全部安装redis

192.168.180.100

192.168.180.110

192.168.180.120

192.168.180.130

192.168.180.140

192.168.180.150

2. 关闭所有防火墙

systemctl stop firewalld && setenforce 0

3. 全部安装前置组件

yum install -y gcc gcc-c++ make

正式部署步骤-六台全部部署

1. 上传软件包并解压安装

软件包可以在我主页资源内寻找,我已上传

redis群集简单部署过程

#解压
tar zxvf redis-3.2.9.tar.gz -C /usr/src/
#安装
cd /usr/src/redis-3.2.9/
make && make install
cd /usr/src/redis-3.2.9/utils/
./install_server.sh
#查看是否启动
netstat -antp | grep redis

redis群集简单部署过程

redis群集简单部署过程

2. 配置参数

vim /etc/redis/6379.conf
#修改以下参数
bind 0.0.0.0
cluster-enabled yes
cluster-config-file nodes-6379.conf
cluster-node-timeout 15000
cluster-require-full-coverage no

redis群集简单部署过程

redis群集简单部署过程

redis群集简单部署过程

redis群集简单部署过程

redis群集简单部署过程

3. 重启服务

/etc/init.d/redis_6379 restart
netstat -antp | grep 6379

redis群集简单部署过程

在第一台192.168.180.100上配置脚本创建群集

1. 下载并查看

yum install ruby rubygems -y
gem install redis --version 3.2.0

redis群集简单部署过程

2. 创建群集

cd /usr/src/redis-3.2.9/src/
./redis-trib.rb create --replicas 1 192.168.180.100:6379 192.168.180.110:6379 192.168.180.120:6379 192.168.180.130:6379 192.168.180.140:6379 192.168.180.150:6379
遇到要输入yes的就输入yes

redis群集简单部署过程

3. 查看群集状态

./redis-trib.rb check 192.168.180.100:6379

redis群集简单部署过程

4. 测试群集

redis-cli -hjavascript 192.168.180.140 -p 6379 -c
#插入数值
set centos 7.3
#查询数值
get centos

redis群集简单部署过程

redis群集简单部署过程

到此这篇关于redis群集-简单部署的文章就介绍到这了,更多相关redis群集部署内容请搜索编程China编程(www.chinasem.cn)以前的文章或继续浏览下面的相关文章希望大家以后多多支持China编程(www.chinasem.cn)!

这篇关于redis群集简单部署过程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1153469

相关文章

Redis 中的热点键和数据倾斜示例详解

《Redis中的热点键和数据倾斜示例详解》热点键是指在Redis中被频繁访问的特定键,这些键由于其高访问频率,可能导致Redis服务器的性能问题,尤其是在高并发场景下,本文给大家介绍Redis中的热... 目录Redis 中的热点键和数据倾斜热点键(Hot Key)定义特点应对策略示例数据倾斜(Data S

通过Docker Compose部署MySQL的详细教程

《通过DockerCompose部署MySQL的详细教程》DockerCompose作为Docker官方的容器编排工具,为MySQL数据库部署带来了显著优势,下面小编就来为大家详细介绍一... 目录一、docker Compose 部署 mysql 的优势二、环境准备与基础配置2.1 项目目录结构2.2 基

CentOS 7部署主域名服务器 DNS的方法

《CentOS7部署主域名服务器DNS的方法》文章详细介绍了在CentOS7上部署主域名服务器DNS的步骤,包括安装BIND服务、配置DNS服务、添加域名区域、创建区域文件、配置反向解析、检查配置... 目录1. 安装 BIND 服务和工具2.  配置 BIND 服务3 . 添加你的域名区域配置4.创建区域

如何使用Python实现一个简单的window任务管理器

《如何使用Python实现一个简单的window任务管理器》这篇文章主要为大家详细介绍了如何使用Python实现一个简单的window任务管理器,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起... 任务管理器效果图完整代码import tkinter as tkfrom tkinter i

SpringCloud之LoadBalancer负载均衡服务调用过程

《SpringCloud之LoadBalancer负载均衡服务调用过程》:本文主要介绍SpringCloud之LoadBalancer负载均衡服务调用过程,具有很好的参考价值,希望对大家有所帮助,... 目录前言一、LoadBalancer是什么?二、使用步骤1、启动consul2、客户端加入依赖3、以服务

redis+lua实现分布式限流的示例

《redis+lua实现分布式限流的示例》本文主要介绍了redis+lua实现分布式限流的示例,可以实现复杂的限流逻辑,如滑动窗口限流,并且避免了多步操作导致的并发问题,具有一定的参考价值,感兴趣的可... 目录为什么使用Redis+Lua实现分布式限流使用ZSET也可以实现限流,为什么选择lua的方式实现

Redis中管道操作pipeline的实现

《Redis中管道操作pipeline的实现》RedisPipeline是一种优化客户端与服务器通信的技术,通过批量发送和接收命令减少网络往返次数,提高命令执行效率,本文就来介绍一下Redis中管道操... 目录什么是pipeline场景一:我要向Redis新增大批量的数据分批处理事务( MULTI/EXE

Redis中高并发读写性能的深度解析与优化

《Redis中高并发读写性能的深度解析与优化》Redis作为一款高性能的内存数据库,广泛应用于缓存、消息队列、实时统计等场景,本文将深入探讨Redis的读写并发能力,感兴趣的小伙伴可以了解下... 目录引言一、Redis 并发能力概述1.1 Redis 的读写性能1.2 影响 Redis 并发能力的因素二、

Redis中的常用的五种数据类型详解

《Redis中的常用的五种数据类型详解》:本文主要介绍Redis中的常用的五种数据类型详解,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Redis常用的五种数据类型一、字符串(String)简介常用命令应用场景二、哈希(Hash)简介常用命令应用场景三、列表(L

C++中函数模板与类模板的简单使用及区别介绍

《C++中函数模板与类模板的简单使用及区别介绍》这篇文章介绍了C++中的模板机制,包括函数模板和类模板的概念、语法和实际应用,函数模板通过类型参数实现泛型操作,而类模板允许创建可处理多种数据类型的类,... 目录一、函数模板定义语法真实示例二、类模板三、关键区别四、注意事项 ‌在C++中,模板是实现泛型编程