自己做了一次crorsync+pacemaker+crmsh,并配置cacti。本文没有配置过程,所有软件均使用yum方式安装,仅仅只是记录搭建过程中遇到的一些问题便于以后查阅 。
实验环境:
系统:centos 7
机器:1台虚拟机、2台实体机
分配:一台机器配置nfs,二台机器做node,nfs共享内容为mariadb数据文件及cacti文件
软件版本:mariadb5.5.52,cacti0.8.8b,corosync2.4.0,pacemaker1.1.15,crmsh3.0.0
实验前准备:所有机器做好时间同步,node1和node2能够基于节点名字互相通讯以及免密码ssh登录。node1和node2修改hostname为基于FQDN格式名称,如node1.a.com。所有机器安装lamp环境,建议安装上开发组件“Development Tools”,"Server Platform Development"。修改系统网卡名称为eth0
所有软件均用yum方式安装,过程省略。
node1和node2安装corosync、pacemaker、crmsh、mariadb、nfs,不要启动数据库,修改/etc/my.cnf中datadir为一个统一路径
nfs机器上装好mariadb,并做好安全初始化,创建cacti用户并授权。
crmsh依赖于pssh,且centos 7的yum库中没有此包组,解决方法为进入/etc/yum.repo.d/
# http://download.opensuse.org/repositories/network:/ha-clustering:/Stable/CentOS_CentOS-7/network:ha-clustering:Stable.repo
# yum repolist
nfs机器上配置好数据库的数据存放路径并通过nfs共享,cacti也一样。
cacti配置过程中遇到的问题:
流量图无数据,流量显示-nan
手动运行php /var/www/html/cacti/poller.php --force 提示结束时间要早于开始更新时间
解决方法为删除/cacti/rra下所有文件并重新运行php /src/poller.php --force
手动运行php /var/www/html/cacti/poller.php --force 提示时区不为UTC
修改/etc/php.ini文件data.timezone = Asia/Shanghai,重启php
corosync配置文件:/etc/corosync/corosync.cnf修改如下
bindnetaddr: 192.168.3.0 (实验中的机器都是192.168.3.0网段的机器)
mcastaddr:239.212.31.11 (广播地址可随意,只要不是默认的地址即可)
secauth:on
最后添加
service {
ver: 0
name: pacemaker
use_mgmtd:yes
}
aisexec {
user: root
group: root
}
quorum {
provider: corosync_votequorum
expected_votes: 2
two_node: 1
}
corosync-keygen 产生密钥文件,作为node1与node2通信凭证
scp -p authkey corosync.conf node2:/etc/corosync 将配置文件、密钥复制一份到node2
crmsh配置集群
crm config
property no-quorum-policy=ignore修改法定票数设定
property stonith-enabled=false关闭仲裁设备
primitive webip ocf:heartbeat:IPaddr parmas ip=192.168.3.131 nic=eth0 cidr_netmask=16 op monitor interval=10s(verify会产生告警,可忽略)配置VIP
primitive httpd service:httpd op monitor interval=10s timeout=20s op start timeout=20s op stop timeout=20s 配置httpd服务资源
primitive mariadb systemd:mariadb op monitor interval=10s timeout=20s op start timeout=20s op stop timeout=20s 配置mariadb服务资源
primitive nfshttpd ocf:heartbeat:Filesystem params device="192.168.3.124:/var/www/html/cacti" directory="/var/www/html/cacti" fstype="nfs" op monitor interval=20s timeout=20s op start timeout=20s op stop timeout=20s 配置cacti资源
primitive nfsmariadb ocf:heartbeat:Filesystem params device="192.168.3.124:/data/mydata" directory="/data/mydata" fstype="nfs" op monitor interval=20s timeout=20s op start timeout=20s op stop timeout=20s 配置mariadb数据存放资源
group cacti webip nfshttpd nfsmariadb mariadb httpd 配置组资源,可无须定义排列约束
location cacti_on_node1 cacti 50: node1.a.com 定义资源组倾向node1
verify
commit
crmsh中遇到的问题:
所有资源在node1运行正常,node2上mariadb无法启动。通过systemctl status mariadb查看到一条报错Failed to start Cluster Controlled mariadb。其原因是由于最初定义mariadb服务资源时使用的是service:mariadb,更换成systemd:mariadb后恢复。
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com