手机版
你好,游客 登录 注册
背景:
阅读新闻

CentOS 7下搭建高可用集群

[日期:2014-10-07] 来源:Linux中国  作者:Linux [字体: ]

本文以两台机器实现双集热备高可用集群,主机名node1IP192.168.122.168 ,主机名node2IP192.168.122.169

Hadoop集群搭建 http://www.linuxidc.com/Linux/2014-10/107471.htm

Zookeeper+Kafka集群安装 http://www.linuxidc.com/Linux/2014-09/107386.htm

Keepalived高可用集群搭建 http://www.linuxidc.com/Linux/2014-09/106965.htm

CentOS-6.4-minimal版中Apache-2.2.29与Tomcat-6.0.41实现集群 http://www.linuxidc.com/Linux/2014-09/107336.htm

Linux下集群的搭建 http://www.linuxidc.com/Linux/2014-09/106963.htm

Hadoop集群部署Hbase并开启kerberos http://www.linuxidc.com/Linux/2014-09/106213.htm

一、安装集群软件

必须软件pcspacemakercorosyncfence-agents-all,如果需要配置相关服务,也要安装对应的软件

二、配置防火墙

1、禁止防火墙和selinux

  1. # systemctl disable firewalld
  2. # systemctl stop firewalld

修改/etc/sysconfig/selinux确保SELINUX=disabled,然后执行setenforce 0或者reboot服务器以生效

2、设置防火墙规则

  1. # firewall-cmd --permanent --add-service=high-availability
  2. # firewall-cmd --add-service=high-availability

 三、各节点之间主机名互相解析

分别修改2台主机名分别为node1node2,在centos 7中直接修改/etc/hostname加入本机主机名和主机表,然后重启网络服务即可。

  1. #vi /etc/hostname
  2. node1
  3.  
  4. #systemctl restart network.service
  5. #hostname
  6. node1

 配置2台主机的主机表,在/etc/hosts中加入

  1. 192.168.122.168 node1
  2. 192.168.122.169 node2

 四、各节点之间时间同步

node1node2分别进行时间同步,可以使用ntp实现。 

  1. [root@node1 ~]# ntpdate 172.16.0.1//172.16.0.1 为时间服务器

五、各节点之间配置ssh的无密码密钥访问。

下面的操作需要在各个节点上操作。

  1. # ssh-keygen -t rsa -P ‘’ #这个生成一个密码为空的公钥和一个密钥,把公钥复制到对方节点上即可
  2. # ssh-copy-id -i /root/.ssh/id_rsa.pub root@node2 #对方主机名用登录用户名

两台主机都要互相可以通信,所以两台主机都得互相生成密钥和复制公钥,相互的节点上的hosts文件是都要解析对方的主机名, 192.168.122.168 node1 192.168.122.169 node2 

  1. # ssh node2 ‘date’;date #测试一下是否已经互信 

六、通过pacemaker来管理高可用集群

1、创建集群用户

为了有利于各节点之间通信和配置集群,在每个节点上创建一个hacluster的用户,各个节点上的密码必须是同一个。

  1. # passwd hacluster
  2.  
  3. Changing password for user hacluster.
  4. New password:
  5. Retypenew password:
  6. passwd: all authentication tokens updated successfully.

2、设置pcsd开机自启动

  1. # systemctl start pcsd.service
  2. # systemctl enable pcsd.service

3、集群各节点之间进行认证

  1. # pcs cluster auth node1 node2Username: hacluster Password: node1: Authorized node2: Authorized

4、创建并启动集群

  1. [root@z1 ~]# pcs cluster setup --start --name my_cluster node1 node2
  2.  
  3. node1:Succeeded
  4. node1:StartingCluster...
  5. node2:Succeeded
  6. node2:StartingCluster...

5、设置集群自启动

  1. # pcs cluster enable –all

6、查看集群状态信息

  1. [root@z1 ~]# pcs cluster status

7、设置fence设备

这个可以参考<Red Hat Enterprise Linux 7 High Availability Add-On Reference>

corosync默认启用了stonith,而当前集群并没有相应的stonith设备,因此此默 认配置目前尚不可用,这可以通过如下命令验证:

  1. #crm_verify -L -V

可以通过如下面命令禁用stonith

  1. #pcs property set stonith-enabled=false(默认是true)

8、配置存储

高可用集群既可以使用本地磁盘来构建纯软件的镜像型集群系统,也可以使用专门的共享磁盘装置来构建大规模的共享磁盘型集群系统,充分满足客户的不同需求。

共享磁盘主要有iscsiDBRD。本文并没有使用共享磁盘。

9、配置浮点IP

不管集群服务在哪运行,我们要一个固定的地址来提供服务。在这里我选择192.168.122.101作为浮动IP,给它取一个好记的名字 ClusterIP 并且告诉集群 每30秒检查它一次。

  1. # pcs resource create VIP ocf:heartbeat:IPaddr2 ip=192.168.122.170 cidr_netmask=24 op monitor interval=30s
  2. # pcs update VIP op monitor interval=15s

更多详情见请继续阅读下一页的精彩内容http://www.linuxidc.com/Linux/2014-10/107698p2.htm

linux
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款