pacemaker+corosync集群实现高可用

Pacemaker 安装与配置 前言 为保证系统更高的可用性,常常需要对重要的关键业务做双机热备,比如一个简单的 Web 服务需要做双机热备。 准备 参数 说明 192.168.139.87 主节点 192.168.139.88 备节点 192.168.139.118 虚拟IP 实列实现的功能为:正常情况下由192.168.139.87提供服务,客户端可以根据主节点提供的VIP访问集群内的各种资源,当主节点故障时备节点可以提供自动接管主节点的IP资源,即VIP为192.168.139.118。 操作 关闭防火墙 阅读详情

pacemaker简介

pacemaker作为linux系统高可用HA的资源管理器,位于HA集群架构中的资源管理,资源代理层,它不提供底层心跳信息传递功能。(心跳信息传递是通过corosync来处理的这个使用有兴趣的可以在稍微了解一下,其实corosync并不是心跳代理的唯一组件,可以用hearbeat等来代替)。pacemaker管理资源是通过脚本的方式来执行的。我们可以将某个服务的管理通过shell,python等脚本语言进行处理,在多个节点上启动相同的服务时,如果某个服务在某个节点上出现了单点故障那么pacemaker会通过资源管理脚本来发现服务在改节点不可用。

pacemaker只是作为HA的资源管理器,所以不要想当然理解它能够直接管控资源,如果你的资源没有做脚本配置那么对于pacemaker来说它就是不可管理的。


高可用pacemaker+corosync集群

安装

[root@server4 ~]# vim /etc/yum.repos.d/rhel-source.repo  #配置高可用集群
[root@server4 ~]# yum repolist
[root@server4 ~]# yum install -y pacemaker corosync   #在server1主机做相同下载的安装包
[root@server4 ~]# cd /etc/corosync/
[root@server4 corosync]# ls
[root@server4 corosync]# cp corosync.conf.example corosync.conf
[root@server4 corosync]# vim corosync.conf
[root@server4 corosync]# scp corosync.conf root@172.25.40.1:/etc/corosync/

这里写图片描述
这里写图片描述

将server1和server4服务开启/etc/init.d/corosync start

[root@server4 ~]# crm_verify -VL   #校验,根据校验结果解决软件依赖性

这里写图片描述

在server1和server4主机上同时下载

yum install -y crmsh-1.2.6-0.rc2.2.1.x86_64.rpm pssh-2.3.1-2.1.x86_64.rpm 

【server1】监控结点连接状态crm_mon
这里写图片描述
【server4】主机

[root@server4 ~]# crm  #进入交互式

这里写图片描述
这里写图片描述
用【server1】监控:
这里写图片描述
如果将【server1】主机的/etc/init.d/corosync stop
这里写图片描述

[root@server1 ~]# crm
[root@server1 ~]# /etc/init.d/corosync stop

这里写图片描述
【server4】监控:
这里写图片描述

[root@server1 ~]# /etc/init.d/corosync start
[root@server1 ~]# cd rpmbuild/
[root@server1 rpmbuild]# ls
[root@server1 rpmbuild]# cd RPMS/
[root@server1 RPMS]# cd x86_64/
[root@server1 x86_64]# ls
[root@server1 x86_64]# scp haproxy-1.6.11-1.x86_64.rpm  server4:

【server4】主机

[root@server4 ~]# rpm -ivh haproxy-1.6.11-1.x86_64.rpm 
[root@server4 ~]# /etc/init.d/haproxy start

【server1】主机

[root@server1 x86_64]# cd /etc/haproxy/
[root@server1 haproxy]# ls
[root@server1 haproxy]# scp haproxy.cfg server4:/etc/haproxy/
[root@server1 haproxy]# crm

这里写图片描述
监控:
这里写图片描述

[root@server4 ~]# crm node standby  #表示不接管资源,但心跳仍正常;当恢复为node时,资源不会回切

