TOC \o
"1-3" \h \z \u 一、集群信息... PAGEREF _Toc502099174 \h 4
08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003500300032003000390039003100370034000000

二、集群搭建... PAGEREF _Toc502099175 \h 4
08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003500300032003000390039003100370035000000

1、制作软件源... PAGEREF
_Toc502099176 \h 4
08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003500300032003000390039003100370036000000

2、主机基础配置... PAGEREF
_Toc502099177 \h 5
08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003500300032003000390039003100370037000000

3、集群基础环境准备... PAGEREF
_Toc502099178 \h 7
08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003500300032003000390039003100370038000000

4、集群资源准备... PAGEREF _Toc502099179
\h 9
08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003500300032003000390039003100370039000000

5、资源配置... PAGEREF
_Toc502099180 \h 11
08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003500300032003000390039003100380030000000

6、constraint配置... PAGEREF
_Toc502099181 \h 12
08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003500300032003000390039003100380031000000

7、stonith配置... PAGEREF
_Toc502099182 \h 13
08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003500300032003000390039003100380032000000

8、集群功能验证... PAGEREF
_Toc502099183 \h 14
08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003500300032003000390039003100380033000000

三、集群常用命令及作用... PAGEREF _Toc502099184 \h 17
08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003500300032003000390039003100380034000000

1、验证群集安装... PAGEREF
_Toc502099185 \h 17
08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003500300032003000390039003100380035000000

2、查看群集资源... PAGEREF _Toc502099186
\h 17
08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003500300032003000390039003100380036000000

3、使用群集脚本... PAGEREF
_Toc502099187 \h 17
08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003500300032003000390039003100380037000000

4、STONITH 设备操作... PAGEREF _Toc502099188 \h 17
08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003500300032003000390039003100380038000000

5、查看群集配置... PAGEREF
_Toc502099189 \h 17
08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003500300032003000390039003100380039000000

6、管理群集... PAGEREF
_Toc502099190 \h 18
08D0C9EA79F9BACE118C8200AA004BA90B02000000080000000E0000005F0054006F0063003500300032003000390039003100390030000000

  

CentOS7/RHEL7高可用集群搭建

一、集群信息

使用光盘镜像安装好两台RHEL7.4系统的虚拟机,主机信息如下:

主机名

node1

node2

IP地址

192.168.110.168

192.168.110.169

系统版本

Red Hat Enterprise Linux Server release 7.4

挂载镜像源

rhel-server-7.4-x86_64-dvd.iso

资源组

(ftp-group)

FTP-VIP:192.168.110.10

FTP-LVM:vg_ftp

FTP-FS:/dev/vg_ftp/lv_ftp

FTP:vsftpd

资源组

(tomcat-group)

TOMCAT-VIP:192.168.110.20

TOMCAT-LVM:vg_tomcat

TOMCAT-FS:/dev/vg_tomcat/lv_tomcat

TOMCAT:tomcat

二、集群搭建

1、制作软件源

●      挂载光盘

●      导入key文件,列出可用源

2、主机基础配置

●      设置主机名

●      关闭防火墙

●      设置selinux为disabled

●      配置host文件

●      节点间配置免密互信

●      同步host文件

●      编辑/etc/chronyd.conf文件,增加时间服务器一行

●      配置时间服务器,使集群节点时间同步

●      设置时间同步,timedatectl输出结果中NTP enabled为yes,已开始同步

●      查看chronyd状态,设置为开机启动

3、集群基础环境准备

●      软件安装

●      修改集群管理账号密码

●      启用并设置集群软件开机自启

●      集群节点认证

●      创建集群

注:

1、命令内容为创建集群的同时在各节点上启动集群并设置为启用状态

●      查看当前集群状态

注:

1、   注意命令输出内容,在尚未配置stonith时,提示需将stonith-enabled属性更改为false(不启用)

2、Online:显示当前在线节点

3、Full list of resources:显示集群的资源列表

 

4、集群资源准备

●      文件系统创建

创建并格式化/dev/mapper/vg_tomcat-lv_tomcat,文件系统格式为xfs

创建并格式化/dev/mapper/vg_ftp-lv_ftp,文件系统格式为xfs

注:

使用共享存储的集群,在节点一上创建好vg、lv之后,节点二上执行命令pvscan --cache /dev/sdb可以将vg,lv信息同步至节点二上

●      创建文件系统挂载点

●      安装vsftp

●      新增用户

