34J-2 corosync集群初步

配置环境

Node1:192.168.1.131 CentOS7.2

Node2:192.168.1.132 CentOS7.2

配置前准备

[[email protected] ~]# cat /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.1.131   node1

192.168.1.132   node2

[[email protected] ~]# ssh-keygen -t rsa -P ‘‘  

[[email protected] ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub node1

[[email protected] ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub node2

[[email protected] ~]# yum -y install ansible

[[email protected] ~]# vim /etc/ansible/hosts 

[ha]

192.168.1.131

192.168.1.132

Node1和Node2

# yum -y install pcs

[[email protected] ~]# ansible ha -m service -a ‘name=pcsd state=started enabled=yes‘

[[email protected] ~]# ansible ha -m shell -a ‘echo "mageedu" | passwd --stdin hacluster‘

[[email protected] ~]# pcs cluster auth node1 node2 -u hacluster

Password: 

node1: Already authorized

node2: Already authorized

[[email protected] ~]# pcs cluster auth node1 node2 -u hacluster  

Password: 

node1: Already authorized

node2: Already authorized

[[email protected] ~]# pcs cluster setup --name mycluster node1 node2

Shutting down pacemaker/corosync services...

Redirecting to /bin/systemctl stop  pacemaker.service

Redirecting to /bin/systemctl stop  corosync.service

Killing any remaining services...

Removing all cluster configuration files...

node1: Succeeded

node2: Succeeded

Synchronizing pcsd certificates on nodes node1, node2...

node1: Success

node2: Success

Restaring pcsd on the nodes in order to reload the certificates...

node1: Success

node2: Success

[[email protected] ~]# cd /etc/corosync/

[[email protected] corosync]# vim corosync.conf

修改loggin值为

logging {

    to_logfile: yes

    logfile: /var/log/cluster/corosync.log

}   

[[email protected] corosync]# scp corosync.conf node2:/etc/corosync/

启动集群:

[[email protected] corosync]# pcs cluster start --all 

node2: Starting Cluster...

node1: Starting Cluster...

检查各节点通信状态(显示为no faults即为OK);

[[email protected] corosync]# corosync-cfgtool -s

Printing ring status.

Local node ID 1

RING ID 0

        id      = 192.168.1.131

        status  = ring 0 active with no faults

检查集群成员关系及Quorum API

[[email protected] corosync]# corosync-cmapctl | grep members

runtime.totem.pg.mrp.srp.members.1.config_version (u64) = 0

runtime.totem.pg.mrp.srp.members.1.ip (str) = r(0) ip(192.168.1.131) 

runtime.totem.pg.mrp.srp.members.1.join_count (u32) = 1

runtime.totem.pg.mrp.srp.members.1.status (str) = joined

runtime.totem.pg.mrp.srp.members.2.config_version (u64) = 0

runtime.totem.pg.mrp.srp.members.2.ip (str) = r(0) ip(192.168.1.132) 

runtime.totem.pg.mrp.srp.members.2.join_count (u32) = 1

runtime.totem.pg.mrp.srp.members.2.status (str) = joined

查看集群状态:

[[email protected] corosync]# pcs status

检查集群错误:

[[email protected] corosync]# crm_verify -L -V

   error: unpack_resources:     Resource start-up disabled since no STONITH resources have been defined

   error: unpack_resources:     Either configure some or disable STONITH with the stonith-enabled option

   error: unpack_resources:     NOTE: Clusters with shared data need STONITH to ensure data integrity

Errors found during check: config not valid

处理:

[[email protected] corosync]# pcs property set stonith-enabled=false

[[email protected] corosync]# crm_verify -L -V    

[[email protected] corosync]# pcs property list

Cluster Properties:

 cluster-infrastructure: corosync

 cluster-name: mycluster

 dc-version: 1.1.13-10.el7_2.4-44eb2dd

 have-watchdog: false

 stonith-enabled: false

 

 [[email protected] ~]# ls

anaconda-ks.cfg             Pictures

crmsh-2.1.4-1.1.x86_64.rpm  pssh-2.3.1-4.2.x86_64.rpm

Desktop                     Public

Documents                   python-pssh-2.3.1-4.2.x86_64.rpm

Downloads                   Templates

Music                       Videos

[[email protected] ~]# yum install *rpm

[[email protected] ~]# scp *rpm node2:/root

[[email protected] ~]# yum install *rpm -y

显示集群状态:

[[email protected] ~]# crm status

Last updated: Wed Sep 21 17:31:26 2016          Last change: Wed Sep 21 17:16:32 2016 by root via cibadmin on node1

Stack: corosync

Current DC: node1 (version 1.1.13-10.el7_2.4-44eb2dd) - partition with quorum

2 nodes and 0 resources configured

Online: [ node1 node2 ]

[[email protected] ~]# yum -y install httpd

[[email protected] ~]# echo "<h1>Node1.magedu.com</h1>" > /var/www/html/index.html 

[[email protected] ~]# systemctl start httpd.service 

[[email protected] ~]# systemctl enable httpd.service

[[email protected] ~]# yum -y install httpd

[[email protected] ~]# echo "<h1>Node2.magedu.com</h1>" > /var/www/html/index.html

[[email protected] ~]# systemctl start httpd.service

[[email protected] ~]# systemctl enable httpd.service

[[email protected] ~]# crm ra

crm(live)ra# cd

crm(live)# configure

crm(live)configure# primitive webip ocf:heartbeat:IPaddr params ip=192.168.1.80

时间: 2024-10-05 13:57:57

34J-2 corosync集群初步的相关文章

34J-3_4 corosync集群配置精讲

配置环境 NFS: 192.168.1.121 CentOS6.7 Node1:192.168.1.131 CentOS7.2 Node2:192.168.1.132 CentOS7.2 Node3:192.168.1.133 CentOS7.2 配置前准备 [[email protected] ~]# cat /etc/hosts 127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1

corosync集群下的双心跳多资源组配置小结

在我们日常的corosync配置中,在安装完相关包只需要在corosync.conf中配置bindnetaddr中对应心跳IP并添加 service { name: pacemaker ver: 0 use_mgmtd: 1 } 即可启用pacemaker,然后进行资源配置. 1.遇到第一个问题,如果有多个网卡用来做心跳怎么办? 心跳IP的配置在corosync.conf中totem配置项下的interface子项.多个心跳网卡配置多个interface,并把ringnumber加1(第一个是0

创建pacemaker+corosync集群

[实验环境] 系统 主机名 IP 类型 RHEL7.1 node 192.168.122.1 物理机 .. node1 192.168.122.10 kvm guestos .. node2 192.168.122.20 kvm guestos .. node3 192.168.122.30 kvm guestos 注意:因为后期要配置fence,所有实验均在KVM下完成.实验使用的是kvm默认的nat网络,故其他机器不能和这些guest os进行通信,只有物理机能和其通信. [拓扑图] [环境

Hadoop集群初步搭建:

自己整理了一下Hadoop集群简易搭建的过程,感谢尚观科技贾老师的授课和指导! 基本环境要求:能联网电脑一台:装有Centos系统的VMware虚拟机:Xmanager Enterprise 5软件. •规划集群的ip地址:(计划) 10.10.10.31-->uplooking01 10.10.10.32-->uplooking02 10.10.10.33-->uplooking03 •克隆2个虚拟机:(在VMware里操作) 右击将uplooking重命名为uplooking01:

CentOS 7 corosync高可用集群的实现

CentOS 7 corosync高可用集群的实现 =============================================================================== 概述: =============================================================================== 在CentOS 7上实现高可用集群案例  1.corosync安装配置 ★CentOS 7: corosync v2 (

corosync+pacemaker高可用集群

简介 高可用集群,是指以减少服务中断(如因服务器宕机等引起的服务中断)时间为目的的服务器集群技术.简单的说,集群就是一组计算机,它们作为一个整体向用户提供一组网络资源.这些单个的计算机系统就是集群的节点. 高可用集群的出现是为了减少由计算机硬件和软件易错性所带来的损失.它通过保护用户的业务程序对外不间断提供的服务,把因软件/硬件/人为造成的故障对业务的影响降低到最小程度.如果某个节点失效,它的备援节点将在几秒钟的时间内接管它的职责.因此,对于用户而言,集群永远不会停机.高可用集群软件的主要作用就

Linux集群之corosync+pacemaker+drbd实现MySQL高可用

一.drbd简介 drbd即Distributed Replicated Block Device(分布式磁盘块设备),drbd一个基于软件实现的,不共享任何东西,通过复制的方式在存储之间构建所谓镜像模式机制的磁盘,从而使得一个数据可以存储为多份, drbd的核心功能是在内核中实现. 二.drbd原理 每一个主机都提供一个块设备,块的大小是一模一样的,当主机上的进程需要存储数据时,需要向内核申请,任何用户空间的进程都没有直接操作硬件的权限,事实上驱动磁盘是在内核靠驱动程序来实现的,任何一个进程存

Linux的企业-高可用集群Haproxy+corosync+pacemaker+fence

一.Haproxy简介 Haproxy是一个使用C语言编写的自由及开放源代码软件,其提供高可用性.负载均衡,以及基于TCP和HTTP的应用程序代理. HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处理.HAProxy运行在当前的硬件上,完全可以支持数以万计的并发连接.并且它的运行模式使得它可以很简单安全的整合进您当前的架构中, 同时可以保护你的web服务器不被暴露到网络上. 二.HAProxy的特点1.支持两种代理模式:TCP(四层)和HTTP(七层),支持虚

高可用集群技术之corosync应用详解(一)

Corosync概述: Corosync是集群管理套件的一部分,它在传递信息的时候可以通过一个简单的配置文件来定义信息传递的方式和协议等.它是一个新兴的软件,2008年推出,但其实它并不是一个真正意义上的新软件,在2002年的时候有一个项目Openais , 它由于过大,分裂为两个子项目,其中可以实现HA心跳信息传输的功能就是Corosync ,它的代码60%左右来源于Openais. Corosync可以提供一个完整的HA功能,但是要实现更多,更复杂的功能,那就需要使用Openais了.Cor