本文主要是介绍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. 上传软件包并解压安装
软件包可以在我主页资源内寻找,我已上传
#解压 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
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
3. 重启服务
/etc/init.d/redis_6379 restart netstat -antp | grep 6379
在第一台192.168.180.100上配置脚本创建群集
1. 下载并查看
yum install ruby rubygems -y gem install redis --version 3.2.0
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
3. 查看群集状态
./redis-trib.rb check 192.168.180.100:6379
4. 测试群集
redis-cli -hjavascript 192.168.180.140 -p 6379 -c
#插入数值
set centos 7.3
#查询数值
get centos
到此这篇关于redis群集-简单部署的文章就介绍到这了,更多相关redis群集部署内容请搜索编程China编程(www.chinasem.cn)以前的文章或继续浏览下面的相关文章希望大家以后多多支持China编程(www.chinasem.cn)!
这篇关于redis群集简单部署过程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!