新增用户mcbadm,确保node2上mcbadm用户的UID与node1一致,将用户加入haclient集群管理组

●      安装tomcat相关软件包

将lv_tomcat挂在至/home/mcbadm后,将tomcat软件包解压至共享盘上

●      权限更改

更改/home/mcbadm下文件属组及所属者为mcbadm

●      创建tomcat.service文件

编辑/usr/lib/systemd/system/tomcat.service文件,将tomcat服务移交systemd管理

将tomca.service文件放在/usr/lib/systemd/system/目录下,执行systemctl daemon-reload刷新

●      开放halvm功能

将集群的共享存储交由集群管理,执行以下命令,开放halvm功能

●      备份lvm.conf文件

●      编辑lvm.conf文件

查看系统现有vg,放开volume_list的注释,将除过集群共享存储的vg加入中括号内

注意:主机后续添加新的非集群管理vg,必须将vg名加入volume_list内

●      生成initramfs文件

备份/boot/initramfs-$(uname –r).img文件

执行以下命令,重新生成initramfs-$(uname –r).img文件

重启主机

5、资源配置

●      创建资源组ftp-group

FTP-VIP:192.168.110.10/24

FTP-LVM:vg_ftp

FTP-FS:/dev/vg_ftp/lv_ftp,/HOME,xfs

FTP:vsftpd

FTP:vsftpd

●      创建资源组tomcat-group

TOMCAT-VIP:192.168.110.20/24

TOMCAT-LVM:vg_tomcat

TOMCAT-FS:/dev/vg_tomcat/lv_tomcat,/home/mcbadm,xfs

TOMCAT:tomcat

●      检查集群状态

资源组创建完成,集群资源已在各节点上运行

注:

1、集群资源创建,资源创建需要一次完成,所有资源创建完成后加入资源组中,默认情况下,资源组内资源启停顺序为:按照从上往下的顺序依次启动;按照从下往上的顺序依次停止。

2、因已配置vg_ftp和vg_tomcat仅由集群激活启用,当FTP-FS和TOMCAT-FS资源在节点一/二配置完成但尚未加入资源组内时,pcs status会有报错信息提示,提示在节点二/一上找不到相应的设备文件,此为正常现象,将FTP-FS和TOMCAT-FS按顺序加入集群即可。

6、集群资源约束配置

●      检查集群状态

查看当前constraint设置

●      配置资源启停顺序

配置资源组内各资源启停顺序:

ftp-group内启停顺序:FTP-VIP--> FTP-LVM-->FTP-FS-->FTP

tomcat-group内启停顺序:TOMCAT-VIP-->TOMCAT-LVM-->TOMCAT-FS-->TOMCAT

●      配置资源组内各资源依附关系

●      配置资源组在各节点的粘性

ftp-group优先在node1上运行

tomcat-group优先在node2上运行

●      查看constraint设置结果

列出集群资源约束配置内容

7、stonith配置

注:

1、   virtualbox虚拟机无法配置,假设可用

2、   不同类型的服务器所需fence端口不同,惠普硬件服务器需开通fence设备的623/udp端口,vcenter主机需开启80/tcp和443/tcp端口,其余类型请自行查证

●      fence资源信息

主机名

node1

node2

Fence设备地址

192.168.110.101

192.168.110.102

Fence管理账号

Administrator

Fence账户密码

pass1234

●      Fence查看节点状态

通过fence设备查看主机状态,确认fence设备可对主机进行管理

# fence_ipmilan –P –A password –a 192.168.110.101 –l Administrator  –p pass1234 –o status

# Status on

# fence_ipmilan –P –A password –a 192.168.110.102 –l Administrator  –p pass1234 –o status

# Status on

●      增加fence设备

     # pcs stonith create ipmi-fence-node1 fence_ipmilan parms lanplus=’true’ pcmk_host_list=’node1’ pcmk_host_check=’static-list’ action=’reboot’ ipaddr=’192.168.110.101’ login=’Administrator’ passwd=’pass1234’ op monitor interval=30s

# pcs stonith create ipmi-fence-node2 fence_ipmilan parms lanplus=’true’ pcmk_host_list=’node2’ pcmk_host_check=’static-list’ action=’reboot’ ipaddr=’192.168.110.102’ login=’Administrator’ passwd=’pass1234’ op monitor interval=30s

8、集群功能验证

●      切换前检查

查看当前集群状态,集群内各资源已正常运行使用(尚缺少fence设备)

●      禁用节点验证

