目录
一、实验
1.环境
2.多实例Redis部署
3.Twemproxy 升级Redis代理
一、实验
1.环境
(1)主机
表1 主机
系统 | 版本 | 软件 | IP | 备注 |
CentOS | 7.9 | Twemproxy | 192.168.204.200 | Redis代理 |
Redis | 127.0.0.1:6379 | 第一个Redis实例 | ||
Redis | 127.0.0.1:6380 | 第二个Redis实例 | ||
Redis | 127.0.0.1:6381 | 第三个Redis实例 |
(2)Termius连接
成功:
(3)查看系统版本
cat /etc/os-release
2.多实例Redis部署
(1)单实例Redis部署
可以参考本人博客:
数据库应用:Redis安装部署-CSDN博客
(2)第二个实例Redis部署
#执行软件包提供的install_server.sh 脚本文件,设置Redis服务所需要的相关配置文件
cd /opt/redis-5.0.7/utils
./install_server.sh
.......#一直回车
Please select the redis executable path [] /usr/local/redis/bin/redis-server
#这里默认为/usr/local/bin/redis-server,需要手动修改为/usr/local/redis/bin/redis-server,注意要一次性正确输入
---------------------- 虚线内是注释 ----------------------------------------------------
Selected config:
Port: 6380 #默认侦听端口为6379
Config file: /etc/redis/6380.conf #配置文件路径
Log file: /var/log/redis_6380.log #日志文件路径
Data dir : /var/lib/redis/6380 #数据文件路径
Executable: /usr/local/redis/bin/redis-server #可执行文件路径
Cli Executable : /usr/local/bin/redis-cli #客户端命令工具
#当install_server.sh 脚本运行完毕,Redis 服务就已经启动,默认监听端口为6379
netstat -natp | grep redis
(3)第三个实例Redis部署
#执行软件包提供的install_server.sh 脚本文件,设置Redis服务所需要的相关配置文件
cd /opt/redis-5.0.7/utils
./install_server.sh
.......#一直回车
Please select the redis executable path [] /usr/local/redis/bin/redis-server
#这里默认为/usr/local/bin/redis-server,需要手动修改为/usr/local/redis/bin/redis-server,注意要一次性正确输入
---------------------- 虚线内是注释 ----------------------------------------------------
Selected config:
Port: 6381 #默认侦听端口为6379
Config file: /etc/redis/6381.conf #配置文件路径
Log file: /var/log/redis_6381.log #日志文件路径
Data dir : /var/lib/redis/6381 #数据文件路径
Executable: /usr/local/redis/bin/redis-server #可执行文件路径
Cli Executable : /usr/local/bin/redis-cli #客户端命令工具
#当install_server.sh 脚本运行完毕,Redis 服务就已经启动,默认监听端口为6379
netstat -natp | grep redis
3.Twemproxy 升级Redis代理
(1)安装git
yum -y install git
(2) 创建目录
mkdir soft
(3)下载源码
cd ~/soft
git clone https://github.com/twitter/twemproxy.git
(4)安装automake
和libtool
yum -y install automake libtool
(5) 在项目目录中使用以下命令重新生成 configure 脚本
cd ~/soft/twemproxy/
autoreconf -fvi
查看
(6)执行configure
./configure
完成:
(7)执行make
完成:
make
(8)
配置Twemproxy
实现全局任意地方执行
cd ~/soft/twemproxy/src
cp nutcracker /usr/bin/
(9)创建目录
用来存放相关配置文件
mkdir /etc/nutcracker
(10)复制文件
将源码目录scripts
下的nutcracker.init
文件复制到/etc/init.d
下改名为twemproxy
cd ~/soft/twemproxy/scripts/
cp nutcracker.init /etc/init.d/twemproxy
(11)授权
给twemproxy执行权限
chmod +x /etc/init.d/twemproxy
(12)拷贝文件
将nutcracker
相关配置文件拷贝到刚创建的/etc/nutcracker
目录下
cd ~/soft/twemproxy/conf
cp * /etc/nutcracker
(13)备份
cd /etc/nutcracker
cp nutcracker.yml nutcracker_bak.yml
(14)修改配置文件
vim nutcracker.yml
修改前:
光标移动到beta配置上方空行出 按下d键+(大写)G键
完成删除
修改
alpha:
listen: 127.0.0.1:22121
hash: fnv1a_64
distribution: ketama
auto_eject_hosts: true
redis: true
server_retry_timeout: 2000
server_failure_limit: 1
servers:
- 127.0.0.1:6379:1
- 127.0.0.1:6380:1
- 127.0.0.1:6381:1
(15)强制关闭当前所有Redis服务
查看进程
ps -ef | grep redis
强制关闭进程
kill -9 PID
再次查看进程,显示已关闭
(16)Termius新开3个窗口
第一个窗口执行
cd /usr/local/redis/bin/
redis-server --port 6379
第二个窗口执行
cd /usr/local/redis/bin/
redis-server --port 6380
第三个窗口执行
cd /usr/local/redis/bin/
redis-server --port 6381
(17)开启twemproxy代理的服务
初始窗口执行
service twemproxy start
(18)新开Redis_Twemproxy客户端窗口
登录
redis-cli -p 22121
执行set操作(写入键值对)
127.0.0.1:22121> set cicd 123
OK
127.0.0.1:22121> set devops 123
OK
127.0.0.1:22121> set kubernetes 123
OK
(19)分别进入三个Redis实例(set
操作实现均匀分布)
查看第一个实例
redis-cli -p 6379
keys *
exit
查看第二个实例
redis-cli -p 6380
keys *
exit
查看第三个实例
redis-cli -p 6381
keys *
exit