这里写图片描述
若是一个双结点集群,当有一端关掉服务时,另一结点则会自动丢弃资源,也不再接管,因为一个结点不能构成集群。


Fence机制

在server1和server4上建立/etc/cluster

[root@foundation40 ~]# systemctl start fence_virtd
[root@foundation40 cluster]# scp -r fence_xvm.key root@172.25.40.1:/etc/cluster/   #将fence的钥匙传给server1
[root@foundation40 cluster]# scp -r fence_xvm.key root@172.25.40.4:/etc/cluster/   #将fence的钥匙传给server4
[root@server4 ~]# crm
crm(live)# configure
crm(live)configure# property stonith-enabled=true  #开启fence机制,更改为ture表示资源会迁移
crm(live)configure# commit
[root@server4 cluster]# yum install -y fence-virt   #在server1上相同下载fence-virt
[root@server4 cluster]# crm
crm(live)# configure
crm(live)configure# primitive vmfence stonith:fence_xvm params pcmk_host_map="server1:test1;server4:test4" op monitor interval=1min  #添加vmfence
crm(live)configure# commit
crm(live)configure# show

这里写图片描述
查询节点状态的变化
这里写图片描述

崩溃server4内核,server4自动重启
服务起在哪个节点崩溃哪个内核

[root@server4 cluster]# echo c > /proc/sysrq-trigger

这里写图片描述

启动server4上corosync服务

[root@server4 ~]# /etc/init.d/corosync start
Starting Corosync Cluster Engine (corosync):               [  OK  ]

这里写图片描述

corosync + pacemaker实现集群的高可用 Pacemaker是一个集群资源管理器。它利用集群基础构件(OpenAIS、heartbeat或corosync)提供的消息和成员管理能力来探测并从节点或资源级别的故障中恢复,以实现群集服务(亦称资源)的最大可用性。 pacemaker和corosync,后者用于心跳检测,前者用于资源转移。两个结合起来使用,可以实现对高可用架构的自动管理。 心跳检测是用来检测服务器是否还在提供服务... 阅读详情

相关推荐

Pacemaker + Corosync 集群高可用的实现(Fence、nfs共享存储)

一、基础概念 1.什么是Pacemaker? Pacemaker是 Linux环境中使用最为广泛的开源集群资源管理器, Pacemaker利用集群基础架构(Corosync或者 Heartbeat)提供的消息和集群成员管理功能,实现节点和资源级别的故障检测和资源恢复,从而最大程度保证集群服务的高可用。从逻辑功能而言, pacemaker在集群管理员所定义的资源规则驱动下,负责集群中软件服务的全生命...

weixin_44209804的博客 2055

Pacemaker详解

一、前言   云计算与集群系统密不可分,作为分布式计算和集群计算的集大成者,云计算的基础设施必须通过集群进行管理控制,而作为拥有大量资源与节点的集群,必须具备一个强大的集群资源管理器(ClustersystemManager,CSM)来调度和管理集群资源。对于任何集群而言,集群资源管理器是整个集群能够正常运转的大脑和灵魂,任何集群资源管理器的缺失和故障都会导致集群陷人瘫痪混乱的状态。Openstack的众多组件服务既可以集成到单个节点上运行,也可以在集群中分布式运行。但是,要实现承载业务系统的高...

Vic的博客 2760

Corosync和Pacemaker实现集群的高可用

概述 Corosync是集群管理套件的一部分,他在传递信息的时候可以通过一个简单的配置文件来定义信息传递的方式和协议等。也就是说,corosync是Messaging Layer集群信息层软件,需要pacemaker资源管理器,才能构成一个完整的高可用集群。它也是运行于心跳层的开源软件。(是集群框架引擎程序) Pacemaker也就是Cluster Resource Manager(简称CRM),是一个集群资源管理器。它利用群集基础构建(corosync或heartbeat)提供的消息和成员管理能力