将node2 设置为standby(不使用),资源组tomcat-group正常切换至node1上运行

# pcs cluster standy node2

注:

1、node2 standby状态下,资源组tomcat-group在node1上正常运行才能证明资源切换正常

unstandy node2,资源组tomcat-group切换回node2运行

# pcs cluster unstandy node2

注:

1、node2 unstandby后,资源组tomcat-group能够自动切回node2上正常运行才能证明资源切换正常

●      重启节点验证

node1 重启,资源组ftp-group切换至node2运行

node1 重启完成,资源组ftp-group切换回node1运行

三、集群常用命令及作用

1、验证群集安装

[shell]# pacemakerd -F                                                             ## 查看pacemaker组件

[shell]# corosync-cfgtool -s                                                        ## 查看corosync序号

[shell]# corosync-cmapctl | grep members              ## corosync 2.3.x

[shell]# corosync-objctl | grep members                          ## corosync 1.4.x

2、查看群集资源

[shell]# pcs resource standards                                       ## 查看支持资源类型

[shell]# pcs resource providers                                        ## 查看资源提供商

[shell]# pcs resource agents                                                     ## 查看所有资源代理

[shell]# pcs resource list                                                    ## 查看支持资源列表

[shell]# pcs stonith list                                                             ## 查看支持Fence列表

[shell]# pcs property list --all                                            ## 显示群集默认变量参数

[shell]# crm_simulate -sL                                        ## 检验资源 score 值

3、使用群集脚本

[shell]# pcs cluster cib ra_cfg                                          ## 将群集资源配置信息保存在指定文件

[shell]# pcs -f ra_cfg resource create                                ## 创建群集资源并保存在指定文件中(而非保存在运行配置)

[shell]# pcs -f ra_cfg resource show                                        ## 显示指定文件的配置信息,检查无误后

[shell]# pcs cluster cib-push ra_cfg                                          ## 将指定配置文件加载到运行配置中

4、STONITH 设备操作

[shell]# stonith_admin -I                                                 ## 查询fence设备

[shell]# stonith_admin -M -a agent_name              ## 查询fence设备的元数据, stonith_admin -M -a fence_vmware_soap

[shell]# stonith_admin --reboot nodename                     ## 测试 STONITH 设备

5、查看群集配置

[shell]# crm_verify -L -V                                                          ## 检查配置有无错误

[shell]# pcs property                                                              ## 查看群集属性

[shell]# pcs stonith                                                                          ## 查看stonith

[shell]# pcs constraint                                                             ## 查看资源约束

[shell]# pcs config                                                                          ## 查看群集资源配置

[shell]# pcs cluster cib                                                                   ## 以XML格式显示群集配置

6、管理群集

[shell]# pcs status                                                                          ## 查看群集状态

[shell]# pcs status cluster

[shell]# pcs status corosync

[shell]# pcs cluster stop [node11]                                 ## 停止群集

[shell]# pcs cluster start --all                                                  ## 启动群集

[shell]# pcs cluster standby node11                                      ## 将节点置为后备standby状态 pcs cluster unstandby node11

[shell]# pcs cluster destroy [--all]                                   ## 删除群集,[--all]同时恢复corosync.conf文件

[shell]# pcs resource cleanup ClusterIP                         ## 清除指定资源的状态与错误计数

[shell]# pcs stonith cleanup vmware-fencing                  ## 清除Fence资源的状态与错误计数

