1. 系统环境准备
1.1 推荐配置
系统 | CPU | 内存 | 硬盘 | redis版本 |
---|---|---|---|---|
CentOs 7.0+ | 4C+ | 8G+ | 200GB+ | 5.0+ |
1.2 防火墙配置
为了便于安装,建议在安装前关闭防火墙。使用过程中,为了系统安全可以选择启用防火墙,但必须启用Redis使用到的相关端口。
1.2.1 关闭防火墙
临时关闭防火墙(立即生效)
# systemctl stop firewalld
禁止防火墙开机启动(重启后生效)
# systemctl disable firewalld
查看防火墙状态:
# systemctl status firewalld
1.2.2 开启防火墙
1、Redis单机部署:
Redis默认监听6379端口,如果开放防火墙,则需要开放此端口。
# firewall-cmd --permanent --add-port=6379/tcp
2、配置完成,重新加载firewalld使配置生效:
# firewall-cmd --reload
查看防火墙开放的端口:
# firewall-cmd --list-all
1.2.3 关闭Selinux防火墙
临时关闭selinux防火墙:
# setenforce 0
永久关闭selinux防火墙:
# sed -i 's/=enforcing/=disabled/g' /etc/selinux/config
2. 部署Smartbi-Redis
2.1 安装Redis
1、上传redis安装包到服务器
2、解压Redis安装包
# tar -zxvf redis-5.0.8.tar.gz # cd redis-5.0.8
PS:本文档Redis安装在/data目录
2.2 配置redis
1、修改Redis配置文件
# vi redis.conf
① bind 0.0.0.0 # 表示redis允许所有地址连接。默认值为127.0.0.1,仅允许本地连接。
② daemonize yes # 允许redis后台运行
③ logfile "/var/log/redis.log" #设置redis 日志存放路径
④ requirepass manager #设置redis密码
⑤ maxmemory 4gb #设置Redis实例的最大内存配置,根据服务器实际内存设置
⑥ maxmemory-policy allkeys-lru
#Redis达到最大内存时的清理key策略r
#allkeys-lru 表示最近最不经常使用算法,从所有的键中选择某段时间之内使用频次最少的键值对清除
2、添加软链接,方便服务启动。
# ln -s /data/redis-5.0.8/src/redis-server /usr/bin/redis-server # ln -s /data/redis-5.0.8/src/redis-cli /usr/bin/redis-cli
2.3 启动&访问Redis
1、启动Redis
# redis-server /data/redis-5.0.8/redis.conf # ps -ef | grep redis
2、访问Redis
# redis-cli -h 127.0.0.1 -p 6379
也可以使用服务器IP地址:# redis-cli -h 10.10.41.123 -p 6379
由于redis设置了密码,无法直接查看数据,需要输入密码验证:
# auth manager #manager即redis.conf中设置的密码
2.4 设置redis开机启动
Redis安装包中包含了redis启动脚本(默认路径$redis/utils/redis_init_script,$redis是redis的安装路径)。
需要根据自身安装部署实际情况进行修改(如:端口、安装路径、密码等等)
# cp /data/redis-5.0.8/utils/redis_init_script /etc/init.d/redis # vi /etc/init.d/redis
具体请参考附件:
如下图所示:
# chmod +x /etc/init.d/redis # chkconfig --add redis # chkconfig redis on # chkconfig --list #查看所有注册的脚本文件
# /etc/init.d/redis start #启动redis # /etc/init.d/redis stop #停止redis # /etc/init.d/redis restart #重启redis
至此,Linux Redis单机版部署完成。
2.5 Smartbi配置连接redis
2.5.1 连接单机 redis
- 登录访问smartbi config页面,找到会话缓存,输入redis地址和端口,状态服务器地址格式有如下:
情形 | 格式 | 示例 |
---|---|---|
未设置redis密码,默认存储在redis db0中 | IP地址:端口 | 10.10.41.123:6379 |
未设置redis密码,指定存储的数据库中(如 db1) | IP地址:端口/N | 10.10.41.123:6379/1 |
设置了redis密码,默认存储在redis db0中 | Redis密码@IP地址:端口 | manager@10.10.41.123:6379 |
设置了redis密码,指定存储的数据库中(如 db1) | Redis密码@IP地址:端口/N | manager@10.10.41.123:6379/1 |
点击测试连接、提示连接成功即可,保存并重启Smartbi
2.5.2 连接redis主从哨兵
文档此处仅介绍如何连接redis主从哨兵模式环境,连接地址中的masterName 具体参考redis哨兵配置文件(sentinel.conf)中配置的redis 主节点的名称,示例如下
- 登录访问smartbi config页面,找到会话缓存,输入redis哨兵地址(哨兵集群时需要填入所有哨兵节点信息)和端口,地址格式有如下:
情形 | 格式 | 示例 |
---|---|---|
未设置redis密码,默认存储在redis db0中 | masterName#哨兵IP1:端口,哨兵IP2:端口,哨兵IP3:端口 | mymaster#10.10.35.216:7000,10.10.35.217:7000,10.10.35.218:7000 |
未设置redis密码,指定存储在redis db1中 | masterName/1#哨兵IP1:端口,哨兵IP2:端口,哨兵IP3:端口 | mymaster/1#10.10.35.216:7000,10.10.35.217:7000,10.10.35.218:7000 |
设置了redis密码,默认存储在redis db0中 | Redis密码@masterName#哨兵IP1:端口,哨兵IP2:端口,哨兵IP3:端口 | manager@mymaster#10.10.35.216:7000,10.10.35.217:7000,10.10.35.218:7000 |
设置了redis密码,指定存储在redis db1中 | Redis密码@masterName/1#哨兵IP1:端口,哨兵IP2:端口,哨兵IP3:端口 | manager@mymaster/1#10.10.35.216:7000,10.10.35.217:7000,10.10.35.218:7000 |
点击测试连接、提示连接成功即可,保存并重启Smartbi
2.6 Smartbi验证Redis
1、登录访问Smartbi,编辑业务主题(或者编辑其他场景),先不要点击保存。
编辑过程中,重启Smartbi服务器,注意重启过程中浏览器不要刷新页面,smartbi重启完成后,可以直接保存修改个业务主题,编辑的数据不会丢失。