最近工作闲下来了,比较有时间,正好来搭建一下redis集群
虚拟机
redis集群三主三从需要六台机器,有的会把主从布在一台机器上。没有那么多云服务器,那就靠虚拟机来实现三主三从的集群了。
使用了VirtualBox来运行虚拟机,服务器OS选的是CentOS 7。
由于是AMD的CPU,比较麻烦,一开始无法打运行虚拟机。后来一是打开了BIOS的AMD-V的配置,另外就是再VitrualBox的安装目录下,将drivers/vboxdrv/VBoxDrv.inf 将配置项改为StartType = 3
并将StartType = 1
注释掉,然后安装。
虚拟机之间的网络通讯,我使用的方案是 桥接网卡 + host-only。host-only用于虚拟机之间的连接,桥接网络用于下载各种安装包,准备配好之后就关掉桥接网络。
CentOS
CentOS安装好之后,给每台虚拟机配上网络。首先要配置DNS。
在/etc/sysconfig/network-scripts/ifcfg-eth0s3
中编辑,此处eth0s3
每个人可能不同,需要视情况而修改对应的配置。
1 | ONBOOT=YES |
配置了两个DNS服务器,重启network就好了。可以通过ping、telnet来验证一下网络。
防火墙在初期也可以关闭掉,避免端口原因导致网络不通畅。关闭防火墙,systemctl stop firewalld.service
,停用防火墙,systemctl disable firewalld.service
。
由于直接使用虚拟机不太方便,我使用了ssh连接。但xshell的连接速度很慢,后来将
/etc/ssh/sshd-config
中的UseDNS
设置为no
,快速建立ssh连接
网络配置好之后,接下来需要更新yum,由于一些包在yum官方不太多,所以还需要额外安装一些
1 | yum -y update |
redis
这次安装的是redis5,之前安装redis3,被ruby版本弄得很是头疼。redis5可以直接通过redis-cli的方式搭建集群。
1 | yum -y install redis5 |
安装完成之后,设置开机自启systemctl enable redis
随后,配置远程连接 /etc/redis.conf
1 | # bind 127.0.0.1 |
配置完成后,重启redis服务
redis-cluster
来到redis-cli所在目录下,可以通过whereis redis-cli
来找到位置
搭建集群,执行命令
1 | ./redis-cli --cluster create --cluster-replicas 1 192.168.56.104:6379 192.168.56.105:6379 192.168.56.106:6379 192.168.56.107:6379 192.168.56.108:6379 192.168.56.109:6379 |
集群便搭建完成了
进去看看redis-cli -h 192.168.56.104 -p 6379 -c
总结
到最后一步,搭建集群,其实是很顺利的。主要是前期内容很多,虚拟机,网络,端口,防火墙,配置,安装包,版本这些。redis集群搭建好了,接下来可以在此基础上运行一些服务,或者再玩玩其他的东西了。