CentOS7/RHEL7 pacemaker+corosync高可用集群搭建的更多相关文章

  1. CentOS7 haproxy+keepalived实现高可用集群搭建

    一.搭建环境 CentOS7 64位 Keepalived 1.3.5 Haproxy 1.5.18 后端负载主机:192.168.166.21 192.168.166.22 两台节点上安装rabbi ...

  2. .Net Core2.1 秒杀项目一步步实现CI/CD(Centos7.2)系列一:k8s高可用集群搭建总结以及部署API到k8s

    前言:本系列博客又更新了,是博主研究很长时间,亲自动手实践过后的心得,k8s集群是购买了5台阿里云服务器部署的,这个集群差不多搞了一周时间,关于k8s的知识点,我也是刚入门,这方面的知识建议参考博客园 ...

  3. Hadoop 3.1.2(HA)+Zookeeper3.4.13+Hbase1.4.9(HA)+Hive2.3.4+Spark2.4.0(HA)高可用集群搭建

    目录 目录 1.前言 1.1.什么是 Hadoop? 1.1.1.什么是 YARN? 1.2.什么是 Zookeeper? 1.3.什么是 Hbase? 1.4.什么是 Hive 1.5.什么是 Sp ...

  4. 实现CI/CDk8s高可用集群搭建总结以及部署API到k8s

    实现CI/CD(Centos7.2)系列二:k8s高可用集群搭建总结以及部署API到k8s 前言:本系列博客又更新了,是博主研究很长时间,亲自动手实践过后的心得,k8s集群是购买了5台阿里云服务器部署 ...

  5. hadoop高可用集群搭建小结

    hadoop高可用集群搭建小结1.Zookeeper集群搭建2.格式化Zookeeper集群 (注:在Zookeeper集群建立hadoop-ha,amenode的元数据)3.开启Journalmno ...

  6. Spark高可用集群搭建

    Spark高可用集群搭建 node1    node2    node3   1.node1修改spark-env.sh,注释掉hadoop(就不用开启Hadoop集群了),添加如下语句 export ...

  7. Hadoop HA高可用集群搭建(Hadoop+Zookeeper+HBase)

    声明:作者原创,转载注明出处. 作者:帅气陈吃苹果 一.服务器环境 主机名 IP 用户名 密码 安装目录 master188 192.168.29.188 hadoop hadoop /home/ha ...

  8. MongoDB高可用集群搭建(主从、分片、路由、安全验证)

    目录 一.环境准备 1.部署图 2.模块介绍 3.服务器准备 二.环境变量 1.准备三台集群 2.安装解压 3.配置环境变量 三.集群搭建 1.新建配置目录 2.修改配置文件 3.分发其他节点 4.批 ...

  9. RabbitMQ高级指南:从配置、使用到高可用集群搭建

    本文大纲: 1. RabbitMQ简介 2. RabbitMQ安装与配置 3. C# 如何使用RabbitMQ 4. 几种Exchange模式 5. RPC 远程过程调用 6. RabbitMQ高可用 ...

随机推荐

  1. 第七周&实验报告五

    实验四 类的继承 •实验目的 •理解抽象类与接口的使用: •了解包的作用,掌握包的设计方法. •实验要求 •掌握使用抽象类的方法. •掌握使用系统接口的技术和创建自定义接口的方法. •了解 Java ...

  2. [转帖]RSA算法与DSA算法的区别

    RSA算法与DSA算法的区别 https://cloud.tencent.com/developer/news/254061 文章来源:企鹅号 - SuperFullStack 本文译自:StackE ...

  3. numpy使用数组进行数据处理

    numpy使用数组进行数据处理 meshgrid函数 理解: 二维坐标系中,X轴可以取三个值1,2,3, Y轴可以取三个值7,8, 请问可以获得多少个点的坐标? 显而易见是6个: (1,7)(2,7) ...

  4. C++中的三种继承方式

    1,被忽略的细节: 1,冒号( :)表示继承关系,Parent 表示被继承的类,public 的意义是什么? class Parent { }; class Child : public Parent ...

  5. python-day16(正式学习)

    目录 模块 什么是模块? 模块的四种形式 为什么要用模块 如何用模块 import from...import... 异同 循环导入问题 解决方案 1. 2. 模块搜索路径 random模块 模块 什 ...

  6. mybatis一对多关联关系映射

    mybatis一对多关联关系映射 一对多关联关系只需要在多的一方引入少的一方的主键作为外键即可.在实体类中就是反过来,在少的一方添加多的一方,声明一个List 属性名 作为少的一方的属性. 用户和订单 ...

  7. Hadoop基础概念

    Apache Hadoop有2个核心的组件,他们分别是: HDFS: HDFS是一个分布式文件系统集群,它可以将大的文件分裂成块并将他们冗余地分布在多个节点上,HDFS是运行在用户空间的文件系统 Ma ...

  8. css3 伪类以及伪元素的特效

    菱形          

  9. 2019.9.17更换ubuntu的镜像源 ubuntu安装lamp iis安装网站和ftp站

    更换ubuntu的镜像源 /etc/apt/sources.list cp  /etc/apt/sources.list  /etc/apt/sources.list.bak 备份这个文件 vim / ...

  10. GitHub上一些有趣的开源项目[持续更新]

    TheAlgorithms/C-Plus-Plus 用C++实现了常见的算法,如排序算法,查找算法,以及一些常见的数据数据结构,如链表,二叉树. 链接:https://github.com/TheAl ...