Linux架构之HA配置

简介

通过安装该Linux-HA软件,可以实现Linux双机系统的高可用性解决方案,实现双机系统的热备份,并能够做到双机之间的无缝切换,从而对外

提供稳定可靠的服务,最终实现系统高性能RAS(reliability, availability, and serviceability)。



实验环境

这里使用heartbeat来做HA集群,并且把nginx服务作为HA对应的服务。

Chumjtest01 eth0 172.31.24.199  eth0:1   192.168.1.109 VIP: 172.31.24.202
Chumjtest02 eth0 172.31.24.200 eth0:1   192.168.1.110 VIP: 172.31.24.202

实验准备工作

1.编辑修改hosts文件,将两台服务器的IP添加上,

2. 关闭防火墙 iptables -F;  
   关闭selinux: setenforce 0

3.安装好eprl,安装好heartbeat、libnet



主配置

[[email protected] ~]# cd /usr/share/doc/heartbeat-3.0.4/
[[email protected] heartbeat-3.0.4]# cp  authkeys  ha.cf haresources   /etc/ha.d/
[[email protected] heartbeat-3.0.4]# cd /etc/ha.d/
[[email protected] ha.d]# ls
authkeys  ha.cf  harc  haresources  rc.d  README.config  resource.d  shellfuncs
[[email protected] ha.d]# vim authkeys     //authkeys是验证主从的
auth 3           //选择3 使用md5 验证
#1 crc
#2 sha1 HI!
3 md5 Hello!      //去掉#号,表示打开md5来验证 
[[email protected] ha.d]# chmod 600 authkeys  //赋予root读写权限。

配置VIP

[[email protected] ha.d]# cd /etc/sysconfig/network-scripts/
[[email protected] network-scripts]# cp ifcfg-eth0 ifcfg-eth0:1  //新建一个IP配置文件,同一个网卡可以配置多个IP
[[email protected] network-scripts]# vim ifcfg-eth0:1    //编辑VIP
DEVICE=eth0:1
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none
IPADDR=172.31.24.202    //将IP地址改成VIP地址,去掉一些不要的内容。
PREFIX=24
#GATEWAY=172.31.24.1
DEFROUTE=yes
[[email protected] network-scripts]# service network restart    //重启下网络服务
Shutting down interface eth0:                              [  OK  ]
Shutting down loopback interface:                          [  OK  ]
Bringing up loopback interface:                            [  OK  ]
Bringing up interface eth0:  Determining if ip address 172.31.24.199 is already in use for device eth0...
Determining if ip address 172.31.24.198 is already in use for device eth0...
                                                           [  OK  ]
[[email protected] network-scripts]# ifconfig     //可以看到VIP网卡已经显示
eth0      Link encap:Ethernet  HWaddr 00:50:56:B3:79:E3  
          inet addr:172.31.24.199  Bcast:172.31.24.255  Mask:255.255.255.0
          inet6 addr: fe80::250:56ff:feb3:79e3/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:22 errors:0 dropped:0 overruns:0 frame:0
          TX packets:24 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:2130 (2.0 KiB)  TX bytes:3428 (3.3 KiB)
eth0:1    Link encap:Ethernet  HWaddr 00:50:56:B3:79:E3  
          inet addr:172.31.24.198  Bcast:172.31.24.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

配置节点文件

[[email protected] /]# cd /etc/ha.d/
[[email protected] ha.d]# vim haresources
#node1  10.0.0.170 Filesystem::/dev/sda1::/data1::ext2
chumjtest01     172.31.24.198:/24/eth0:0 nginx      //添加主机名、VIP和需要集群的服务

配置ha配置文件

[[email protected] ha.d]# vim ha.cf
debugfile /var/log/ha-debug     
logfile /var/log/ha-log
logfacility     local0
keepalive 2
deadtime 30
warntime 10
initdead 60
udpport 694
ucast eth0 172.31.24.200    //对方的IP地址
auto_failback on
node    chumjtest01    //node1地址
node    chumjtest02    //node2地址
ping 172.31.24.1        //仲裁地址,一般用路由器或者交换机
respawn hacluster /usr/lib64/heartbeat/ipfail


