
Redis 作为一款高性能的开源键值对内存数据库,在提升应用性能方面扮演着关键角色。RedisInsight 是其官方推出的一款可视化工具,旨在帮助开发者设计、开发、优化 Redis 应用,并方便地进行数据查询、分析和交互。
一、RedisInsight 简介
RedisInsight 是一个直观且高效的 Redis 图形化管理界面(GUI)。它能够实时监控 Redis 实例的内存使用、连接数、命中率以及运行时间等关键指标,并内置了 CLI 工具,允许用户直接在界面上与已连接的 Redis 实例进行交互(同时支持 Redis 模块)。
其主要功能亮点包括:
- 目前唯一支持 Redis Cluster 集群模式的 GUI 工具。
- 提供基于浏览器的界面,支持对键(Key)进行搜索、查看和编辑数据。
- 支持通过 SSL/TLS 安全协议连接 Redis。
- 提供直观的内存使用分析功能。
二、RedisInsight 安装与使用
1. 物理机安装
1)下载 RedisInsight 软件包
下载地址:https://redis.com/redis-enterprise/redis-insight/#insight-form
下载后,将软件包移动至指定目录并赋予执行权限。
[root@Redis ~]# ls
anaconda-ks.cfg redisinsight-linux64-1.11.0
[root@Redis ~]# mkdir /usr/local/redisinsight
[root@Redis ~]# mv redisinsight-linux64-1.11.0 /usr/local/redisinsight/redisinsight-1.11.0
[root@Redis ~]# chmod +x /usr/local/redisinsight/redisinsight-1.11.0

2)配置 RedisInsight 环境变量
通过配置环境变量,可以自定义 RedisInsight 的运行参数。
[root@Redis ~]# echo "export REDISINSIGHT_HOST=192.168.1.1" >> ~/.bash_profile
[root@Redis ~]# echo "export REDISINSIGHT_HOST_DIR=/usr/local/redisinsight/.redisinsight" >> ~/.bash_profile
[root@Redis ~]# source ~/.bash_profile
环境变量说明:
REDISINSIGHT_PORT:配置监听端口(默认:8001)。
REDISINSIGHT_HOST:配置服务绑定的 IP 地址(默认:0.0.0.0)。
LOG_DIR:配置日志文件存放路径(默认:REDISINSIGHT_HOST_DIR)。
REDISINSIGHT_HOST_DIR:配置应用数据存放路径(默认:~/.redisinsight)。
3)启动 RedisInsight 服务
使用 nohup 命令让服务在后台持续运行。
[root@Redis ~]# nohup /usr/local/redisinsight/redisinsight-linux64-1.4.0 & // 后台运行
[root@Redis ~]# ps aux | grep redis // 查看进程是否存在

2. Kubernetes 安装
对于已经使用 Kubernetes 进行容器编排的环境,可以通过 YAML 文件快速部署。
1)创建 RedisInsight 的 YAML 部署文件
[root@Redis ~]# vim redisinsight.yaml
文件内容如下:
apiVersion: v1
kind: Service
metadata:
name: redisinsight-service
spec:
type: NodePort
ports:
- port: 80
targetPort: 8001
nodePort: 31888
selector:
app: redisinsight
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: redisinsight
labels:
app: redisinsight
spec:
replicas: 1
selector:
matchLabels:
app: redisinsight
template:
metadata:
labels:
app: redisinsight
spec:
containers:
- name: redisinsight
image: redislabs/redisinsight:1.7.0
imagePullPolicy: IfNotPresent
volumeMounts:
- name: db
mountPath: /db
ports:
- containerPort: 8001
protocol: TCP
volumes:
- name: db
emptyDir: {}
2)启动 RedisInsight
使用 kubectl apply 命令应用配置文件,完成部署。
[root@Redis ~]# kubectl apply -f redisinsight.yaml
三、RedisInsight 基本使用
安装 Redis(若已安装可跳过此步)
首先确保有一个正在运行的 Redis 实例可供连接。
[root@Redis ~]# wget https://download.redis.io/releases/redis-6.2.6.tar.gz
[root@Redis ~]# tar zxf redis-6.2.6.tar.gz
[root@Redis ~]# cd redis-6.2.6
[root@Redis redis-6.2.6]# make PREFIX=/usr/local/redis install
[root@Redis redis-6.2.6]# sed -i '/^bind 127.0.0.1/s/127.0.0.1/192.168.1.1/g' redis.conf # 修改监听 IP
[root@Redis redis-6.2.6]# sed -i '/protected-mode/s/yes/no/g' redis.conf # 关闭保护模式
[root@Redis redis-6.2.6]# sed -i '/daemonize/s/no/yes/g' redis.conf # 开启后台运行
[root@Redis redis-6.2.6]# sed -i '/requirepass/s/foobared/123123/g' redis.conf # 配置密码
[root@Redis redis-6.2.6]# sed -i '/requirepass 123123/s/^#//g' redis.conf # 将密码前的 # 删除
[root@Redis redis-6.2.6]# cp redis.conf /usr/local/redis/
[root@Redis redis-6.2.6]# /usr/local/redis/bin/redis-server /usr/local/redis/redis.conf # 启动 Redis

1)访问管理界面
通过之前配置的 IP 地址和端口(默认 8001)访问 RedisInsight 的 Web 管理界面。

首次使用需要添加数据库连接,填写 Redis 实例的地址、端口和密码(如果已设置)等信息。


成功添加后,即可在主页看到已连接的 Redis 实例。

2)查看 Redis 信息
在管理界面中,可以清晰地查看 Redis 的各种实时状态和性能指标。

3)执行命令行操作
RedisInsight 内置了 CLI 界面,方便开发者直接执行 Redis 命令,与使用原生客户端体验一致。

4)内存分析
工具提供了强大的内存分析功能,可以直观地查看不同数据类型的内存占用情况,帮助优化存储结构。
