redis 学习问题总结 |
http://aperise.iteye.com/blog/2310639 |
ehcache memcached redis 缓存技术总结 |
http://aperise.iteye.com/blog/2296219 |
redis-stat 离线安装 |
http://aperise.iteye.com/blog/2310254 |
redis cluster 非ruby方式启动 |
http://aperise.iteye.com/blog/2310254 |
redis-sentinel安装部署 |
http://aperise.iteye.com/blog/2342693 |
spring-data-redis使用 |
http://aperise.iteye.com/blog/2342615 |
redis客户端redisson实战 |
http://blog.csdn.net/zilong_zilong/article/details/78252037 |
redisson-2.10.4源代码分析 |
http://blog.csdn.net/zilong_zilong/article/details/78609423 |
tcmalloc jemalloc libc选择 |
http://blog.csdn.net/u010994304/article/details/49906819 |
redis-sentinel安装部署
1.redis安装
1)必要的linux库安装
yum install gcc
yum install tcl
yum install tcl
2)下载、解压、编译和安装redis
#创建redis用户和组
groupadd redis
useradd -g redis redis
#修改用户密码
passwd redis
#使用root账户切换到redis目录
cd /home/redis
#下载redis源码redis-3.2.0.tar.gz
wget http://download.redis.io/releases/redis-3.2.0.tar.gz
#解压redis-3.2.0.tar.gz
tar -zxvf redis-3.2.0.tar.gz
#编译和安装
cd /home/redis/redis-3.2.0
make
make install
groupadd redis
useradd -g redis redis
#修改用户密码
passwd redis
#使用root账户切换到redis目录
cd /home/redis
#下载redis源码redis-3.2.0.tar.gz
wget http://download.redis.io/releases/redis-3.2.0.tar.gz
#解压redis-3.2.0.tar.gz
tar -zxvf redis-3.2.0.tar.gz
#编译和安装
cd /home/redis/redis-3.2.0
make
make install
3) 安装完成后会在系统目录/usr/local/bin下生成如下文件:
2.redis-sentinel部署
1)部署结构图如下
2)3台redis节点部署并启动
节点一192.168.173.23上做如下配置:
#1.切换到redis用户
su - redis
#2.创建部署需要的目录
#日志目录
mkdir -p /home/redis/sentinel-cluster/logs/
#数据目录
mkdir -p /home/redis/sentinel-cluster/data/
#进程目录
mkdir -p /home/redis/sentinel-cluster/pids/
#配置文件目录
mkdir -p /home/redis/sentinel-cluster/conf/
#3.复制并修改一份redis.conf文件并修改配置
cd /home/redis/sentinel-cluster/conf/
#从源代码目录下拷贝一份配置文件
cp /home/redis/redis-3.2.0/redis.conf /home/redis/sentinel-cluster/conf/redis.conf
#修改配置文件
vi /home/redis/sentinel-cluster/conf/redis.conf
#主要修改如下内容
bind 192.168.173.23
port 6382
#开启redis守护进程
daemonize yes
#指定进程文件存放目录
pidfile /home/redis/sentinel-cluster/pids/redis.pid
#指定日志文件存放目录
logfile "/home/redis/sentinel-cluster/logs/redis.log"
data /home/redis/sentinel-cluster/data/
dbfilename dump.rdb
appendonly yes
appendfilename "appendonly.aof"
#主库认证密码
masterauth abcd_123456
#客户端连接密码
requirepass abcd_123456
su - redis
#2.创建部署需要的目录
#日志目录
mkdir -p /home/redis/sentinel-cluster/logs/
#数据目录
mkdir -p /home/redis/sentinel-cluster/data/
#进程目录
mkdir -p /home/redis/sentinel-cluster/pids/
#配置文件目录
mkdir -p /home/redis/sentinel-cluster/conf/
#3.复制并修改一份redis.conf文件并修改配置
cd /home/redis/sentinel-cluster/conf/
#从源代码目录下拷贝一份配置文件
cp /home/redis/redis-3.2.0/redis.conf /home/redis/sentinel-cluster/conf/redis.conf
#修改配置文件
vi /home/redis/sentinel-cluster/conf/redis.conf
#主要修改如下内容
bind 192.168.173.23
port 6382
#开启redis守护进程
daemonize yes
#指定进程文件存放目录
pidfile /home/redis/sentinel-cluster/pids/redis.pid
#指定日志文件存放目录
logfile "/home/redis/sentinel-cluster/logs/redis.log"
data /home/redis/sentinel-cluster/data/
dbfilename dump.rdb
appendonly yes
appendfilename "appendonly.aof"
#主库认证密码
masterauth abcd_123456
#客户端连接密码
requirepass abcd_123456
节点一192.168.173.23上启动redis服务:
#默认会调用/usr/local/bin/redis-server启动服务
redis-server /home/redis/sentinel-cluster/conf/redis.conf
redis-server /home/redis/sentinel-cluster/conf/redis.conf
节点二192.168.173.24上做如下配置:
#1.切换到redis用户
su - redis
#2.创建部署需要的目录
#日志目录
mkdir -p /home/redis/sentinel-cluster/logs/
#数据目录
mkdir -p /home/redis/sentinel-cluster/data/
#进程目录
mkdir -p /home/redis/sentinel-cluster/pids/
#配置文件目录
mkdir -p /home/redis/sentinel-cluster/conf/
#3.复制并修改一份redis.conf文件并修改配置
cd /home/redis/sentinel-cluster/conf/
#从源代码目录下拷贝一份配置文件
cp /home/redis/redis-3.2.0/redis.conf /home/redis/sentinel-cluster/conf/redis.conf
#修改配置文件
vi /home/redis/sentinel-cluster/conf/redis.conf
#主要修改如下内容
bind 192.168.173.24
port 6382
#开启redis守护进程
daemonize yes
#指定进程文件存放目录
pidfile /home/redis/sentinel-cluster/pids/redis.pid
#指定日志文件存放目录
logfile "/home/redis/sentinel-cluster/logs/redis.log"
data /home/redis/sentinel-cluster/data/
dbfilename dump.rdb
appendonly yes
appendfilename "appendonly.aof"
#主库认证密码
masterauth abcd_123456
#客户端连接密码
requirepass abcd_123456
#指定本节点是节点一的从节点
slaveof 192.168.173.23 6382
su - redis
#2.创建部署需要的目录
#日志目录
mkdir -p /home/redis/sentinel-cluster/logs/
#数据目录
mkdir -p /home/redis/sentinel-cluster/data/
#进程目录
mkdir -p /home/redis/sentinel-cluster/pids/
#配置文件目录
mkdir -p /home/redis/sentinel-cluster/conf/
#3.复制并修改一份redis.conf文件并修改配置
cd /home/redis/sentinel-cluster/conf/
#从源代码目录下拷贝一份配置文件
cp /home/redis/redis-3.2.0/redis.conf /home/redis/sentinel-cluster/conf/redis.conf
#修改配置文件
vi /home/redis/sentinel-cluster/conf/redis.conf
#主要修改如下内容
bind 192.168.173.24
port 6382
#开启redis守护进程
daemonize yes
#指定进程文件存放目录
pidfile /home/redis/sentinel-cluster/pids/redis.pid
#指定日志文件存放目录
logfile "/home/redis/sentinel-cluster/logs/redis.log"
data /home/redis/sentinel-cluster/data/
dbfilename dump.rdb
appendonly yes
appendfilename "appendonly.aof"
#主库认证密码
masterauth abcd_123456
#客户端连接密码
requirepass abcd_123456
#指定本节点是节点一的从节点
slaveof 192.168.173.23 6382
节点二192.168.173.24上启动redis服务:
#默认会调用/usr/local/bin/redis-server启动服务
redis-server /home/redis/sentinel-cluster/conf/redis.conf
redis-server /home/redis/sentinel-cluster/conf/redis.conf
节点三192.168.173.25上做如下配置:
#1.切换到redis用户
su - redis
#2.创建部署需要的目录
#日志目录
mkdir -p /home/redis/sentinel-cluster/logs/
#数据目录
mkdir -p /home/redis/sentinel-cluster/data/
#进程目录
mkdir -p /home/redis/sentinel-cluster/pids/
#配置文件目录
mkdir -p /home/redis/sentinel-cluster/conf/
#3.复制并修改一份redis.conf文件并修改配置
cd /home/redis/sentinel-cluster/conf/
#从源代码目录下拷贝一份配置文件
cp /home/redis/redis-3.2.0/redis.conf /home/redis/sentinel-cluster/conf/redis.conf
#修改配置文件
vi /home/redis/sentinel-cluster/conf/redis.conf
#主要修改如下内容
bind 192.168.173.25
port 6382
#开启redis守护进程
daemonize yes
#指定进程文件存放目录
pidfile /home/redis/sentinel-cluster/pids/redis.pid
#指定日志文件存放目录
logfile "/home/redis/sentinel-cluster/logs/redis.log"
data /home/redis/sentinel-cluster/data/
dbfilename dump.rdb
appendonly yes
appendfilename "appendonly.aof"
#主库认证密码
masterauth abcd_123456
#客户端连接密码
requirepass abcd_123456
#指定本节点是节点一的从节点
slaveof 192.168.173.23 6382
su - redis
#2.创建部署需要的目录
#日志目录
mkdir -p /home/redis/sentinel-cluster/logs/
#数据目录
mkdir -p /home/redis/sentinel-cluster/data/
#进程目录
mkdir -p /home/redis/sentinel-cluster/pids/
#配置文件目录
mkdir -p /home/redis/sentinel-cluster/conf/
#3.复制并修改一份redis.conf文件并修改配置
cd /home/redis/sentinel-cluster/conf/
#从源代码目录下拷贝一份配置文件
cp /home/redis/redis-3.2.0/redis.conf /home/redis/sentinel-cluster/conf/redis.conf
#修改配置文件
vi /home/redis/sentinel-cluster/conf/redis.conf
#主要修改如下内容
bind 192.168.173.25
port 6382
#开启redis守护进程
daemonize yes
#指定进程文件存放目录
pidfile /home/redis/sentinel-cluster/pids/redis.pid
#指定日志文件存放目录
logfile "/home/redis/sentinel-cluster/logs/redis.log"
data /home/redis/sentinel-cluster/data/
dbfilename dump.rdb
appendonly yes
appendfilename "appendonly.aof"
#主库认证密码
masterauth abcd_123456
#客户端连接密码
requirepass abcd_123456
#指定本节点是节点一的从节点
slaveof 192.168.173.23 6382
节点三192.168.173.25上启动redis服务:
#默认会调用/usr/local/bin/redis-server启动服务
redis-server /home/redis/sentinel-cluster/conf/redis.conf
redis-server /home/redis/sentinel-cluster/conf/redis.conf
3)3台sentinel服务部署
节点一192.168.173.23上sentinel部署如下:
#创建sentinel配置文件sentinel.conf并修改配置
vi /home/redis/sentinel-cluster/conf/sentinel.conf
bind 192.168.173.23
#sentinel服务端口
port 26382
#开启sentinel守护进程
daemonize yes
#指定进程文件存放目录
pidfile /home/redis/sentinel-cluster/pids/sentinel.pid
#指定日志文件存放目录
logfile "/home/redis/sentinel-cluster/logs/sentinel.log"
#监听主节点192.168.173.23 6382,给监听sentinel集群名字取名为redis-sentinel,需要2个sentinel同意时候才做故障切换
sentinel monitor redis-sentinel 192.168.173.23 6382 2
sentinel down-after-milliseconds redis-sentinel 60000
sentinel failover-timeout redis-sentinel 180000
sentinel parallel-syncs redis-sentinel 1
#sentinel链接密码
sentinel auth-pass redis-sentinel abcd_123456
vi /home/redis/sentinel-cluster/conf/sentinel.conf
bind 192.168.173.23
#sentinel服务端口
port 26382
#开启sentinel守护进程
daemonize yes
#指定进程文件存放目录
pidfile /home/redis/sentinel-cluster/pids/sentinel.pid
#指定日志文件存放目录
logfile "/home/redis/sentinel-cluster/logs/sentinel.log"
#监听主节点192.168.173.23 6382,给监听sentinel集群名字取名为redis-sentinel,需要2个sentinel同意时候才做故障切换
sentinel monitor redis-sentinel 192.168.173.23 6382 2
sentinel down-after-milliseconds redis-sentinel 60000
sentinel failover-timeout redis-sentinel 180000
sentinel parallel-syncs redis-sentinel 1
#sentinel链接密码
sentinel auth-pass redis-sentinel abcd_123456
节点一192.168.173.23上启动sentinel服务
#默认会调用/usr/local/bin/redis-server启动服务
redis-server /home/redis/sentinel-cluster/conf/sentinel.conf --sentinel
redis-server /home/redis/sentinel-cluster/conf/sentinel.conf --sentinel
节点二192.168.173.24上sentinel部署如下:
#创建sentinel配置文件sentinel.conf并修改配置
vi /home/redis/sentinel-cluster/conf/sentinel.conf
bind 192.168.173.24
#sentinel服务端口
port 26382
#开启sentinel守护进程
daemonize yes
#指定进程文件存放目录
pidfile /home/redis/sentinel-cluster/pids/sentinel.pid
#指定日志文件存放目录
logfile "/home/redis/sentinel-cluster/logs/sentinel.log"
#监听主节点192.168.173.23 6382,给监听sentinel集群名字取名为redis-sentinel,需要2个sentinel同意时候才做故障切换
sentinel monitor redis-sentinel 192.168.173.23 6382 2
sentinel down-after-milliseconds redis-sentinel 60000
sentinel failover-timeout redis-sentinel 180000
sentinel parallel-syncs redis-sentinel 1
#sentinel链接密码
sentinel auth-pass redis-sentinel abcd_123456
vi /home/redis/sentinel-cluster/conf/sentinel.conf
bind 192.168.173.24
#sentinel服务端口
port 26382
#开启sentinel守护进程
daemonize yes
#指定进程文件存放目录
pidfile /home/redis/sentinel-cluster/pids/sentinel.pid
#指定日志文件存放目录
logfile "/home/redis/sentinel-cluster/logs/sentinel.log"
#监听主节点192.168.173.23 6382,给监听sentinel集群名字取名为redis-sentinel,需要2个sentinel同意时候才做故障切换
sentinel monitor redis-sentinel 192.168.173.23 6382 2
sentinel down-after-milliseconds redis-sentinel 60000
sentinel failover-timeout redis-sentinel 180000
sentinel parallel-syncs redis-sentinel 1
#sentinel链接密码
sentinel auth-pass redis-sentinel abcd_123456
节点二192.168.173.24上启动sentinel服务
#默认会调用/usr/local/bin/redis-server启动服务
redis-server /home/redis/sentinel-cluster/conf/sentinel.conf --sentinel
redis-server /home/redis/sentinel-cluster/conf/sentinel.conf --sentinel
节点三192.168.173.25上sentinel部署如下:
#创建sentinel配置文件sentinel.conf并修改配置
vi /home/redis/sentinel-cluster/conf/sentinel.conf
bind 192.168.173.25
#sentinel服务端口
port 26382
#开启sentinel守护进程
daemonize yes
#指定进程文件存放目录
pidfile /home/redis/sentinel-cluster/pids/sentinel.pid
#指定日志文件存放目录
logfile "/home/redis/sentinel-cluster/logs/sentinel.log"
#监听主节点192.168.173.23 6382,给监听sentinel集群名字取名为redis-sentinel,需要2个sentinel同意时候才做故障切换
sentinel monitor redis-sentinel 192.168.173.23 6382 2
sentinel down-after-milliseconds redis-sentinel 60000
sentinel failover-timeout redis-sentinel 180000
sentinel parallel-syncs redis-sentinel 1
#sentinel链接密码
sentinel auth-pass redis-sentinel abcd_123456
vi /home/redis/sentinel-cluster/conf/sentinel.conf
bind 192.168.173.25
#sentinel服务端口
port 26382
#开启sentinel守护进程
daemonize yes
#指定进程文件存放目录
pidfile /home/redis/sentinel-cluster/pids/sentinel.pid
#指定日志文件存放目录
logfile "/home/redis/sentinel-cluster/logs/sentinel.log"
#监听主节点192.168.173.23 6382,给监听sentinel集群名字取名为redis-sentinel,需要2个sentinel同意时候才做故障切换
sentinel monitor redis-sentinel 192.168.173.23 6382 2
sentinel down-after-milliseconds redis-sentinel 60000
sentinel failover-timeout redis-sentinel 180000
sentinel parallel-syncs redis-sentinel 1
#sentinel链接密码
sentinel auth-pass redis-sentinel abcd_123456
节点三192.168.173.25上启动sentinel服务
#默认会调用/usr/local/bin/redis-server启动服务
redis-server /home/redis/sentinel-cluster/conf/sentinel.conf --sentinel
redis-server /home/redis/sentinel-cluster/conf/sentinel.conf --sentinel
4)节点一redis服务和sentinel服务查看
红色边框标记部分是sentinel服务通过监测的主节点服务192.168.173.6382自己发现的redis从服务器,不需要自己指定,sentinel发现后自己会更新sentinel.conf配置文件
5)节点二redis服务和sentinel服务查看
红色边框标记部分是sentinel服务通过监测的主节点服务192.168.173.6382自己发现的redis从服务器,不需要自己指定,sentinel发现后自己会更新sentinel.conf配置文件
6)节点三redis服务和sentinel服务查看
红色边框标记部分是sentinel服务通过监测的主节点服务192.168.173.6382自己发现的redis从服务器,不需要自己指定,sentinel发现后自己会更新sentinel.conf配置文件
3.redis-sentinel部署方式下redis-stat启动
3.1 redis-stat命令介绍
安装参见博客 redis-stat安装
cd /home/redis/redis-stat-0.4.13/bin
./redis-stat --help
usage: redis-stat [HOST[:PORT] ...] [INTERVAL [COUNT]]
-a, --auth=PASSWORD Password
-v, --verbose Show more info
--style=STYLE Output style: unicode|ascii
--no-color Suppress ANSI color codes
--csv[=CSV_FILE] Print or save the result in CSV
--es=ELASTICSEARCH_URL Send results to ElasticSearch: [http://]HOST[:PORT][/INDEX]
--server[=PORT] Launch redis-stat web server (default port: 63790)
--daemon Daemonize redis-stat. Must be used with --server option.
--version Show version
--help Show this message
./redis-stat --help
usage: redis-stat [HOST[:PORT] ...] [INTERVAL [COUNT]]
-a, --auth=PASSWORD Password
-v, --verbose Show more info
--style=STYLE Output style: unicode|ascii
--no-color Suppress ANSI color codes
--csv[=CSV_FILE] Print or save the result in CSV
--es=ELASTICSEARCH_URL Send results to ElasticSearch: [http://]HOST[:PORT][/INDEX]
--server[=PORT] Launch redis-stat web server (default port: 63790)
--daemon Daemonize redis-stat. Must be used with --server option.
--version Show version
--help Show this message
3.2 redis-stat启动
linux上启动
cd /home/redis/redis-stat-0.4.13/bin
./redis-stat 192.168.173.23:6382 192.168.173.24:6382 192.168.173.25:6382 --server --daemon -a abcd_123456
./redis-stat 192.168.173.23:6382 192.168.173.24:6382 192.168.173.25:6382 --server --daemon -a abcd_123456
启动后截图如下:
相关推荐
redis-sentinel集群及双机热备
实际上,这意味着使用Sentinel可以创建Redis部署,该部署可以在无需人工干预的情况下抵抗某些类型的故障。 Redis:trade_mark:Sentinel还提供其他附带任务,例如监视,通知,并充当客户端的配置提供程序。TL; DR $ ...
redis哨兵模式伪集群部署配置文件
flask-sentinel, 作为 Flask 扩展绑定的OAuth2服务器 瓶哨兵OAuth2提供程序当前支持资源所有者密码凭据授予,如 RFC 6749的节 1.3.3所描述。由 flask oauthlib,Redis和MongoDB驱动。扩展部署$ pip install flask-...
该资源是本人在学习redis过程中积累总结的经验以分享给大家:redis-sentinel高可用一键配置工具就是一键帮你从下载->安装->配置 好 redis 高可用的服务环境,省去了很多弯路,节约了更多的时间花在自己项目的主要...
Redis-Sentinel-Kubernetes 在Kubernetes上部署Redis(带有Sentinel的Master-Replica)。 建议用法:查看此头盔图,了解它,然后创建自己的部署:)
redis+sentinel+tomcat部署Linux详细步骤,带安装包,自动脚本。redis+sentinel+tomcat部署Linux详细步骤,带安装包,自动脚本。redis+sentinel+tomcat部署Linux详细步骤,带安装包,自动脚本。
该资源是本人在学习redis过程中积累总结的经验以分享给大家:redis-sentinel高可用一键配置工具就是一键帮你从下载->安装->配置 好 redis 高可用的服务环境,省去了很多弯路,节约了更多的时间花在自己项目的主要...
脚本部署redis哨兵前期准备工作 上传到/home/redis目录下即可 redis-5.0.8-script-install.tar.gz 1、Master服务器操作 tar xf redis-5.0.8-script-install.tar.gz bash install_redis.sh master bash install_...
docker-compose部署mysql+redis+sentinel1主2从+rabbitmq+nginx负载
Redis Sentinel(哨兵)部署.pdf Redis Sentinel(哨兵)部署.pdf Redis Sentinel(哨兵)部署.pdf
在UAT环境可生产环境下,一般要求以哨兵(sentinel)模式部署(Cluster模式一般用在规格很大的应用场景下,非大厂一般情况下用不上,用了会增加复杂度) 其中的配置项较多: 1、Master 的配置 +至少一个Slave的配置 2...
Redis Sentinel 主从部署 使用Python脚本获取Redis主从节点信息
docker-compose一键完成微服务各组件的安装包:nginx、sentinel、nacos、seata、mysql、Redis、skywaking、easicsearch、prmetheus、grafana等
ansible-redis, 高度可以配置的Ansible角色,可以从源代码安装Redis和 Redis Sentinel ansible-redis Ansible 2.1 与大多数版本的ubuntu/debian和 rhel/centos 6兼容电子邮件内容安装工具正在开始运行。单一 Redis ...
Redis配置文件主要是对学习之路(三)下的 Redis主从和哨兵模式 配置文件里面包含了redis配置文件及Sentinel 配置文件 【亲测】
redis sentinel部署(Windows下实现).rar
redis 集群部署 Redis安装及客户端连接 1. Redis 安装 2. Redis 客户端连接及测试 Redis 持久化数据 1. RDB数据持久化 2. AOF数据持久化(推荐方案) Redis 主从复制 详解 Redis 哨兵模式Sentinel 详解 ...
一、CacheCloud是做什么的CacheCloud提供一个Redis云管理平台:实现多种类型(Redis Standalone、Redis Sentinel、Redis Cluster)自动部署、解决Redis实例碎片化现象、提供完善统计、监控、运维功能、减少开发人员的...