Linux系统构架 - HA集群配置
一、安装
HA 即(high available)高可用,又被叫做双机热备,用于关键性业务。
简单理解就是,有两台机器 A 和 B,正常是 A 提供服务,B 待命闲置,当 A 宕机或服务宕掉,会切换至 B 机器继续提供服务。
常用实现高可用的开源软件有 heartbeat 和 keepalived,其中keepalived 有负载均衡的功能。

1.准备两台机器,主的ip:192.168.1.116 从的ip:192.168.1.115
修改主的,从的名字:主叫master 从叫slave
[root@localhost ~]# hostname master
[root@localhost ~]# bash
[root@master ~]#
[root@localhost ~]# hostname slave
[root@localhost ~]# bash
[root@slave ~]#
2.关闭防火墙,两台同时操作
vim /etc/selinux/config 找到
SELINUX=enforcing
改为
SELINUX=disabled
setenforce
iptables -F
service iptables save
3.编辑hosts
vi /etc/hosts
添加
192.168.1.116 master
192.168.1.115 slave
4.安装heartbeat,两台机器都操作
查看是否有这个包,
yum list |grep heartbeat
安装扩展源。去www.lishiming.net搜索epel
wget www.lishiming.net/data/attachment/forum/epel-release--8_64.noarch.rpm
rpm -ivh epel-release--8_64.noarch.rpm
yum install -y heartbeat
yum install -y libnet
二、配置
主的
cd /usr/share/doc/heartbeat-3.0./
cp authkeys ha.cf haresources /etc/ha.d/
cd /etc/ha.d/
vim authkeys
两台机器通信,用来验证
#auth
# crc
# sha1 HI!
# md5 Hello!
改为
auth
# crc
# sha1 HI!
md5 Hello!
chmod authkeys
vim haresources
默认全部注释
找到
#node1 10.0.0.170 Filesystem::/dev/sda1::/data1::ext2
改为
master 192.168.1.110//eth0: nginx
主的名字 流动ip 网段 网卡 服务
vim ha.cf
全部删掉,写入
debugfile /var/log/ha-debug
logfile /var/log/ha-log
logfacility local0
keepalive
deadtime
warntime
initdead
udpport
ucast eth0 192.168.1.115
auto_failback on
node master
node slave
ping 192.168.1.1
respawn hacluster /usr/lib64/heartbeat/ipfail
debugfile /var/log/ha-debug //该文件保存 heartbeat 的调试信息
logfile /var/log/ha-log //heartbeat 的日志文件
logfacility local0 //日志级别
keepalive 2 //多少时间去探测一次 2秒
deadtime 30 //如果30秒ping不通认为死掉了
warntime 10 //10秒ping不通发出警告
initdead 60 //预留60秒。可能对方在重启
udpport 694 //心跳线,通信端口
ucast eth0 192.168.1.115 //用单独网卡或者串口链接心跳线,对方ip
auto_failback on //如果备启动了,主再次激活,备主动放弃。
node master
node slave //指定主和从,各占一行,主在上从在下
ping 192.168.1.1 //仲裁的地址,判断双方是否是活的
respawn hacluster /usr/lib64/heartbeat/ipfail //以哪个用户身份去运行这个检查网络连接性脚本,对方不存活,把他拉起来的。
两台都安装scp命令才能拷贝
yum install openssh-clients -y
scp authkeys haresources ha.cf slave:/etc/ha.d/
yes/no:yes
root@slave's password:***
从的配置
cd /etc/ha.d/
vim ha.cf
把
ucast eth0 192.168.1.115
改为
ucast eth0 192.168.1.116
两台同时安装nginx
yum install nginx -y
三、启动
主
/etc/init.d/heartbeat start
ifconfig
eth0:0 Link encap:Ethernet HWaddr 00:0C:29:CE:99:EA
inet addr:192.168.1.110 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 流动ip
ps aux |grep ngin
nginx 启动成功
从
/etc/init.d/heartbeat start
ps aux|grep nginx
没有启动
ifconfig
没有eth0: 流动ip没有流动到从上
主:
echo '1111master' > /usr/share/nginx/html/index.html
可以用流动ip访问
从:
echo '2222222slave' > /usr/share/nginx/html/index.html
主:
/etc/init.d/heartbeat stop
ifconfig
ps
都没有了
刷新浏览器,
变成 222*slave
从
ifconfig
ps
启动
Linux系统构架 - HA集群配置的更多相关文章
- linux系统构架 - LB集群之LVS介绍
LB 集群是 load balance 集群的简写,翻译成中文就是负载均衡集群.常用的负载均衡开源软件有 nginx.lvs.keepalived ,商业的硬件负载设备 F5.Netscale. LB ...
- linux系统构架 - LB集群之LVS的DR设置
在lvs的nat模式的基础上 1.清空ipvsadm规则 ipvsadm -C 查看 ipvsadm -ln 2.清空iptables规则 iptables -t nat -F 3.修改rs的网卡配置 ...
- linux系统构架 - LB集群之LVS的NAT
1.环境说明 三台服务器,一台叫dir,两台叫rs1和rs2 (director 和 real server) dir外网ip:192.168.192.129 内网ip:192.168.1.114 ...
- 关于Linux系统下zookeeper集群的搭建
1.集群概述 1.1什么是集群 1.1.1集群概念 集群是一种计算机系统, 它通过一组松散集成的计算机软件和/或硬件连接起来高度紧密地协作完成计算工作.在某种意义上,他们可以被看作是一台计算机.集群系 ...
- Linux系统搭建Hadoop集群
一.环境说明 IP地址 主机名 备注 操作系统 192.168.92.11 hserver1 namenode Ubuntu 16.04 192.168.92.12 hserver2 datanode ...
- linux系统搭建zookeeper集群
转载至:https://blog.csdn.net/weixin_38111957/article/details/82927878 一.引言 今天咱们就来搭建一下zookeeper集群,当然搭建集群 ...
- redis linux安装与简单集群配置
由于项目原因最近在使用redis,把redis的安装以及配置记录下来方便查看. 1.下载 地址http://download.redis.io/releases/ 需要哪个版本就使用那个版本 2.解 ...
- Linux系统下安装Redis和Redis集群配置
Linux系统下安装Redis和Redis集群配置 一. 下载.安装.配置环境: 1.1.>官网下载地址: https://redis.io/download (本人下载的是3.2.8版本:re ...
- linux环境下Apache+Tomcat集群配置
写在前面 apache配置多个tomcat,实现请求分流,多个tomcat服务均衡负载,增加服务的可靠性.最近研究了一下,遇到许多问题,记录一下,方便以后查阅,不喜欢apache,nginx也是可以做 ...
随机推荐
- ptr_fun
ptr_fun 分类: C/C++2012-05-05 20:21 593人阅读 评论(0) 收藏 举报 functionclassfunobjectreturningtypes 目录(?)[-] ...
- NSURLSession学习笔记(一)简介
一.URL Session的基本概念 1.三种工作模式: 默认会话模式(default):工作模式类似于原来的NSURLConnection,使用的是基于磁盘缓存的持久化策略,使用用户keychain ...
- spring事务的配置
前段时间对Spring的事务配置做了比较深入的研究,在此之间对Spring的事务配置虽说也配置过,但是一直没有一个清楚的认识.通过这次的学习发觉Spring的事务配置只要把思路理清,还是比较好掌握的. ...
- nginx 调试
配置单进程非daemon方式启动 daemon off; master_process off;
- gradle 项目构建以及发布maven 私服&& docker 私服构建发布
1. 项目结构 2. 代码说明 a. Dockerfile docker 构建的 FROM openjdk:8-jre-alpine WORKDIR /appdemo/ COPY build/di ...
- 坚持c++,真正掌握c++(4)
这几天复习了c++primer的第12章类的解说,尽管之前这一章也看了几遍.可是我终究认为书读百遍其义自现,如今我给出一些我学习的心得,欢迎大家一起探讨. 首先,类能够说是c++的灵魂,正由于c++中 ...
- openOffice转换的时候乱码在linux下使用openOffice的时候发现在转换后出现了乱码
openOffice转换的时候乱码 在linux下使用openOffice的时候发现在转换后出现了乱码,最后上网查了一下,按照网上的说法去试了试,最后也没有解决,也可能是我这边的linux的权限问题, ...
- 搭建基于hyperledger fabric的联盟社区(三) --生成公私钥证书及配置文件
一.生成公私钥和证书 Fabric中有两种类型的公私钥和证书,一种是给节点之前通讯安全而准备的TLS证书,另一种是用户登录和权限控制的用户证书.这些证书本来应该是由CA来颁发,但是目前只有两个社区,所 ...
- 基于STL优先队列和邻接表的dijkstra算法
首先说下STL优先队列的局限性,那就是只提供入队.出队.取得队首元素的值的功能,而dijkstra算法的堆优化需要能够随机访问队列中某个节点(来更新源点节点的最短距离). 看似可以用vector配合m ...
- Excel不同工作簿之间提取信息
Sub 不同工作簿间提取信息() '用于单个字段信息的提取: Dim w As Workbook, wb1 As Workbook, wb2 As Workbook, wb3 As Workbook ...