因此,在配置集群时,我已经运行了所有的服务,但是在重新启动之后,我得到了以下内容:
Full list of resources:
virtual_ip (ocf::heartbeat:IPaddr2): Started node1
webserver (ocf::heartbeat:apache): Stopped
Master/Slave Set: WebDataClone [WebData]
Masters: [ node2 ]
Slaves: [ node1 ]
WebFS (ocf::heartbeat:Filesystem): Started node2
sqlfs (ocf::heartbeat:Filesystem): Stopped
Master/Slave Set: SQLDataClone [SQLData]
Masters: [ node1 ]
Slaves: [ node2 ] sqlfs_start_0 on node1 'unknown error' (1): call=26, status=complete, last-rc-change='Sat Jun 4 00:57:27 2016', queued=0ms, exec=32ms
sqlfs_start_0 on node2 'unknown error' (1): call=34, status=complete, last- rc-change='Sat Jun 4 00:57:27 2016', queued=0ms, exec=59ms这就是我在SQL配置中使用的内容:
resource sqldata {
protocol C;
disk /dev/sdb2;
device /dev/drbd1;
startup {
wfc-timeout 30;
outdated-wfc-timeout 20;
degr-wfc-timeout 30;
}
net {
cram-hmac-alg sha1;
shared-secret sync_disk;
}
syncer {
rate 10M;
al-extents 257;
on-no-data-accessible io-error;
verify-alg sha1;
}
on node1.freesoftwareservers.com {
address 192.168.1.218:7788;
flexible-meta-disk internal;
}
on node2.freesoftwareservers.com {
address 192.168.1.221:7788;
meta-disk internal;
}
}启动DRBD并同步:
drbdadm -- --overwrite-data-of-peer primary sqldata
drbdadm primary --force sqldata
watch cat /proc/drbd修改后的my.cnf在两个服务器上都会被更改:
service mysqld stop
sudo nano /etc/my.cnf
Change in /etc/my.cnf :
#bind-address = 127.0.0.1
#Make Virtual_IP
bind-address = 192.168.1.215
#datadir=/var/lib/mysql
#Where DRBD will Mount
datadir=/var/lib/mysql_drbd
Mount and Populate with Data :安装并填充drbd1:
/sbin/mkfs.ext4 /dev/drbd1
mkdir /mnt/drbd1
mount /dev/drbd1 /mnt/drbd1
mv /var/lib/mysql_drbd/* /mnt/drbd1/
chcon -R --reference=/var/lib/mysql /mnt/drbd1
umount /dev/drbd1pcs cluster start --all
pcs cluster cib sqlfs_cfg
pcs -f sqlfs_cfg resource create sqlfs ocf:heartbeat:Filesystem device="/dev/drbd1" directory="/var/lib/mysql_drbd" fstype="ext4"
pcs -f sqlfs_cfg constraint colocation add sqlfs with SQLDataClone INFINITY with-rsc-role=Master
pcs -f sqlfs_cfg constraint order promote SQLDataClone then start sqlfs
pcs -f sqlfs_cfg constraint colocation add webserver with sqlfs INFINITY
pcs -f sqlfs_cfg constraint order sqlfs then webserver
pcs -f sqlfs_cfg constraint
pcs -f sqlfs_cfg resource show
pcs cluster cib-push sqlfs_cfgsqlfs_drbd_cfg:
pcs cluster start --all
pcs cluster cib sqlfs_drbd_cfg
pcs -f sqlfs_drbd_cfg resource create SQLData ocf:linbit:drbd drbd_resource=sqldata op monitor interval=60s
pcs -f sqlfs_drbd_cfg resource master SQLDataClone SQLData master-max=1 master- node-max=1 clone-max=2 clone-node-max=1 notify=true
pcs -f sqlfs_drbd_cfg resource show
pcs cluster cib-push sqlfs_drbd_cfg在node1 AKA小学设置优先位置:
pcs constraint location sqlfs prefers node1=50对如何排除这些问题有什么想法吗?同样,它在初始配置期间工作,并在重新启动后崩溃.
谢谢!
发布于 2016-06-05 17:50:25
我没有看到mysql定义在起搏器中;您是在集群启动后手动启动它,还是在启动时启动它?
如果它是在引导时启动的,那么它可能是在Pac怪机之前启动的,因此,在挂载点(它的数据应该在那里)上持有一个锁,这将导致文件系统资源无法将文件系统挂载到那里。
有点黑暗,但是如果是这样的话,您应该在启动时禁用mysql,然后在集群中定义它。
https://unix.stackexchange.com/questions/287599
复制相似问题