2、具體安裝和配置步驟:
1、數據庫的安裝 (兩臺數據庫上安裝的方式同樣!)
# yum install gcc gcc-c++ make ncurses-devel -y
# cd /usr/local/src
# tar xvf cmake-2.8.5.tar.gz //安裝cmake
# cd cmake-2.8.5
# ./configure
# make
# make install
# cd /usr/local/src
# tar zxvf mysql-5.5.23.tar.gz
# cd mysql-5.5.23
# cmake -DCMAKE_INSTALL_PREFIX=/opt/mysql \
-DMYSQL_DATADIR=/data/mysql \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all
# make
#make install
mysql 配置
#userdel -r mysql
#groupadd -r -g 3306 mysql
# useradd -u 3306 -g mysql -r -M -s /sbin/nologin mysql
# cp support-files/my-huge.cnf /etc/my.cnf
# cp support-files/mysql.server /etc/init.d/mysqld
# chmod +x /etc/init.d/mysqld
通常安裝mysql的時候,這地方都要加到開機自動啓動中,可是作heartbeat的時候就不須要了,他的資源都是有heartbeat統一管理的,不須要單獨啓動的
# cd /usr/local/bin //進入用戶的默認搜索路徑下創建mysql命令的軟鏈接,能夠直接執行mysql命令
# ln -s /opt/mysql/bin/mysql
# ln -s /opt/mysql/bin/mysqldump
# ln -s /opt/mysql/bin/mysqladmin
# ln -s /opt/mysql/bin/mysqlbinlog
這裏先不用初始化數據庫的,應爲咱們要把數據庫的數據文件放到共享存儲設備上。
二、
接下來是安裝和配置heartbeat了。
心跳網卡配置,我這裏是拿一根網線直接鏈接到了兩個服務器的eth1上了,網卡地址配置以下:
(1)兩個數據庫進行密鑰認證
db01上的配置
#ssh-keygen -t rsa //生成公鑰和密鑰,一步enter到底就好了
# ssh-copy-id -i .ssh/id_rsa root@10.1.1.3 //輸入密碼就好了
db02上的配置
#ssh-keygen -t rsa //生成公鑰和密鑰,一步enter到底就好了
# ssh-copy-id -i .ssh/id_rsa root@10.1.1.2 //輸入密碼就好了
(2)兩臺主機上都配置/etc/hosts
cat >>/etc/hosts <<EOF
10.211.1.178
db01.luowei.com
10.211.1.179
db02.luowei.com
192.168.1.2 db01.luowei.com
192.168.1.3 db02.luowei.com
EOF
(3)
安裝heartbeat
# yum install libnet -y
# groupadd haclient
# useradd -g haclient hacluster
# yum install heartbeat -y
# cd /usr/share/doc/heartbeat-2.1.3/
# cp ha.cf haresources authkeys /etc/ha.d/
# cd !$
配置heartbeat
編輯heartbeat主配置文件:
# vim ha.cf
debugfile /var/log/ha-debug
logfile /var/log/ha-log
logfacility local0
keepalive 2
deadtime 15
warntime 5
initdead 30
udpport 694
ucast eth1 192.168.1.3
auto_failback off
node db01.luowei.com
node db02.luowei.com
respawn hacluster /usr/lib64/heartbeat/dopd
apiauth ipfail gid=haclient uid=hacluster
apiauth dopd gid=haclient uid=hacluster
編輯authkeys文件(加密認證文件)
# vim authkeys
auth 1
1 crcasdfdfasdfadfad
//這裏的十個任意的字符串,就是兩端認證的時候用到的
# chmod 600 authkeys
接下來就是配置資源文件了
# vim haresources
db01.luowei.com IPaddr::10.211.1.185/24/eth0 Filesystem::/dev/mpath/mpath1p1::/data::ext3 mysqld
這個時候須要把mysqld服務從/etc/init.d/mysqld 拷貝或者鏈接到/etc/ha.d/resource.d/
我這裏就是鏈接過去:
這個時候你須要手動把存儲掛在到一臺服務器上,而後初始化數據庫
接下來就是初始化
mysql了
# mkdir -vpr /data
# mount /dev/mpath/mpath1p1 /data
# mkdir -vrp /data/{mysql,log,backup}
#chown -R mysql:mysql /data/
#/opt/mysql/scripts/mysql_install_db --user=mysql --basedir=/opt/mysql --datadir=/data/mysql & //初始化數據庫
修改mysql的配置文件中的datadir=/data/mysql就好了
保證兩邊的配置文件是相同的。
而後在卸載存儲。
接下來就是把上面三個文件拷貝到另一臺服務器服務器上了。
# /usr/lib64/heartbeat/ha_propagate //經過此命令只能拷貝authkeys和ha.cf兩個文件
# scp haresources db02.luowei.com:/etc/ha.d/
而後須要修改db02上的ha.cf文件,記住ucast的ip指向對方的ip就好了
而後就是把heartbeat添加到開機自動啓動服務,記住要在一個節點上啓動
# chkconfig heartbeat on
# /etc/init.d/heartbeat start
# ssh db02.luowei.com -- '/etc/init.d/heartbeat start'
接下來看一下資源啓動狀況:
自動切換
# /etc/init.d/heartbeat standby
我這裏就不演示了。
歡迎你們多交流!