wnccmyr的博客 515

Linux 高可用(HA)集群之Pacemaker详解

大纲说明:本来我不想写这篇博文的,因为前几篇博文都有介绍pacemaker,但是我觉得还是得写一下,试想应该会有博友需要,特别是pacemaker 1.1.8(CentOS 6.4)以后,pacemaker 有些特别要注意的变化 ,最后想说,敬开源,敬开源精神。(pacemaker官方网站:http://clusterlabs.org/)一、pacemaker 是什么二、pa...

weixin_33795806的博客 1780

pacemaker+corosync实现高可用集群

一.是什么: 1.pacemaker: Pacemaker是一个集群资源管理器(CRM)。它利用集群基础构件(OpenAIS 、heartbeat或corosync)提供的消息和成员管理能力来探测并从节点或资源级别的故障中恢复,以实现群集服务(亦称资源)的最大可用性。   2.corosync: Corosync是集群管理套件的一部分,它在传递信息的时候可以通过一个简单的配置文件来定义信...

雅雅雅雅雅呀的博客 559

Linux高可用集群(一):Corosync/Openais + Pacemaker 实现高可用集群

Corosync简介:               Coreosync在传递信息的时候可以通过一个简单的配置文件来定义信息传递的方式和协议等。它是一个新兴的软件,2008年推出,但其实它并不是一个真正意义上的新软件,在2002年的时候有一个项目Openais  , 它由于过大,

Dean的Linux & Hadoop 2万+

利用pcs+pacemaker+corosync实现(HA)高可用集群

实验环境搭建 创建一台操作系统是rhel7.6的虚拟机node,配置好网络仓库,解析,网卡设置,关闭火墙和selinux后封装 克隆node虚拟机,虚拟机域名为node1,node2,node3,主机名分别为server1,server2,server3 配置好三台主机的网络,使三台主机能够相互ping通 实验目的和实验步骤 使用corosync作为集群消息事务层,pacemaker作为集群资源管理器,pcs作为CRM的接口管理工具。要求实现http的高可用功能 实验步骤 实现简单的http高可用 将ser

qq_47656380的博客 3491

1、Pacemaker是什么?

Pacemaker 是企业级高可用集群的首选方案,适合需要管理复杂资源、多节点协同和严格脑裂防护的场景。其优势在于强大的资源调度能力、完善的故障处理机制和对传统架构的良好支持。随着云原生技术的发展,Pacemaker 也在不断演进,通过集成容器和微服务技术,继续服务于关键业务系统的高可用性需求。

xuebo1129927648的博客 361

corosync+ pacemaker + crmsh 实现高可用集群

Corosync + pacemaker + crmsh 配置高可用集群:HA:高可用集群是指以减少服务中断时间为目的的服务器集群技术。它通过保护用户的业务程序对外不间断提供的服务,把因软件/硬件/人为造成的故障对业务的影响降低到最小程度。高可用集群的应用系统有多样化发展趋势,用途也越来越多样化,同时带来了配置及可操作性方面的复杂性,因此选择好的高可用软件至关重要 高可用集群,英文原

Mryiyi的博客 724

pyocfagent:Python OCF资源代理框架

pyoccfagent 适用于Pacemaker的Python OCF资源代理框架群集 这是一个Python OCF群集资源代理框架,用于在Python中实现OCF资源代理。 它允许您使用纯Python逻辑为Pacemaker实现OCF兼容的资源代理。 大多数资源代理都是作为Shell脚本实现的(有关示例,请参见Debian Package资源代理)。 通过pyocfagent,您可以直接在Python中实现此类资源代理。 该框架通过自省派生的Pyhon类,从源代码动态创建资源代理元数据。 正在安装 克隆git Repository并执行: python setup.py安装 包含用于生成Debian软件包的debian子目录。 如果要生成debian软件包,请运行: dpkg-buildpackage 用法 有关详细示例,请参见提供的example.py。 出于测试目的,您可以在

Windows server 2012R2安装Oracle11g

打开 开始——所有程序——Oracle-OraDb11g_home1——配置和移植工具——Database Configuration Assistant。打开 开始——所有程序——Oracle-OraDb11g_home1——配置和移植工具——Net Configuration Assistant。首先打开Oracle的安装位置找到下面的位置找到tnsnames.ora文件右键编辑。打开Oracle的安装位置找到下面的位置找到tnsnames.ora文件右键编辑。选择仅安装数据库软件。

qq_74770105的博客 3596

利用pcs +pacemaker +corosync 实现(HA)高可用集群

实验环境搭建 在linux环境中,通过母盘是redhat7.6的操作系统,克隆搭建三台域名分别为node1,node2, node3,主机名分别为server1,server2,server3的三台虚拟机。(名称可以任选) 给三台主机分别配置好各自的ip地址和dns地址解析,实现三台虚拟机可以互相ping通。 对于虚拟机的ip和对应的dns解析可以参考 配置好三台主机的yum源仓库,(可以通过宿主机的httpd服务,搭建网络仓库) 对于做高可用节点的虚拟机server1和server2则需要

Snji_G的博客 2064

在 Linux/Debian/Ubuntu 上使用 Brasero 刻录光盘

在 Ubuntu 系统中,Brasero 是一个非常方便的光盘刻录工具。无论是创建数据光盘、音频光盘还是刻录光盘镜像文件,Brasero 都能轻松胜任。本文将介绍如何在 Ubuntu 上安装和使用 Brasero 进行光盘刻录。

I AM COMING BACK... 3550

Limux运维——用Pacemaker及 corosync实现高可用集群

集群 的必要条件: 1) 资源管理器(pacemaker) 2)心跳(corosync) pacemaker简介 pacemaker作为linux系统高可用HA的资源管理器,位于HA集群架构中的资源管理,资源代理层,它不提供底层心跳信息传递功能。(心跳信息传递是通过corosync来处理的这个使用有兴趣的可以在稍微了解一下,其实corosync并不是心跳代理的唯一组件,可以用hearbea...

msm05138240的博客 755

ANSYS Help USER300

USER 300概述单元描述输入数据假设与限制条件 概述 单元描述 Mechanical APDL提供了一种方便的方法来创建自定义的单元,命名为USER300,可以创建几乎任何单元类型。 UserElem子程序为Mechanical APDL在单元类型创建上提供了一个接口,可传递用户自定义单元创建时所需的所有数据,然后从自定义单元返回所有数据和结果,以更新数据库和文件。因为通过接口可以访问数据库和文件信息,所以很少需要了解Mechanical APDL数据库程序和文件结构。该接口还提供了获取Mechanic

weixin_47019765的博客 2235

QEMU+KVM实战:5分钟搞定Ubuntu 24.04虚拟机搭建(附性能优化技巧)

本文详细介绍了在Linux宿主机上使用QEMU和KVM快速搭建Ubuntu 24.04虚拟机的完整实战流程。内容涵盖从环境准备、核心组件解析到具体的安装命令,并重点分享了针对CPU、内存、存储I/O及网络性能的深度优化技巧,旨在帮助用户构建一个响应迅速、资源隔离良好的高性能虚拟化开发与测试环境。

j2k3l4的博客 753

1、高可用集群- Pacemaker+Corosync实现负载均衡和高可用

1.问题引入 计算机集群可用于提供高可用性服务或资源。多台机器的冗余是用来防止多种类型的故障。集群将使用Pacemaker和Corosync提供资源管理和消息传递。下面将介绍所需的包和对其配置文件的修改,以及使用Pacemaker命令行工具生成用于集群控制的XML。 2.什么是Pacemake? Pacemaker是一种集群资源管理器,也就是说,它是一种负责部署软件生命周期的逻辑——间接地可能甚至是整个系统或它们的互连——在一组计算机(又名节点)的控制下,并由规定的规则驱动。实现集群服务的最大可用性通过检

qq_27172205的博客 504

独立游戏开发者的新武器:实测腾讯混元3D自动绑骨,搭配Mixamo让角色动画制作效率翻倍

本文实测腾讯混元3D自动绑骨功能与Mixamo动画库的协同使用,显著提升独立游戏开发者的角色动画制作效率。通过解决卡通角色绑骨偏差、优化骨骼权重及动画状态机配置,使原本两周的流程缩短至三天,并分享Unity中的性能优化与版权合规要点。

weixin_42662605的博客 497

mysql pacemaker_集群:corosync+pacemaker实现MySQL服务高可用

高可用集群是指以减少服务中断时间为目的的服务器集群技术。它通过保护用户的业务程序对外不间断提供的服务,把因软件/硬件/人为造成的故障对业务的影响降低到最小程度。高可用集群的应用系统有多样化发展趋势,用途也越来越多样化,同时带来了配置及可操作性方面的复杂性,因此选择好的高可用软件至关重要。本文章实现用corosync+pacemaker实现MySQL的高可用,并且通过配置一台NFS服务器专门用来存储...

weixin_34580002的博客 635

半导体物理基础:载流子输运理论_(4).载流子浓度与费米能级

费米能级(Fermi Level)是描述半导体中电子和空穴能量分布的基准能级。在绝对零度下,费米能级以下的所有能级都被电子占据,费米能级以上的所有能级都是空的。随着温度的升高,电子会获得足够的能量跃迁到费米能级以上的能级,形成导带中的自由电子和价带中的空穴。费米能级在半导体中的位置取决于掺杂浓度和温度。对于本征半导体,费米能级位于禁带的中心;对于掺杂半导体,费米能级会偏移,具体位置取决于掺杂类型和浓度。载流子浓度(Carrier Concentration)是指半导体中自由电子和空穴的数量密度。

2401_87715305的博客 832

deepstream车道线检测自定义插件化,其中要注意pipeline的配置,如果插件位置配置不对,会报input format should be RGBA when using blur-obje

以上代码中,我们先从对象池中获取一个 DsUserMeta 对象,然后使用 get_lane_line_from_frame 函数获取车道线检测结果,并使用 add_lane_line_meta 函数将其添加到 DsUserMeta 对象中。注意,上述代码中的 get_lane_line_from_frame 函数和 add_lane_line_meta 函数需要你自己实现,用于从视频帧中提取车道线检测结果,并将其添加到 DsUserMeta 中。

pvmsmfchcs的博客 690

基于corosync和pacemaker实现配置nginx的高可用集群

前提: 1)本配置共有两个测试节点,分别node1.magedu.com和node2.magedu.com,相的IP地址分别为172.16.24.2和172.16.24.3 2)集群服务为nginx的web服务; 3)提供web服务的地址为172.16.24.100; 4)系统为rhel5.4 1、准备工作 为了配置一台Linux主机成为HA(高可用)的节点,通常需要做出如下的准备工作: 1)所有节点的主机名称和对应的IP地址解析服务可以正常工作,且每个节点的主机名称需要跟"una

Vic的博客 659

从0到1打造一台机器人走起来

1)本体机械结构设计,依据人体生物学和生物力学知识,结合机器人运动时各关节扭矩需求,进行合理选用电机,比如胯部需要大扭矩,腿部惯量小等2)硬件拓扑上,分层架构的信号层和功率协同工作,高带宽,低延时,硬实时3)步态规划设计与验证环节实机回溯和部署过程:Real2Sim,Sim2Sim,Sim2Real。

weixin_43163941的博客 244
上一篇: HAproxy的安装配置及网页的动静分离
下一篇: nginx+tomcat+memcached实现负载均衡和session共享
Argued_D
博客等级 码龄9年 70粉丝 93原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值