centos7 下源码安装keepalived踩坑记
转帖请注明来源:https://my.oschina.net/u/2342969/blog/2962442
目录
-
环境准备
-
为什么源码安装
- 源码安装
环境准备
- 全新最小化安装的centos 7.5
- keepalived 1.4.5
- vip : 172.16.0.169
为什么源码安装
centos7 自带的 yum安装,keepalived 版本为1.3.5, 这个版本会有一个大坑,导致高可用对应的服务挂掉,如果触发keepalived down
通过 service keepalived status 命令查看运行状态会看到 tcp socket bind failed. rescheduling 这个异常, 通过源码安装无此问题
源码安装
下载安装包并解压
#cd /opt #wget http://www.keepalived.org/software/keepalived-1.4.5.tar.gz #tar -zxvf /opt/keepalived-1.4.5.tar.gz
安装编译依赖包,不安装依赖包编译不成功
#yum install curl gcc openssl-devel libnl3-devel net-snmp-devel libnfnetlink-devel -y
编译安装
编译安装成功后,就会自动生成启停服务
#cd /opt/keepalived-1.4.5 #./configure #make && make install
创建配置文件
源码安装默认配置文件路径为: /etc/keepalived/keepalived.conf ,不创建这个文件,不能成功启动
#mkdir -p /etc/keepalived #vim /etc/keepalived/keepalived.conf
配置文件如下:
自行根据注释修改 备实例的配置
注意: 实际配置要把注释内容去掉,否则会产生某些功能失效
! Configuration File for keepalived global_defs { router_id 1 #每个keepalived取个不同名称 } vrrp_instance VI_1 { state MASTER # MASTER为主实例,BACKUP 为从实例 interface eth0 # 网卡名称 virtual_router_id 60 # 主备这里要配置为同样的 priority 100 # 优先级,主要高于备. 一般主配置为100 备配置为80 advert_int 1 nopreempt # 主动抢占,主备都开启的话,服务器抢占过去后,要等这个服务器keepalived停掉才会漂移到另一台 authentication { auth_type PASS # 主备必须配置成同样的 auth_pass 1111 # 主备必须配置成同样的 } virtual_ipaddress { 172.16.0.169 # vip,主备必须配置一样 } } } }
防火墙开启vrrp
keepalived 是基于vrrp做到虚拟ip漂移的,这里不开启的话,主备均会认为对方挂掉了,会造成主备都能获取到虚拟ip(vip)
#firewall-cmd --add-rich-rule='rule protocol value="vrrp" accept' --permanent #firewall-cmd --reload
设置开机服务
#systemctl enable keepalived
操作keepalived
#service keepalived start #service keepalived stop #service keepalived restart #service keepalived status
验证结果
首先在主备实例的服务器分别 执行 service keepalived start 开启keepalived
- 通过ip addr 命令分别查看主备两台机器,只有主示例的服务器可以看到这个vip
- 在主实例的服务器执行 service keepalived stop 停止keepalived
- 通过ip addr 命令查看备实例的ip, 会发现可以看到vip的
- 在主实例的服务器执行 service keepalived start 再次启动keepalived
- 通过ip addr 命令分别查看主备两台机器,只有主示例的服务器可以看到这个vip
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
4个顶级开源JavaScript图表库
图表对于可视化数据和使网站具有吸引力非常重要。可视化演示使分析大块数据和传达信息变得更加容易。JavaScript图表库使你能够以易于理解和交互的方式可视化数据,并改善网站的设计。有四个顶级开源JavaScript图表库,你一定要Get! 1.Chart.js Chart.js是一个开源JavaScript库,允许你在应用程序上创建动画,美观和交互式图表。它可以在MIT许可下获得。 使用Chart.js,你可以创建各种令人印象深刻的图表和图形,包括条形图,折线图,面积图,线性比例和散点图。它完全响应各种设备,并利用HTML5 Canvas元素进行渲染。 以下是使用库绘制条形图的示例代码。我们将使用Chart.js内容交付网络(CDN)将其包含在此示例中。请注意,使用的数据仅用于说明目的。 <!DOCTYPE html> <html> <head> <script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.5.0/Chart.min.js"></script> ...
- 下一篇
在Ignite中使用k-最近邻(k-NN)分类算法
在本系列前面的文章中,简单介绍了一下Ignite的线性回归算法,下面会尝试另一个机器学习算法,即k-最近邻(k-NN)分类。该算法基于对象k个最近邻中最常见的类来对对象进行分类,可用于确定类成员的关系。 一个适合k-NN分类的数据集是鸢尾花数据集,它可以很容易地通过UCI网站获得。 鸢尾花数据集由150个样本组成,来自3种不同种类的鸢尾花各有50朵(Iris Setosa, Iris Versicolour和Iris Virginica)。以下四个特征可供每个样本使用: 萼片长度(cm) 萼片宽度(cm) 花瓣长度(cm) 花瓣宽度(cm) 下面会创建一个模型,利用这四个特征区分不同的物种。 首先,要获取原始数据并将其拆分成训练数据(60%)和测试数据(40%)。然后再次使用Scikit-learn来执行这个任务,下面修改一下前一篇文章中使用的代码,如下: from sklearn import datasets import pandas as pd # Load Iris dataset. iris_dataset = datasets.load_iris() x = iris_d...
相关文章
文章评论
共有0条评论来说两句吧...