redis集群安装(redis集群安装部署linux单机)
cac55 2024-10-07 06:38 25 浏览 0 评论
纸上得来终觉浅,绝知此事要躬行!
1.1. 部署
1、 两台服务器,6 个实例,3 个主节点,3 个从节点(也可以所有节点都放一台服务器)。
主节点与从节点存在对应关系,启动完后可通过 cluster node 命令获取。
cd /usr/local/redis-3.2.8/src/
./redis-cli -h 192.168.1.151 -c -p 7000
cluster nodes
2、 一般情况下,一个主节点坏了,还有从节点补上。若整个集群只有两个正常主节点
(从节点没补上),集群则会处于 down 状态。
1.1.1. 初始步骤
1、 安装所需环境和工具
yum install wget vim tcl gcc make
2、 下载 redis 压缩包并解压
cd /usr/local/
wget http://download.redis.io/releases/redis-3.2.8.tar.gz
tar -zxvf redis-3.2.8.tar.gz
3、 编译 redis 源文件
cd redis-3.2.8
make
cd src
make install
4、测试: make test
(如果 /usr/local/bin/ 文件夹内没有 redis-server 那几个文件,就从
/usr/local/redis-3.2.8/src/ 中拷贝过去,命令:cp redis-server redis-cli redis-sentinel
redis-benchmark redis-check-aof redis-check-rdb /usr/local/bin/) Make test 问题处理:
1、描述
处理
更改 tests/integration/replication-psync.tcl 文件(在 redis 的解压目录内):
vi tests/integration/replication-psync.tcl
把对应报错的那段代码中的 after 后面的数字,从 100 改成 500。
2、 描述:
[exception]: Executing test client: NOREPLICAS Not enough good slaves to write..
NOREPLICAS Not enough good slaves to write.
......
Killing still running Redis server 63439
Killing still running Redis server 63486
Killing still running Redis server 63519
Killing still running Redis server 63546
Killing still running Redis server 63574
Killing still running Redis server 63591
I/O error reading reply
......
"createComplexDataset $r $ops"
(procedure "bg_complex_data" line 4)
invoked from within
"bg_complex_data [lindex $argv 0] [lindex $argv 1] [lindex $argv 2] [lindex $argv 3]"
(file "tests/helpers/bg_complex_data.tcl" line 10)
Killing still running Redis server 21198
make: *** [test] Error 1
处理:
[root@localhost src]# vim ../tests/integration/replication-2.tcl
start_server {tags {"repl"}} {
start_server {} {
test {First server should have role slave after SLAVEOF} {
r -1 slaveof [srv 0 host] [srv 0 port]
after 10000 #修改成 10000
s -1 role
} {slave}
1.1.2. 配置
每台机都要
1、配置内核参数
配置 vm.overcommit_memory 为 1,这可以避免数据被截断
sysctl -w vm.overcommit_memory=1
2、创建多实例的文件夹,用来存放不同实例的配置文件
cd /usr/local/
mkdir cluster
cd cluster
mkdir 7000 7001 7002
(文件名与后续配置的端口号要一致,另外一台用 7003、7004、7005) 3、修改配置文件
vi /usr/local/redis-3.2.8/redis.conf
bind 192.168.1.151(ip 地址,需要不同服务器的节点连通,就不能设置为 127.0.0.1)
protected-mode no(需要不同服务器的节点连通,这个就要设置为 no)
daemonize yes(设置后台运行 redis)
cluster-enabled yes
cluster-node-timeout 5000
appendonly yes
4、 复制配置文件到各个实例文件夹,并修改相应端口号和参数
cp -f /usr/local/redis-3.2.8/redis.conf /usr/local/cluster/7000/
cp -f /usr/local/redis-3.2.8/redis.conf /usr/local/cluster/7001/
cp -f /usr/local/redis-3.2.8/redis.conf /usr/local/cluster/7002/
5、 配置文件根据不同端口需要设置的地方,以端口号 7000 为例
port 7000
pidfile /var/run/redis_7000.pid
logfile /var/log/redis/redis_7000.log
dbfilename dump_7000.rdb
appendfilename "appendonly_7000.aof"
cluster-config-file nodes_7000.conf
6、 启动各个实例
启动前 mkdir /var/log/redis
cd /usr/local/redis-3.2.8/src/
./redis-server /usr/local/cluster/7000/redis.conf &
./redis-server /usr/local/cluster/7001/redis.conf &
./redis-server /usr/local/cluster/7002/redis.conf &
使用 ps -ef|grep redis 查看是否都启动成功,IP 和端口号都正确
1.1.3. 启动服务器的配置(选其中一台)
测试两台服务器是否都能 telnet 得通另一台的 7000~7002 和 17000~17002
启动服务器安装 ruby 环境
1、 安装 rubygems
yum install rubygems
2、 RVM 安装 ruby 高版本
进入官方 https://rvm.io/ 复制长命令,如下面所示(...C0E3 空格 7D2B...):
1
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
7D2BAF1CF37B13E2069D6956105BD0E739499BDB
3、可能会等待十几秒时间,然后执行下面命令:
\curl -sSL https://get.rvm.io | bash -s stable
4、
source /etc/profile.d/rvm.sh //按照提示,执行该命令
rvm list known // list 一下可以安装的版本
5、 rvm install 2.2.10 // 实际部署用 2.2.10,注意 list 里面有没有
6、ruby -v //查看验证下已经安装的版本
gem –v
至此,ruby 安装完成了。
7、 使用 gem 安装 redis 和 ruby 接口
gem install redis --version 3.3.0
1.1.4. 启动服务器创建集群
cd /usr/local/redis-3.2.8/src/
./redis-trib.rb create --replicas 1 192.168.2.247:7000 192.168.2.247:7001 192.168.2.247:7002
192.168.2.248:7000 192.168.2.248:7001 192.168.2.248:7002
留意屏幕,会有一句(type 'yes' to accept),输入 yes ,回车,就是接受自动分配的
三主三从
(1)如果最后出现
[OK] All nodes agree about slots configuration.
Check for open slots...
Check slots coverage...
[OK] All 16384 slots covered.
说明成功了。
(2)如果是出现(暂时没遇到)
Waiting for the cluster to join...........
一直有 “.”出现,说明另一台服务器的端口策略没通,一直在等那边的节点加入集群,请百
度.....
1.1.5. 验证集群节点数
cd /usr/local/redis-3.2.8/src/
./redis-cli -h 192.168.2.247 -c -p 7000
命令 1:cluster nodes
命令 2:cluster info
学习使人进步!共勉,加油!
相关推荐
- 如何屏蔽色情网站?_怎么能屏蔽网站
-
一、基础防御:全网DNS劫持阻断1.修改全网DNS服务器推荐DNS:安全DNS:CleanBrowsing(成人内容过滤):185.228.168.168/185.228.169.168Open...
- 容器、Pod、虚拟机与宿主机网络通信全解:看这一篇就够了
-
在日常开发与部署过程中,很多人一开始都会有这样的疑惑:容器之间是怎么通信的?容器怎么访问宿主机?宿主机又如何访问容器?Kubernetes中Pod的网络和Docker容器一样吗?容器跨机器是...
- Win11专业版找不到共享打印机的问题
-
有很多深度官网的用户,都是在办公室上班的。而上班就需要使用打印机,但更新win11系统后,却出现同一个办公室里面的打印机都找不到的问题,这该如何处理呢?其实,可能是由于我们并没有打开共享打印机而造成的...
- 常用电脑快捷键大全,摆脱鼠标依赖,建议收藏
-
Ctrl+C复制Ctrl+X剪切Ctrl+V粘贴Ctrl+Z撤销Ctrl+Y重做Ctrl+B加粗Ctrl+A全选所有文件Ctrl+S保存Ctrl+N新建Ctrl+O打开Ctrl+E...
- Win11实现自动追剧Jellyfin硬解,免NAS复杂操作
-
大家好,欢迎来到思赞数码。本期将详细介绍如何通过安装和配置Sonarr、Radarr、Prowlarr、qBittorrent和Jellyfin,打造一套自动化的影视管理系统。很多人认为,要实现自动追...
- 微软Win11安卓子系统WSA 2308.40000.3.0更新推送下载
-
IT之家9月21日消息,微软官方博客今日宣布,已面向所有WindowsInsider用户推送了Windows11安卓子系统的2308.40000.3.0版本更新。本次更新和之前...
- 路由器总掉线 一个命令就能猜出八九分
-
明明网络强度满格或有线图标正常,但视频卡成PPT、网页刷不开、游戏动不了,闲心这些问题很多小伙伴都碰到过。每次都要开关路由、宽带/光猫、插拔网线……一通忙。有没有啥办法能快速确定故障到底在哪儿,方便处...
- windows电脑如何修改hosts文件?_windows怎么修改hosts
-
先来简单说下电脑host的作用hosts文件的作用:hosts文件是一个用于储存计算机网络中各节点信息的计算机文件;作用是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中...
- win10广告弹窗ShellExperienceHost.exe
-
win10右下角老是弹出广告弹窗,排查为以下程序引起,但是这个是系统菜单的程序不能动:C:\Windows\SystemApps\ShellExperienceHost_cw5n1h2txyewy\S...
- Win10 Mobile预览版10512/10166越狱解锁部署已被黑客攻破
-
看起来统一的WindowsPhone和Windows越加吸引人们的关注,特别是黑客们的好奇心。XDA论坛宣称,在Win10Mobile预览版10512/10166上,已取得越狱/解锁部署突破,比如可...
- 6款冷门小众软件,都是宝藏,建议收藏
-
真的很不错(。-ω-)zzzBearhttps://bear.app/cn/Bear是一个漂亮,灵活的Markdown的写作工具。它一样只支持苹果家的全平台。它一出现就惊艳四方,就被AppSto...
- 如何让不符合条件的设备升级Windows 11
-
如果你是最近(6月24日之后)加入WindowsInsider项目并且你的设备并不符合升级条件,那么当你在尝试升级Windows11的时候可能会看到以下错误:你的PC不符合Wi...
- windows host文件怎么恢复?局域网访问全靠这些!
-
windowshost文件怎么恢复?windowshost文件是常用网址域名及其相应IP地址建立一个关联文件,通过这个host文件配置域名和IP的映射关系,以提高域名解析的速度,方便局域网用户使用...
- Mac Hosts管理工具---SwitchHosts
-
switchhosts!formac是一款帮助用户快速切换hosts文件的工具,switchhosts!formac能够帮助你快速方便的打造个人专用的网络环境,支持本地和在线两种方式,并且支持...
- 「浅谈趣说网络知识」 第十二弹 老而不死的Hosts,它还很有用
-
【浅谈趣说网络知识】第十二弹老而不死的Hosts,它还很有用什么时候才觉得自己真的老了,不是35岁以上的数字,不是头上的点点白发,而是不知觉中的怀旧。风口上的IT界讲的就是"长江后浪推前浪...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- 如何绘制折线图 (52)
- javaabstract (48)
- 新浪微博头像 (53)
- grub4dos (66)
- s扫描器 (51)
- httpfile dll (48)
- ps实例教程 (55)
- taskmgr (51)
- s spline (61)
- vnc远程控制 (47)
- 数据丢失 (47)
- wbem (57)
- flac文件 (72)
- 网页制作基础教程 (53)
- 镜像文件刻录 (61)
- ug5 0软件免费下载 (78)
- debian下载 (53)
- ubuntu10 04 (60)
- web qq登录 (59)
- 笔记本变成无线路由 (52)
- flash player 11 4 (50)
- 右键菜单清理 (78)
- cuteftp 注册码 (57)
- ospf协议 (53)
- ms17 010 下载 (60)