文档章节

pacemaker之haproxy web(httpd)高可用实战详解

tantexian
 tantexian
发布于 2017/06/07 18:24
字数 691
阅读 217
收藏 0

本博文分别完成如下实验:

1>首先实验简单的pacemaker+httpd高可用

2>在1的基础上面实现haproxy web负载均衡高可用

 

一:pacemaker+httpd高可用

1、首先需要根据之前博文步骤将node31、node32的pacemaker基础环境配置好。(node31、node32 IP地址为172.31.2.31 172.31.2.32)

 

centos7只pacemaker高可用安装配置详解:https://my.oschina.net/tantexian/blog/648990

或者:

查看配置好pacemaker的基础环境:

pcs cluster status

 


2、配置安装apache httpd服务(node31、node32都需要配置):

yum install httpd -y

vim /var/www/html/index.html

I'm node31!!! My IP is 172.31.2.31...(PS:在node32上面为:I'm node32!!! My IP is 172.31.2.32...)

重启httpd:systemctl restart httpd

 

页面请求:

Apache 1.3.2 及以后的版本,apache自带的功能server-status。可以用来查看apache进程占用的服务器资源及apache进程状态信息。

 

PS:由于后面pacemaker需要根据httpd server-status来进行检测(当然也可以使用其他页面/index.html)

开启httpd server-status:

vi /etc/httpd/conf/httpd.conf

<Location /server-status>

SetHandler server-status

Order Deny,Allow

Deny from all

Allow from localhost

</Location>

systemctl restart httpd

更多关于如何配置httpd请参考博文:http://blog.csdn.net/tantexian/article/details/50056199

 

 

3、添加一个VIP来给外界提供服务:

查看pcs使用帮助:pcs resource help

 

pcs resource create WebVIP ocf:heartbeat:IPaddr2 ip=172.31.2.100 cidr_netmask=32 op monitor interval=30s nic=eth0

注:上述的VIP必须与系统所有在网络处于同一个网段(但是没有被使用的IP,执行完上述命令则可以ping通WebVIP 172.31.2.100)。

解释ocf:heartbeat:IPaddr2:

ocf:代表pacemaker支持的资源标注类型,更多请参考博文:http://blog.csdn.net/tantexian/article/details/50160959

heatbeat:表示资源脚本所在ocf的命名空间。

IPaddr2:资源脚本名称。

 

 

3、配置好WEBVIP查看当前pacemaker状态:

 

 

4、查看pacemaker默认支持的apache使用:

pcs resource list | grep apache

 

pcs resource describe ocf:heartbeat:apache

 

 

5、添加apache到集群pacemaker控制中:

pcs resource create MyWeb ocf:heartbeat:apache configfile=/etc/httpd/conf/httpd.conf statusurl="http://localhost/server-status" op monitor interval=5s

设置为每隔5秒钟检测一次server-status状态。

 

 

启动整个集群节点:pcs cluster start --all)

 

 

启动resource(pcs没有直接启动resource的命令,只能通过):

pcs resource enable MyWeb

 

 

确保资源在同一个节点运行:

pcs constraint colocation add WebVIP MyWeb INFINITY

 

 

  • Resource Location(资源位置):定义资源可以、不可以或尽可能在哪些节点上运行;

  • Resource Collocation(资源排列):排列约束用以定义集群资源可以或不可以在某个节点上同时运行;

  • Resource Order(资源顺序):顺序约束定义集群资源在节点上启动的顺序;

 

 

6、当一个节点宕机,VIP会自动漂移到其他无故障主机,从而达到高可用。(可以使用关机模拟)。

© 著作权归作者所有

共有 人打赏支持
tantexian
粉丝 201
博文 502
码字总数 722631
作品 0
成都
架构师
haproxy调度后端动静分离集群架构

项目要求: (1) 动静分离部署wordpress,动静都要能实现负载均衡,要注意会话的问题; (2) 设计拓扑; (3) haproxy的设计要求: (a) stats page,要求仅能通过本地访问使用管理接口; (b) 动...

狐狸和鳄鱼
07/25
0
0
高可用haproxy调度后端服务器实现动静分离集群架构

项目要求: (1) 动静分离部署wordpress,动静都要能实现负载均衡,要注意会话的问题; (2) 设计拓扑; (3) haproxy的设计要求: (a) stats page,要求仅能通过本地访问使用管理接口; (b) 动...

狐狸和鳄鱼
07/25
0
0
haproxy负载均衡和配合keepalived的快速部署

四台服务器 server1.example.com //realserver 本次实验作为httpd服务器 server2.example.com //realserver 本次实验作为httpd服务器 server3.example.com //安装haproxy 和 keepalived ser......

月黑风高杀人夜
2015/07/18
0
1
OpenStack(Queens版)高集群-3.高可用配置(pacemaker&haproxy)

参考文档: Install-guide:https://docs.openstack.org/install-guide/ OpenStack High Availability Guide:https://docs.openstack.org/ha-guide/index.html 理解Pacemaker:http://www.......

盖世英雄iii
08/23
0
0
keepalived+haproxy实现高可用负载均衡集群

keepalived+haproxy 实现高可用、负载均衡服务器集群 实验环境:iptables和selinux关闭 前端高可用负载均衡调度主机:vm7 172.25.28.7 vm8 172.25.28.8 后台应用服务器: vm1 172.25.28.1 vm...

yagujj
2015/07/17
0
0

没有更多内容

加载失败,请刷新页面

加载更多

74.expect脚本同步文件以及指定host同步文件 构建分发系统文件和命令

20.31 expect脚本同步文件: 在expect脚本中去实现在一台机器上把文件同步到另外一台机器上去。核心命令用的是rsync ~1.自动同步文件 #!/usr/bin/expect set passwd "123456" spawn rsync -a...

王鑫linux
18分钟前
0
0
TypeScript项目引用(project references)

转发 TypeScript项目引用(project references) TypeScript新特性之项目引用(project references) 项目引用是TypeScript 3.0中的一项新功能,允许您将TypeScript程序构建为更小的部分。 通过这...

durban
23分钟前
0
0
爬虫入门

导读 网络爬虫(Web crawler),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本,它们被广泛用于互联网搜索引擎或其他类似网站,可以自动采集所有其能够访问到的页面内容,以获取...

问题终结者
23分钟前
0
0
ppwjs之bootstrap文字排版:无序列表项不换行

<!DOCTYPT html><html><head><meta http-equiv="content-type" content="text/html; charset=utf-8" /><title>ppwjs欢迎您</title><link rel="icon" href="/favicon.ico" ......

ppwjs
30分钟前
0
0
SpringBoot 学习一

本文将从以下几个方面介绍: 前言 HelloWorld 读取配置文件 例子(CURD) 前言 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架...

tsmyk0715
30分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部