配置高可用集群(环境)

Posted 小学生^.^

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了配置高可用集群(环境)相关的知识,希望对你有一定的参考价值。

一准备三个虚拟机,把/etc/hosts/文件配置好

                             192.168.43.9 node0
                             192.168.43.10 node1
                             192.168.43.11 node2
 
 
  • node0,node1,node2上配置时间同步服务器
1:在node0上安装配置chrony服务,同步国内互联网时间服务器的时间
yum install -y chrony
 
2:编辑配置文件/etc/chrony.conf
修改默认的centos时间同步服务器地址为国内时间同步服务器地址,且允许192.168.43.0/24网段的主机同步时间
server s1a.time.edu.cn iburst
server s1b.time.edu.cn iburst
server s1c.time.edu.cn iburst
server s1d.time.edu.cn iburst
allow 192.168.43.0/24
 
3:启动chrony
systemctl enable chronyd.service
systemctl start chronyd.service
 
4:在node1和node2上分别安装chrony,且修改配置文件/etc/chrony.conf,将时间同步指向node0节点
yum install -y chrony
server node0 iburst(配置文件里面修改)
systemctl enable chronyd.service
systemctl start chronyd.service
 
 
5:node1,node2验证时间同步
[[email protected] ~]# chronyc sources
210 Number of sources = 1
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^* node0 3 6 17 6 -5684ns[-1595ns] +/- 401ms
 
高可用集群(服务配置)
pacemaker提供的管理程序有:(rpm -ql pacemaker)

/usr/libexec/pacemaker/cib(集群信息中心 cluster infomation base) 
/usr/libexec/pacemaker/crmd(集群管理器) 
/usr/libexec/pacemaker/lrmd(本地管理器)


  • 在node1和node2节点安装corosync、pacemaker
安装pacemaker( corosync将会被作为依赖安装)
yum install -y pacemaker
  • 在node1上操作
cd /etc/corosync/
cp corosync.conf.example corosync.conf
  • 关于/etc/corosync/corosync.conf配置文件的介绍
1:totem { }:设置节点间的通信方式,通信协议,加密,通信的多播地址,且至少需要定义一个interface{}接口用来传递集群心跳信息
 
2:loggin { }:设置格式,存储路径,记录的级别
 
3:quorum { }: 设置投票信息
 
4:nodelist { }:设置节点个数
  • 由于在message layer层传递心跳信息需要加密,因此先必须生成加密文件
corosync-keygen
  • 编辑配置文件/etc/corosync/corosync.conf,修改配置文件(man corosync.conf 查看配置选项)
totem {
version: 2 # 指定版本号
cluster_name: uplookingcluster # 指定集群名称
crypto_cipher: aes256 # 指定对称加密算法
crypto_hash: sha1 # 指定单向加密算法
interface {
ringnumber: 0 # 指定心跳信息传递的环路id
bindnetaddr: 192.168.43.0 # 指定环路中的网络地址
mcastaddr: 239.255.1.1 # 指定心跳信息通过多播的方式传递的IP通道
mcastport: 5405 # 指定多播的端口
ttl: 1 # 指定多播报文信息的生命周期
}
}
 
logging {
fileline: off
to_stderr: no
to_logfile: yes # 指定开启日志文件
logfile: /var/log/cluster/corosync.log # 指定日志文件保存的位置
to_syslog: no # 指定不使用系统日志保存日志信息
debug: off
timestamp: on
logger_subsys { # 指定启用仲裁机制
subsys: QUORUM
debug: off
}
}
 
quorum { # 指定仲裁机制是corosync投票系统
provider: corosync_votequorum
}
 
nodelist { # 指定节点列表
node {
ring0_addr: 192.168.43.10
nodeid: 1
}
node {
ring0_addr: 192.168.43.11
nodeid: 2
}
}
  • 将corosync.conf配置文件和生成的authkey文件复制到node2节点,注意authkey文件的权限必须是400才能启动corosync
scp authkey corosync.conf node2:/etc/corosync/
  • 在node1和node2上分别启动corosync
systemctl enable corosync.service
systemctl start corosync.service
  • 在node1和node2上分别启动pacemaker
systemctl enable pacemaker.service
systemctl start pacemaker.service
  • 在node1节点上查看,当前集群中谁是DC(DC:Designated Coordinator 指定的协调员 负责管理集群的事务信息)
crm_mon
  • 在node1和node2上配置crmsh的yum仓库,此仓库的RPM包有openSUSE提供,将这个network:ha-clustering:Stable.repo文件直接下载到本地并且命名为crmsh.repo
wget -O /etc/yum.repos.d/crmsh.repo http://download.opensuse.org/repositories/network:/ha-clustering:/Stable/CentOS_CentOS-7/network:ha-clustering:Stable.repo
  • 在node1和node2上通过yum安装crmsh
yum repolist
yum install -y crmsh
 
 
  • 在此可以使用crm命令进入交互式接口,实现对集群的管理操作
 

以上是关于配置高可用集群(环境)的主要内容,如果未能解决你的问题,请参考以下文章

大数据高可用集群环境安装与配置(10)——安装Kafka高可用集群

大数据高可用集群环境安装与配置(06)——安装Hadoop高可用集群

配置高可用集群(环境)

Nacos 高可用集群部署

大数据高可用集群环境安装与配置(05)——安装zookeeper集群

ActiveMQ 高可用集群安装配置(ZooKeeper + LevelDB)