centos7上实现corosync V2 + pacemaker + pcs | crmsh备忘录

1、集群配置的前提:

一、时间同步(ntpdate做crontab定时任务)

二、主机名和IP相互解析

三、基于ssh密钥主机互信

#ssh-keygen -t rsa

#ssh-copy-id -i

 

集群的全生命周期管理工具:

pcs: agent(pcsd)

crmsh: agentless (pssh)

 

 

2、安装corosync pacemaker

centos7 epel源提供了corosync和pacemaker

# yum install epel-release -y

#yum install corosync pacemaker -y

 

3、安装pcs并启动集群(每个节点都需要)

# yum install pcs

# systemctl start pcsd

#给hacluster用户增加密码
echo 123 | passwd --stdin hacluster
#认证节点身份,用户名和密码为上面设置的hacluster和123
# pcs cluster auth ha1.lewis.com ha2.lewis.com
#配置集群,集群名字为mycluster
# pcs cluster setup --name mycluster ha1.lewis.com ha2.lewis.com

#具体配置文件的信息

# cat /etc/corosync/corosync.conf
totem {
version: 2                                             #版本
secauth: off                                          #安全功能是否开起

cluster_name: mycluster                  #集群名称
transport: udpu
}

nodelist {
node {
ring0_addr: ha1.lewis.com
nodeid: 1
}

node {
ring0_addr: ha2.lewis.com
nodeid: 2
}
}

quorum {
provider: corosync_votequorum                        #投票系统
two_node: 1                                                            #是否为2节点集群
}

logging {
to_logfile: yes                                                         #是否记录日志
logfile: /var/log/cluster/corosync.log                 #日志文件位置
to_syslog: yes                                                         #是否记录系统日志
}

#启动集群
# pcs cluster start --all 

#集群查看
# pcs status

具体pcs的用法
# pcs -h 或者 # man pcs





crmsh是opensuse源提供 http://download.opensuse.org/repositories/network:/ha-clustering:/Stable/

# cd /etc/yum.repos.d/

#wget http://download.opensuse.org/repositories/network:/ha-clustering:/Stable/CentOS_CentOS-7/network:ha-clustering:Stable.repo

#yum install crmsh -y

(注意:2017/11/15 出现python-parallax包缺失,需自行下载rpm包安装)

 

pacemaker配置集群资源,需注意设置的默认全局属性如下:

一、默认资源粘性

crm(live)configure# rsc_defaults resource-stickiness=50

二、without-quorum时执行资源忽略(ignore)

property no-quorum-policy=ignore

三、关闭stonith

property stonith-enabled=false

 

启动和开机启动corosync pacemaker服务;

# systemctl start corosync pacemaker

# systemctl enable corosync pacemaker

 

查看集群状态:

#crm_mon

#crm status

 

 

 

示例:基于NAS(nfs)做LAMP的(discuz)高可用

VIP:

nfs节点:172.20.121.243

ha1节点:172.20.121.241

ha2节点:172.20.121.242

 

nfs节点配置:

# yum install nfs-utils -y

# vim /etc/exports

/mydata 172.20.120.0/23(rw,no_root_squash)

# systemctl start nfs

ha1、ha2节点配置:

 

 

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/88410

(2)
N26-深圳-城市蜗牛N26-深圳-城市蜗牛
上一篇 2017-11-15 19:20
下一篇 2017-11-16 09:43

相关推荐

  • Linux基础之正则表达式,用户、组管理

    Linux基础—正则表达式 正则表达式简单来说就是一种行字符串处理的方式,通过一些特殊符号的辅助,可达到搜索、删除、替换等某些特定字符串的处理方式 通配符(Globbing) 通配符与元字符类似,通配符主要用于文件名的匹配,而元字符则主要用在字符串的匹配上; 下面介绍几种常用的通配符: * 表示匹配任意位数的任意字符 ? 表示…

    Linux干货 2016-10-03
  • 深入理解java嵌套类和内部类

    一、什么是嵌套类及内部类   可以在一个类的内部定义另一个类,这种类称为嵌套类(nested classes),它有两种类型:静态嵌套类和非静态嵌套类。静态嵌套类使用很少,最重要的是非静态嵌套类,也即是被称作为内部类(inner)。嵌套类从JDK1.1开始引入。其中inner类又可分为三种:  其一、在一个类(外部类)中直接定义的内部类;  其二、在一个方法…

    Linux干货 2015-04-07
  • 马哥教育网络班20期+第四周博客作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 # cp -R /etc/skel /home/tuser1 # chmod -R go-x /home/tuser1 2、编辑/etc/gro…

    Linux干货 2016-06-29
  • shell脚本基础

    1、编程基础     程序:指令+数据   程序编程风格:                         过程式:以指令为中心,数据服务于指令         &nbs…

    2017-04-20
  • rsyslog日志服务

    一、知识整理: 1、日志服务rsyslogd新特点:     多线程;     基于SSL/TLS/UDP/TCP/RELP网络协议传输日志信息;     强大的过滤器,实现过滤日志信息中任何部分的内容;   &nbsp…

    Linux干货 2016-10-24
  • Linux基础概念

    一、计算机的组成及其功能。 计算机机系统由五部分组成:运算器、控制器、存储器、输入设备、输出设备,遵从冯.诺依曼体系结构。具体的功能如下 : CPU   :     运算器(处理数据)、控制器(指令控制),另有寄存器、缓存(缓冲数据,内部缓存非  常昂贵); 存储器:内存即RAM(随机访问…

    Linux干货 2016-10-09