裸机redis集群安装

环境准备

Redis集群安装需要至少三台机器,由于每台机器至少需要一个从节点,所以至少需要6台机器,为了保证其中某一台机器宕机时,不会造成数据的丢失。我这里机器个数有限,我只使用3台机器,每台机器部署一个主节点和一个从节点。

CentOS7 三台(k8s-master01:192.168.0.10  k8s-node02:192.168.0.20  k8s-node03:192.168.0.30)
redis-3.0.0.tar.gz 安装包

为了使集群和其他redis服务区分开来,创建redis目录用来存放redis集群的文件:

[root@k8s-master01 home]$ pwd
/usr/local/home
[root@k8s-master01 apps]$ mkdir redis
[root@k8s-master01 apps]$ cd redis/
[root@k8s-master01 reids]$ mkdir 7000 7001 7002 7003 7004 7005

解压

解压redis-3.0.0.tar.gz源码包,并进入该目录执行以下命令:

[root@k8s-master01 home]$ pwd
/usr/local/home
[root@k8s-master01 home]$ tar -zvxf redis-3.0.0.tar.gz -C ./
[root@k8s-master01 home]$ cd redis-3.0.0
[root@k8s-master01 redis-3.0.0]$ make && make install prefix=/usr/local/home/redis

make install时出现错误You need tcl 8.5or newer in order to run the Redis test解决方法

安装

redis单机版已经安装成功,在redis目录下有一个bin目录,里面存放的就是刚才编译安装好的redis。复制redis/bin目录中的redis.conf文件到redis/7000redis/7001redis/7002redis/7003redis/7004redis/7005目录中,并修改如下内容:

# 端口号
port port
# 后台启动
daemonize yes
# 开启集群
cluster-enabled yes
#集群节点配置文件
cluster-config-file nodes-port.conf
# 集群连接超时时间
cluster-node-timeout 5000
# 进程pid的文件位置
pidfile /var/run/redis-port.pid
# 开启aof
appendonly yes
# aof文件路径
appendfilename "appendonly-7005.aof"
# rdb文件路径
dbfilename dump-port.rdb

例如在7000目录中redis.conf的配置如下:

# 端口号
port 7000
# 后台启动
daemonize yes
# 开启集群
cluster-enabled yes
#集群节点配置文件
cluster-config-file nodes-7000.conf
# 集群连接超时时间
cluster-node-timeout 5000
# 进程pid的文件位置
pidfile /var/run/redis-7000.pid
# 开启aof
appendonly yes
# aof文件路径
appendfilename "appendonly-7005.aof"
# rdb文件路径
dbfilename dump-7000.rdb

70027003分发到k8s-node02,将70047005分发到k8s-node03

[root@k8s-master01 home]$ pwd
/usr/local/home
[root@k8s-master01 home]$ scp -r ./redis/7002/ k8s-node02:/usr/local/home/redis/
[root@k8s-master01 home]$ scp -r ./redis/7003/ k8s-node02:/usr/local/home/redis/
[root@k8s-master01 home]$ scp -r ./redis/7004/ k8s-node03:/usr/local/home/redis/
[root@k8s-master01 home]$ scp -r ./redis/7005/ k8s-node03:/usr/local/home/redis/
# 删除 xiaoer 主机上的 7002、7003、7004、7005 文件
[root@k8s-master01 home]$ rm -rf ./redis/7002/
[root@k8s-master01 home]$ rm -rf ./redis/7003/
[root@k8s-master01 home]$ rm -rf ./redis/7004/
[root@k8s-master01 home]$ rm -rf ./redis/7005/

启动每个节点的redis-server服务:

# k8s-master01
[root@k8s-master01 redis]$ pwd
/usr/local/home/redis
[root@k8s-master01 redis]$ mv ./* ./
[root@k8s-master01 redis]$ ./redis-server ./7000/redis.conf
[root@k8s-master01 redis]$ ./redis-server ./7001/redis.conf

# k8s-node02
[root@k8s-node02 redis]$ pwd
/usr/local/home/redis
[root@k8s-node02 redis]$ mv ./* ./
[root@k8s-node02 redis]$ ./redis-server ./7002/redis.conf
[root@k8s-node02 redis]$ ./redis-server ./7003/redis.conf

# k8s-node03
[root@k8s-node03 redis]$ pwd
/usr/local/home/redis
[root@k8s-node03 redis]$ mv ./* ./
[root@k8s-node03 redis]$ ./redis-server ./7004/redis.conf
[root@k8s-node03 redis]$ ./redis-server ./7005/redis.conf

此时每个节点的redis服务已经启动,但是每个服务都是单独的服务,并没有构成集群,构成集群我们使用官方提供的工具redis-trib,这个工具是用ruby写的,所以需要安装ruby环境

[root@k8s-master01 redis]$ sudo yum install ruby rubygems -y

这里安装ruby有点小问题,具体问题

在使用工具redis-trib连接之前,需要先安装gem-redis,如果网络可以,可以在线安装,网络差的情况下,可以离线安装:

# 在线安装
[root@k8s-master01 redis]$ gem install redis

# 离线安装:将下载好的 redis-3.0.0.gem 上传到 redis-cluster
[root@k8s-master01 redis]$ gem install ./redis-3.0.0.gem

使用redis.trib工具进行连接:

[root@k8s-master01 redis]$ ./redis-trib.rb create --replicas 1 192.168.0.10:7000 192.168.0.10:7001 192.168.0.20:7002 192.168.0.20:7003 192.168.0.30:7004 192.168.0.30:7005

这里会提示使用redis-cli

将下面命令复制执行

./bin/redis-cli --cluster create 192.168.0.10:7000 192.168.0.10:7001 192.168.0.20:7002 192.168.0.20:7003 192.168.0.30:7004 192.168.0.30:7005 --cluster-replicas 1

https://juejin.cn/post/6844904070973489160

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇
Theme Argon
本网站自 2020-12-24 12:00:00 起已运行