从机配置

将主机上的配置文件拷贝到从机上

[[email protected] ha.d]scp authkeys ha.cf haresources chumjtest02:/etc/ha.d/
只要修改
vi  /etc/ha.d/ha.cf 
 //只需要更改一个地方
ucast eth1 172.31.24.200 改为   ucast eth1 172.31.24.199


启动heartbeat

先启动主,在启动从

主机启动情况:

[[email protected] ha.d]# service heartbeat start
Starting High-Availability services: INFO:  Resource is stopped
Done.

检查下nginx服务有没有启动

[[email protected] ha.d]# ps aux |grep nginx
root      6989  0.0  0.0 109336  2036 ?        Ss   17:40   0:00 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf
nginx     6990  0.0  0.0 109760  2704 ?        S    17:40   0:00 nginx: worker process                   
nginx     6991  0.0  0.0 109760  2756 ?        S    17:40   0:00 nginx: worker process                   
root      6995  0.0  0.0 103252   824 pts/1    S+   17:41   0:00 grep nginx

从机启动情况:

[[email protected] ha.d]# service heartbeat start
Starting High-Availability services: INFO:  Resource is stopped
Done.


测试

在主机的nginx下写一个简单的html文件,并且访问下

[[email protected] /]# cd /usr/share/nginx/html
[[email protected] html]# vim 1.html
chumjtest01
[[email protected] ha.d]# curl http://172.31.24.199/1.html    //测试下显示chumjtest01
chumjtest01

同样在从机上写下一个简单的html文件

[[email protected] html]# vim 1.html
chumjtest02
[[email protected] html]# curl http://172.31.24.200/1.html   //网页无法显示,说明Nginx没启动
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL /1.html was not found on this server.</p>
<hr>
<address>Apache/2.2.15 (CentOS) Server at 172.31.24.200 Port 80</address>
</body></html>

在测试下VIP访问,说明现在在nginx在主机上运行

[[email protected] ha.d]# curl http://172.31.24.202/1.html
chumjtest01

打开防火墙,将主机禁ping

[[email protected] html]# iptables -I INPUT -p icmp -j DROP

查看主机chumjtest01的HA日志,看到“We are dead”,表示主机认为自己已经死了,要切到从机上

Jan 05 13:55:29 chumjtest01 ipfail: [21826]: info: NS: We are dead. :<

查看从机chumjtest02的HA日志,从机启动ngix。

ResourceManager(default)[3176]: 2017/01/05_13:55:44 info: Running /etc/init.d/nginx  start

在访问下VIP的地址,已经切换到从机上去了。

[[email protected] html]# curl http://172.31.24.202/1.html
chumjtest02


注:

heartbeat日志在/var/log/ha-log,如果启动有问题请尽量查看日志。

1.ERROR: Client child command [/usr/lib/heartbeat/ipfail] is not executable

说明64位系统,要在ha.cf下的/usr/lib64/heartbeat/ipfail

2.ERROR: Illegal directive [node ] in /etc/ha.d//ha.cf

ucast eth0 172.31.24.200 要注意在ha.cf下网络端口是否匹配

时间: 2024-10-13 02:36:47

Linux架构之HA配置的相关文章

VCSA 6.5 HA配置 之一:架构概览

VCSA 6.5 HA配置之一:架构概览 在VMware vSphere环境中vCenter Server的作用尤其重要,虽然在之前的版本中VMware曾经推出过vCenter Heartbeat来实现vCenter Server的高可用,但是该解决方案早就被VMware抛弃,故此很多管理员都对VMware原生的高可用解决方案翘首以盼,终于在VMware vSphere 6.5 这个版本发布的时候推出了vCenter Server Appliance 6.5的高可用架构,注意的是仅支持vCent

linux之DNS基础配置

