一台服务器搭建部署两个或多个Redis实例
问题描述:
今天程序那边说测试服里面有两个项目,为了数据不冲突,想一台服务器搞两个Redis实例,
然后自己这边查询了一下,确实可以这么整,只需要区分端口号和区分配置文件方面就行,
原理与nginx和tomcat等添加容器单实例多应用应该差不多,做个笔记记录一下。
1、复制新的配置文件,改变配置名称
2、修改配置文件里面的端口号、PID文件路径以及日志文件路径、 转储文件路径,确保两个或者多个redis服务不会冲突。
我这边搭建的Redis目录:
redis data directory : /data/redis/redis6379/dataredis log directory :
/data/redis/redis6379/logsredis
install directory : /usr/local/redisredis config
file directory : /etc/redis startup script :
/etc/init.d/redis
可以指定端口启动多个Redis进程。
解决方法:
1、切换到redis目录,新建个redis数据和日志目录
[root@tse1 redis]# mkdir -p /data/redis/redis6380/{data,logs}[root@tse1 redis6380]#
pwd/data/redis/redis6380
2、切换到redis配置文件目录cp一份redis配置文件
#复制新的配置文件给第二个redis使用[root@tse1 etc]#
cp /etc/redis.conf redis6380.conf#配置新redis文件,避免两个redis冲突,在配置文件按照如下几个参数进行修改;
[root@tse1 etc]# vim redis6380.conf
配置参数:
#修改新的pid文件路径
pidfile
/data/redis/redis6380/logs/redis6380.pid#指定新的端口号
port
6380#指定新的日志文件路径
logfile
"/data/redis/redis6380/logs/redis6380.log"
#指定新的数据文件路径
dir /data/redis/redis6380/data/#指定新的转储文件路径
dbfilename dump6380.rdb
#配置文件修改完成:wq保存退出
3、修改启动脚本
[root@tse1 ~]# cp /etc/init.d/redis /etc/init.d/redis6380[root@tse1 init.d]# vim redis6380
4、关于启动脚本可以参考我另一篇文章介绍,修改相应参数即可
Centos7下Redis设置开机自启动服务:
https://www.cnblogs.com/Sungeek/p/11691231.html
5、如果上面服务都已配置完成,就可以直接启动查看是否成功
[root@tse1 /]# netstat -lntpActive Internet connections (only servers)
Proto Recv
-Q Send-Q Local Address Foreign Address State PID/Program nametcp
00127.0.0.1:63790.0.0.0:* LISTEN 30162/redis-servertcp
00192.168.15.163:63790.0.0.0:* LISTEN 30162/redis-servertcp
00127.0.0.1:63800.0.0.0:* LISTEN 30171/redis-servertcp
00192.168.15.163:63800.0.0.0:* LISTEN 30171/redis-server
6、客户端连接测试
[root@tse1 /]# /usr/local/redis/src/redis-cli -h 127.0.0.1 -p 6379 -a redis密码127.0.0.1:6379> PINGPONG
127.0.0.1:6379>[root@tse1
/]# /usr/local/redis/src/redis-cli -h 127.0.0.1 -p 6380 -a redis密码127.0.0.1:6380> PINGPONG
127.0.0.1:6380>
以上是 一台服务器搭建部署两个或多个Redis实例 的全部内容, 来源链接: utcz.com/z/531909.html