坏气十足 发表于 2018-11-25 09:22:07

LVS+APACHE+PHP+MYSQL读写分离

  route:
ifconfig eth0 192.168.18.1
ifconfig eth1 192.168.20.1
echo 1 > /proc/sys/net/ipv4/ip_forward
  分发器:
ifconfig eth0 192.168.18.254
ifconfig eth0:0 192.168.18.250/32 broadcast 192.168.18.250 up
route add -host 192.168.18.250 dev eth0:0
ipvsadm -A -t 192.168.18.250:3306 -s rr
ipvsadm -a -t 192.168.18.250:3306 -r 192.168.18.100 -g
ipvsadm -a -t 192.168.18.250:3306 -r 192.168.18.200 -g
ipvsadm -a -t 192.168.18.250:3306 -r 192.168.18.220 -g

real server 1:
ifconfig lo:0 192.168.18.250/32 broadcast 192.168.18.250 up
route add -host 192.168.18.250 dev lo:0
route add default gw 192.168.18.1
echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
/etc/init.d/httpd restart
  real server 2:
ifconfig lo:0 192.168.18.250/32 broadcast 192.168.18.250 up
route add -host 192.168.18.250 dev lo:0
route add default gw 192.168.18.1
echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
/etc/init.d/httpd restart
  real server 3:
ifconfig lo:0 192.168.18.250/32 broadcast 192.168.18.250 up
route add -host 192.168.18.250 dev lo:0
route add default gw 192.168.18.1
echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
/etc/init.d/httpd restart
  Apache:
解压、安装mysql-w-r.tar.gz
修改指向数据库IP
  Mysql-A
vim /etc/my.cnf

server_id = 1
log-bin=binlog
log-bin-index=binlog.index
service mysqld restart
mysql> grant replication slave ON *.* TO 'ck'@'%' identified by '123';
flush privileges;
mysqldump -A -x > /tmp/full.sql
scp /tmp/full.sql root@192.168.18.200:/tmp/
scp /tmp/full.sql root@192.168.18.220:/tmp/
flush tables with read lock;
show master status;
+---------------+----------+--------------+------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+---------------+----------+--------------+------------------+
| binlog.000001 |      568 |            |                  |
unlock tables;
  Mysql-B1:
vim /etc/my.cnf

server_id = 2
relay_log = /var/lib/mysql/mysql-relay-bin
relay_log_index=/var/lib/mysql/mysql-relay-bin.index
cd /var/lib/mysql
rm -fr *
service mysqld restart
mysql < /tmp/full.sql
mysql> change master to master_host='192.168.18.100', master_port=3306, master_user='ck', master_password='123', master_log_file='binlog.000001',master_log_pos=568;
start slave;
show slave status \G
Slave_IO_Running: Yes
      Slave_SQL_Running: Yes

  Mysql-B2:
vim /etc/my.cnf

server_id = 3
relay_log = /var/lib/mysql/mysql-relay-bin
relay_log_index=/var/lib/mysql/mysql-relay-bin.index
cd /var/lib/mysql
rm -fr *
service mysqld restart
mysql < /tmp/full.sql
mysql> change master to master_host='192.168.18.100', master_port=3306, master_user='ck', master_password='123', master_log_file='binlog.000001',master_log_pos=568;
start slave;
show slave status \G
Slave_IO_Running: Yes
      Slave_SQL_Running: Yes

客户端测试
测试未知数。。。。。。



页: [1]
查看完整版本: LVS+APACHE+PHP+MYSQL读写分离