DNS:domain Name Service  监听在53/udp, 53/tcp C/S架构:S(bind).C(共享) bind:bekerley internet name domain FQDN:Full Qualified Domain Name完全限定域名 www.magedu.com.: FQDN      magedu.com:域名       主机名解析 :把一种名称转换为另一种名称的过程 ,一般指字串和数字之间的转换.       解析库:某种存储             

【1】Kali Linux的安装及配置

爱生活就得够GEEK. ---------------------------------------------------------------完美的分割线-------------------------------------------------------------- 官方文档的筛选 [1]Kali Linux是什么? Kali Linux是一个高级渗透测试和安全审计Linux发行版. Kali Linux 特性 Kali是BackTrack Linux完全遵循Debian开发

linux基础知识学习-linux架构

硬盘分区: 第一扇区(512bytes): MSR:master boot record (446bytes)主引导分区 partion table:(64bytes)分区表,四个.可以是主分区(primary)或者扩展分区(Extended), 每个表指向磁盘某段区间.最多只有一个扩展分区,扩展分区里面可以扩展多个逻辑分区.其余扇区(柱面(cylinder)):实际存储的地方 linux 中(\etc/fstab):IDE  总线形式不同 (a~d)/dev/hda SATA,SCSI,USB

So Easy! Oracle在Linux上的安装配置系列五

So Easy! Oracle在Linux上的安装配置系列五 本篇是监听器的配置的续篇,上一小节我们创建了一个监听器,创建了密码文,在监听和实例都启动的情况下,从远程windows即时客户端连接到了oracle服务器.本篇我将继续说监听器,还将完成相关的实验 以下内容整理自网络 Oracle 监听器 Listener 是一个重要的数据库服务器组件,在整个 Oracle 体系结构中,扮演着重要的作用.它负责管理 Oracle 数据库和客户端之间的通讯,它在一个特定的网卡端口(默认是TCP 1521

(2)LVS+Keepalived高可用负载均衡架构原理及配置

1.keepalived 介绍2.keepalived 优缺点3.keepalived 应用场景4.keepalived 安装配置5.keepalived+lvs 高可用6.keepalived+nginx 高可用7.keepalived 切换原理8.性能优化9.常见故障 一.keepalived 介绍 1.keepalived 定义keepalived是一个基于VRRP(virtual route redundent protocol)协议来实现的LVS服务高可用方案,可以利用其来避免单点故障

搭建LMAP架构之 Apache配置(上篇)

搭建LMAP架构之 Apache配置(上篇) [TOC] 文章目录 一.LAMP的概述 1.1.什么是LAMP ? 1.2.LAMP 架构平台的构成组件 二.搭建LAMP的准备工作 2.1.安装包的下载 2.2.远程挂载 三.安装Apache 四.总结 一.LAMP的概述 1.1.什么是LAMP ? LAMP 架构是成熟的企业网站应用模式之一,能够协同工作的一套系统及相关软件,能够提供动态 Web 站点服务及其应用开发环境. LAMP 是一个缩写词,L:Linux操作系统,A:Apache网站服

&#8203;查看Linux系统的所有配置命令

查看Linux系统的所有配置命令     1.查看主板的序列号: dmidecode | grep -i 'serial number'     2.查看CPU信息: cat /proc/cpuinfo dmesg | grep -i 'cpu' dmidecode -t processor     3.查看内存信息: cat /proc/meminfo free -m vmstat     5.查看网卡信息: dmesg | grep -i 'eth' cat /etc/sysconfig/h

企业网络架构规划及配置实施(实用)

企业基础网络架构规划及配置实施 一.网络规划 出口地址段:202.1.1.0/24 路由器出口:202.1.1.1/24 ISP网关:202.1.1.2/24 互联地址段 192.168.90.0/24 路由器:192.168.90.1/24 核心交换机:192.168.90.2/24 管理地址段:192.168.100.0/24 核心管理地址:192.168.100.1/24 接入LI-1:192.168.100.11/24 接入LI-2:192.168.100.12/24 接入LI-3:19