It works pretty well, actually. I've done most of the hard work, it's just a matter of adding more bits into it now.
Here's a snapshot of what an install looks like.
[root@master hipbx]# ./install.sh
SELinux is enabled. I've turned it off for you. Be aware.
Are you creating a new HiPBX cluster? [N/y]:
Joining an existing cluster.
This script will now connect to the existing cluster node, and retrieve
the current cluster configuration. No changes will me made to the running
node.
Please enter any IP address of the other node in the cluster: ^C
[root@master hipbx]# ./install.sh
SELinux is enabled. I've turned it off for you. Be aware.
Are you creating a new HiPBX cluster? [N/y]: y
Starting new cluster setup on master.
LVM Setup:
Checking for existing LVM volumes for drbd...
mysql - Found (2G)
asterisk - Found (2G)
http - Found (2G)
dhcp - Found (2G)
spare - Found (2G)
SSH:
Master ssh key exists and seems valid
HiPBX SSH Key already exists in authorized_keys
Networking:
There needs to be at least two Ethernet Inferfaces for the cluste
to work. The first interface is the 'internal' link. This should be
a crossover cable, or even better, a pair of crossover cables
bonded together, that links the two machines. There should NOT be a
network swtich on the internal link.
The second interface is your external network. This again should be
a bonded interface, preferrably going to two seperate switches.
Both of these network interfaces should already be configured, tested
and working. If not, abort now (Ctrl-C) and do that.
I can detect 3 network interfaces with an IP address:
eth0 10.46.80.65
eth1 10.99.99.1
virbr0 192.168.122.1
Please select the EXTERNAL, PUBLIC interface [eth0]:
Setting EXTERNAL interface to eth0 (10.46.80.65)
Plesae enter the INTERNAL, PRIVATE interface [eth1]:
Setting INTERNAL interface to eth1 (10.99.99.1)
Configure Services
Please enter the IP Addresses for the HiPBX Services. These addresses
should NOT already exist, and they will be assigned to the interface
you previously selected (eth0). These will be the
'floating' addresses that are linked to a service, rather than a
machine. Please don't duplicate IP addresses when assigning them.
mysql [10.46.80.150]:
asterisk [10.46.80.151]:
http [unknown]: 10.46.80.152
dhcp [unknown]: 10.46.80.153
spare [10.46.80.154]:
Updating hosts file...Done
Generating corosync configuration file: Done
Starting Corosync Cluster Engine (corosync): [ OK ]
Starting Pacemaker Cluster Manager (pacemakerd): [ OK ]
Configuring corosync
(This may take up to 60 seconds, if the cluster isn't fully up yet)..Up!
Creating Cluster IP mysql_IP..Done
Creating Cluster IP asterisk_IP..Done
Creating Cluster IP http_IP..Done
Creating Cluster IP dhcp_IP..Done
Creating Cluster IP spare_IP..Done
DRBD:
mysql on drbd_mysql (initializing...Done)
Creating filesystem...Done
asterisk on drbd_asterisk (initializing...Done)
Creating filesystem...Done
http on drbd_http (initializing...Done)
Creating filesystem...Done
dhcp on drbd_dhcp (initializing...Done)
Creating filesystem...Done
spare on drbd_spare (initializing...Done)
Creating filesystem...Done
Starting MySQL Filesystem...
Migrating mysqld resource to this server...
Data move not needed.
Remounting under /var/lib/mysql
Starting Clustered MySQL service
MySQL...
Waiting for MySQL startup...Up!
Setting Password to eBpkudeBFokRjqH9
Creating HiPBX database
Checking for correct GRANTs...Failed.
Creating HiPBX mysql users .. localhost master slave cluster mysql 10.99.99.2
Starting Asterisk Filesystem..
Migrating resource to this server...
Starting Clustered Asterisk service
[root@master hipbx]#