lvm 實驗 APache與mysql與雙分發加單路由與測試機

 配置環境

 

 

配置環境

IP 192.168.1.2 client客戶端

   192.168.1.1/2.1 路由器(兩塊網卡)

   192.168.2.2  (Vip:192.168.2.250)分發1   需要:yum install ipvsadm -y

   192.168.2.3  (Vip:192.168.2.250)apache服務器 需要:yum install httpd -y 解壓 mysql-w-r.tar。 

   192.168.2.4  (Vip:192.168.2.250)apache服務器 需要:yum install httpd -y 解壓 mysql-w-r.tar。 

   192.168.2.5  (Vip:192.168.2.251)分發2    需要:yum install ipvsadm -y

   192.168.2.6      Mysql 主      需要yum install mysql mysql-server -y

   192.168.2.7      Mysql 從      需要yum install mysql mysql-server -y

   192.168.2.8      Mysql 從從    需要yum install mysql mysql-server -y

環境配置完成

 

client客戶端設置

設定網關

route add default gw 192.168.1.1

結束。

 

路由器設置

開啓轉發

 

vim /etc/sysctl.conf 

net.ipv4.ip_forward = 1
結束。
 
分發設置
綁定Vip
ifconfig eth0:0 192.168.2.250/32 broadcast 192.168.2.250 up
設定正確的路由(就是自己)
route add -host 192.168.2.250 dev eth0:0
開始做分發
設定規則爲rr(你一次我一次)
ipvsadm -A -t 192.168.2.250:80 -s rr
ipvsadm -a -t 192.168.2.250:80 -r 192.168.2.4 -g
ipvsadm -a -t 192.168.2.250:80 -r 192.168.2.3 -g
查看下唄~~
ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.2.250:80 rr
  -> 192.168.2.4:80               Route   1      0          0         
  -> 192.168.2.3:80               Route   1      0          0     
 
結束。
 
配置apache(IP:2.3)
綁定VIP爲lo口,方便設定在路由廣播時候不迴應
ifconfig lo:0 192.168.2.250/32 broadcast 192.168.2.250 up
設定到主機的路由
route add -host 192.168.2.250 dev lo:0
指定網關
route add default gw 192.168.2.1
查看下唄~~
route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.2.250   0.0.0.0         255.255.255.255 UH    0      0        0 lo
192.168.2.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U     0      0        0 eth0
0.0.0.0         192.168.2.1     0.0.0.0         UG    0      0        0 eth0
忽略路由廣播arp協議
echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
通告路由
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
此文件爲老師給的腳本,需要修改如下
vim /etc/init.d/vip.txt
前三行
#!/bin/bash
對應的VIP
VIP=192.168.2.250
對應的網關
ROUTE=192.168.2.1
 
運行腳本
/etc/init.d/vip.txt restart
 
把解壓的mysql-w-r.tar。 下的 insert.php mysql-c.php  mysql-i  mysql-r.php 移動到 /var/www/html下
具體如何編輯呢。
 
 
 
 
 
我累了。看老史的。。
 
到這裏APache之前的所有都配置完成了。
第二臺就不用說了吧。。累了~現在時間11:38,還沒有複習今天的呢。X~~~~~X又碎了。(你懂的!)
 
該說分發2了。
綁定Vip

ifconfig eth0:0 192.168.2.251 netmask 255.255.255.255 broadcast 192.168.2.251 up

開始做分發
設定規則爲rr(你一次我一次)

ipvsadm -A -t 192.168.2.251:3306 -s rr

ipvsadm -a -t 192.168.2.251:3306 -r 192.168.2.7 -g

ipvsadm -a -t 192.168.2.251:3306 -r 192.168.2.8 -g

結束

 

mysql主

進入配置文件

vim /etc/my.cnf 

編輯添加

server_id = 1
log-bin=binlog
log-bin-index=binlog.index

添加用戶

mysql> GRANT replication slave ON *.* TO 'a'@'%' identified by '123';

mysql> flush privileges;

創建一個可以訪問Mysql主的b

grant all on *.* to 'b'@'%' identified by '123';

拷貝主數據

mysqldump -A -x > /tmp/full.sql

傳送給從

scp /tmp/full.sql [email protected]:/tmp

查看Mysql主的狀態

生產環境下可以鎖定

mysql> flush tables with read lock;(測試環境可以不用鎖定喲~)
mysql> show master status;(查詢命令)

 

會顯示:

+---------------+----------+--------------+------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+---------------+----------+--------------+------------------+

| binlog.000001 |      118 |              |                  |mp

 

至此Mysql主配置結束

Mysql從

 

ifconfig lo:0 192.168.2.251 netmask 255.255.255.255 broadcast 192.168.2.251 up

route add -host 192.168.2.251 dev lo:0

route add default gw 192.168.2.1

echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore

echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

如果之前使用過可以進入

cd /var/lib/mysql

輸入刪除所有

rm -fr *

重啓Mysql服務

service mysqld restart

進入配置文件

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

添加用戶

grant all on *.* to 'c'@'%' identified by '123';

把之前Mysql主傳輸過來的數據添加到本地

mysql < /tmp/full.sql

還記得這個吧。輸入進來讓主從同步的關鍵啊~~~~~

+---------------+----------+--------------+------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+---------------+----------+--------------+------------------+
| binlog.000001 |      118 |              |                  |

在slave上執行一下命令(注意:master_host指到master的IP,master_user是master中爲slave創建的用戶,master_log_file是第九步查詢出來的File名,master_log_pos是第九步查詢出來的Position值)

mysql> change master to master_host='192.168.2.6, master_port=3306, master_user='a', master_password='123', master_log_file='binlog.000001',master_log_pos=118;

啓動Mysql從

mysql> start slave;

查看從的運行狀態:show slave status \G;

 Ladies and gentlemen 你成功了麼?

  Slave_IO_Running: Yes  (主機之間的連通性)
  Slave_SQL_Running: Yes(SQL運行狀態,是否同步了。)

 

mysql從從:

蛋疼!!不解釋!!00:02了。。

ifconfig lo:0 192.168.2.251 netmask 255.255.255.255 broadcast 192.168.2.251 up

route add -host 192.168.2.251 dev lo:0

route add default gw 192.168.2.1

echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore

echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

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

 

grant all on *.* to 'c'@'%' identified by '123';

change master to master_host='192.168.2.6',master_port=3306,master_user='a',master_password='123',master_log_file='binlog.000001',master_log_pos=118;

start slave;

 

測試!!

 

看老史的!!!!!!

 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章