日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

MMM结合Semisync机制实现Mysql Master-Master高可用

發(fā)布時間:2023/12/31 数据库 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MMM结合Semisync机制实现Mysql Master-Master高可用 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

2019獨角獸企業(yè)重金招聘Python工程師標準>>>

架構(gòu):

兩個Master(主備模式),一個或多個Slave(也可以沒有Slave,只有主備Master):

1、Monitor運行MMM Daemon程序,實現(xiàn)所有Mysql服務器的監(jiān)控和故障切換工作;

2、Master1和Master2互為主備,同時只有一個主可用于寫操作(也可同時分擔讀操作),另一個作為備用,可以分擔讀操作,讀寫分離需要應用程序?qū)崿F(xiàn);

3、Slave機器與當前active Master同步,如當前active Master故障后,Master將切換到passive Master,同時MMM修改Slave與新的Master同步;

4、Application通過write和read ip進行讀寫操作;



環(huán)境:

主機名服務器IP地址Write IPRead IP備注
mysql0110.0.60.10010.0.60.16010.0.60.161默認為active Master,運行mmm agent
mysql0210.0.60.101 10.0.60.162默認為passive ?Master,運行mmm agent
mysql0310.0.60.102 10.0.60.163Slave,由MMM維護,運行mmm agent
mysql0410.0.60.103  監(jiān)控機,運行MMM ?Daemon程序


軟件信息:

Mysql:5.6.17-log MySQL Community Server (GPL)

MMM:mysql-mmm-2.2.1

OS:CentOS release 6.4 (Final),kernel?2.6.32-358.el6.x86_64


一、配置復制環(huán)境

這里是全新配置,如果是已經(jīng)存在了單master和slave環(huán)境,將配置不一樣,可以結(jié)合xtrabackup工具實現(xiàn)數(shù)據(jù)的備份和恢復,配置主備master環(huán)境。

前提要求:

1、所有mysql實例開啟read_only=1;

2、主備master需要開啟log_bin;

3、所有mysql實例配置不同的server_id以及不同的二進制日志、relay日志文件名;


參考配置參數(shù):

mysql01的特殊配置參數(shù):

mysql01>\! grep -E "log_bin|server_id|read_only" my.cnf
log_bin = mysql01-bin
server_id = 1
read_only
mysql01>


mysql02的特殊配置參數(shù):

mysql02>\! grep -E "log_bin|server_id|read_only" my.cnf
log_bin = mysql02-bin
server_id = 2
read_only
mysql02>


mysql03的特殊配置參數(shù):

mysql03>\! grep -E "log_bin|server_id|read_only" my.cnf
log_bin = mysql_bin
server_id = 3
read_only


配置主從:

1、配置mysql01和mysql02互為主從:

在mysql01和mysql02上創(chuàng)建同樣的復制賬號:

grant replication slave on *.* to 'repl'@'10.0.60.%'?identified by 'repl';


查看master狀態(tài):

show master status;



在每個節(jié)點執(zhí)行CHANGE MASTER TO語句:

mysql01>?change master to master_host = '10.0.60.101',?
master_user='repl',?
master_password='repl',?
master_log_file='mysql02-bin.000001',?
master_log_pos=545;


mysql02> change master to master_host = '10.0.60.100',?
master_user='repl',?
master_password='repl',?
master_log_file='mysql01-bin.000001',?
master_log_pos=545;


在兩個節(jié)點開啟slave:

start slave;


查看slave狀態(tài)是否正常:

mysql02>show slave status\G;
? ? ? ? ? ? ?Slave_IO_Running: Yes
? ? ? ? ? ? Slave_SQL_Running: Yes


2、配置mysql03為mysql01的從服務器

mysql03> change master to master_host = '10.0.60.100',?
master_user='repl',?
master_password='repl',?
master_log_file='mysql01-bin.000001',?
master_log_pos=545;


驗證slave狀態(tài)正常后,開始下面的步驟。


二、配置半同步

使用半同步機制,可以確保至少一臺slave收到master的二進制日志,在一定程度上保證了數(shù)據(jù)的一致性,減少了當master當機時,造成數(shù)據(jù)丟失。

半同步機制由google貢獻,從mysql 5.5開始原生支持該特性。


前提要求:

1、主備master都要安裝并開啟semisync master和slave,因mmm不能進行semisync配置和管理;

2、slave需要安裝并開啟semisync slave;


配置步驟:

1、mysql01和mysql02安裝semisync master和slave插件:

mysql01>INSTALL PLUGIN rpl_semi_sync_master SONAME 'semisync_master.so';
Query OK, 0 rows affected (0.01 sec)

mysql01>INSTALL PLUGIN rpl_semi_sync_slave SONAME 'semisync_slave.so';
Query OK, 0 rows affected (0.00 sec)


mysql02>INSTALL PLUGIN rpl_semi_sync_master SONAME 'semisync_master.so';
Query OK, 0 rows affected (0.05 sec)

mysql02>INSTALL PLUGIN rpl_semi_sync_slave SONAME 'semisync_slave.so';
Query OK, 0 rows affected (0.01 sec)


2、mysql01和mysql02開啟semisync master和slave:

mysql01>SET GLOBAL rpl_semi_sync_master_enabled = 1;
Query OK, 0 rows affected (0.00 sec)

mysql01>SET GLOBAL rpl_semi_sync_slave_enabled = 1;
Query OK, 0 rows affected (0.00 sec)


mysql02>SET GLOBAL rpl_semi_sync_master_enabled = 1;
Query OK, 0 rows affected (0.00 sec)

mysql02>SET GLOBAL rpl_semi_sync_slave_enabled = 1;
Query OK, 0 rows affected (0.00 sec)


同時將參數(shù)寫入到配置文件,以mysql實例開啟時自動開啟半同步:

mysql02>\! cat my.cnf|grep semi
rpl_semi_sync_master_enabled = 1
rpl_semi_sync_slave_enabled = 1


3、mysql03安裝并開啟semisync slave插件:

mysql03>INSTALL PLUGIN rpl_semi_sync_slave SONAME 'semisync_slave.so';
Query OK, 0 rows affected (0.01 sec)

mysql03>SET GLOBAL rpl_semi_sync_slave_enabled = 1;
Query OK, 0 rows affected (0.00 sec)


同時將參數(shù)寫入到配置文件,以mysql實例開啟時自動開啟半同步:

mysql03>\! cat my.cnf|grep semi
rpl_semi_sync_slave_enabled = 1
mysql03>


4、所有mysql實例停止slave并開啟slave,使半同步機制生效:

stop slave;start slave;


5、查看semisync狀態(tài)

mysql01>show status like '%emi%';
+--------------------------------------------+-------+
| Variable_name ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?| Value |
+--------------------------------------------+-------+
| Rpl_semi_sync_master_clients ? ? ? ? ? ? ? | 2 ? ? |
| Rpl_semi_sync_master_net_avg_wait_time ? ? | 0 ? ? |
| Rpl_semi_sync_master_net_wait_time ? ? ? ? | 0 ? ? |
| Rpl_semi_sync_master_net_waits ? ? ? ? ? ? | 0 ? ? |
| Rpl_semi_sync_master_no_times ? ? ? ? ? ? ?| 0 ? ? |
| Rpl_semi_sync_master_no_tx ? ? ? ? ? ? ? ? | 0 ? ? |
| Rpl_semi_sync_master_status ? ? ? ? ? ? ? ?| ON ? ?|
| Rpl_semi_sync_master_timefunc_failures ? ? | 0 ? ? |
| Rpl_semi_sync_master_tx_avg_wait_time ? ? ?| 0 ? ? |
| Rpl_semi_sync_master_tx_wait_time ? ? ? ? ?| 0 ? ? |
| Rpl_semi_sync_master_tx_waits ? ? ? ? ? ? ?| 0 ? ? |
| Rpl_semi_sync_master_wait_pos_backtraverse | 0 ? ? |
| Rpl_semi_sync_master_wait_sessions ? ? ? ? | 0 ? ? |
| Rpl_semi_sync_master_yes_tx ? ? ? ? ? ? ? ?| 0 ? ? |
| Rpl_semi_sync_slave_status ? ? ? ? ? ? ? ? | ON ? ?|
+--------------------------------------------+-------+
15 rows in set (0.00 sec)


三、配置MMM

Multi Master Replication Manager for Mysql(MMM)是一套開源的perl腳本,對Mysql Master-Master復制環(huán)境(在任何時刻只有一個節(jié)點可寫)進行監(jiān)控、故障恢復以及管理。同時能根據(jù)復制的延時情況管理讀負載均衡,通過遷移read虛擬IP地址。同時也能用于數(shù)據(jù)備份,以及節(jié)點之間重同步。

主要由三個腳本組成:

1、mmm_mod:監(jiān)控daemon程序,進行監(jiān)控工作,并決定讀、寫角色的遷移;最好運行在專用的監(jiān)控服務器上,可以管理多套Master-Slave集群。

2、mmm_agentd:客戶端daemon程序,運行在所有mysql實例服務器,與監(jiān)控節(jié)點進行簡單的遠程通信。

3、mmm_control:用于管理mmm_mond進程的命令行腳本。


前提需求:

1、支持環(huán)境:

兩個節(jié)點的Master-Master環(huán)境,MMM需要5個IP地址(每個節(jié)點一個固定IP地址,一個write IP地址,兩個read IP地址,write和read IP依據(jù)節(jié)點的可用性進行自動的遷移),正常情況下,active master有一個write IP和一個read IP地址,standby master有一個read IP地址,如果當前active master故障,write和read IP地址將遷移到standby master;

兩個節(jié)點的Master-Master,以及一個或多個slave的環(huán)境,同時也是大多數(shù)企業(yè)使用的方案(可以更好的擴展讀,同時有冗余的Slave可用于備份等工作,防止阻塞正常的事務)。

2、n+1個主機:n個運行mysql實例的服務器,一個機器用于運行MMM監(jiān)控daemon程序;

3、2*(n+1) IP地址:每個主機一個固定IP地址,同時每臺mysql實例一個read IP地址以及一個write IP地址;

4、monitor數(shù)據(jù)庫用戶:需要REPLICATION CLIENT權(quán)限,用于MMM監(jiān)控(mmm_mond);

5、agent數(shù)據(jù)庫用戶:需要SUPER、REPLICATION CLIENT、PROCESS權(quán)限,用于MMM 客戶端(mmm_agentd),可以只針對本機IP進行授權(quán);

6、relication數(shù)據(jù)庫用戶:需要REPLICATION SLAVE權(quán)限,用于mysql復制;

7、tools數(shù)據(jù)庫用戶:需要SUPER、REPLICATION CLIENT、RELOAD權(quán)限,用于MMM tools(如mmm_backup、mmm_clone、mmm_restore)


1、在mysql實例服務器安裝依賴包和mmm

安裝依賴包:

yum -y install perl iproute perl-Algorithm-Diff perl-DBI?perl-Class-Singleton perl-DBD-MySQL perl-Log-Log4perl perl-Log-Dispatch perl-Proc-Daemon perl-MailTools?perl-Time-HiRes?perl-Mail-Sendmail?perl-Mail-Sender?perl-Email-Date-Format?perl-MIME-Lite?perl-Net-ARP


如果在標準軟件倉庫和EPEL軟件倉庫沒有,需要單獨下載,可以去以下網(wǎng)址下載:

http://rpm.pbone.net

http://search.cpan.org/

http://www.rpmfind.net/


安裝mmm:

tar xvf mysql-mmm-2.2.1.tar.gz
cd?mysql-mmm-2.2.1
make install


2、在mysql實例服務器配置mmm agent

mmm_agentd使用mmm_agent.conf配置文件:

# cat /etc/mysql-mmm/mmm_agent.conf ??
include mmm_common.conf #包含這個公用配置文件
#Description: name of this host,可以不是主機名,每臺mysql實例的host不同(如mysql01設(shè)置為db1,mysql02設(shè)置為db2,mysql03設(shè)置為db3)
this db1
#Description: Enable debug mode,設(shè)置1,打印日志到前臺,按ctrl+c將結(jié)束進程
debug 0
#Description: Maximum number of retries when killing threads to prevent further
#writes during the removal of the active_master_role.
max_kill_retries 10


公用配置文件:mmm_common.conf,每個實例一樣,并要拷貝到監(jiān)控服務器供mmm_mond使用,進行網(wǎng)卡接口的定義,每個主機的描述,復制和mmm agent的用戶名和密碼配置,以及讀寫規(guī)則等

# cat /etc/mysql-mmm/mmm_common.conf?
#Description: name of the role for which identifies the active master,定義活動master為可寫
active_master_role ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?writer

<host default> #默認段
? ? ? ? #Description: network interface on which the IPs of the roles should be configured,用于綁定ip的網(wǎng)絡接口
? ? ? ? cluster_interface ? ? ? ? ? ? ? ? ? ? ? eth0

? ? ? ? pid_path ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?/var/run/mmm_agentd.pid
? ? ? ? bin_path ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?/usr/lib/mysql-mmm/
? ? ? ? #Description: Port on which mmm agentd listens
? ? ? ? agent_port ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?9989
? ? ? ? #Description: Port on which mysqld is listening
? ? ? ? mysql_port ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?3306

? ? ? ? #Description: mysql user used for replication
? ? ? ? replication_user ? ? ? ? ? ? ? ? ? ? ? ?repl
? ? ? ? #Description: mysql password used for replication
? ? ? ? replication_password ? ? ? ? ? ? ? ? ? ?repl
? ? ? ? #Description: mysql user for MMM Agent
? ? ? ? agent_user ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?mmm_agent
? ? ? ? #Description: mysql password for MMM Agent
? ? ? ? agent_password ? ? ? ? ? ? ? ? ? ? ? ? ?mmm_agent
</host>

<host db1> #命名段,指定每個mysql實例主機
? ? ? ? #Description: IP of host
? ? ? ? ip ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?10.0.60.100
? ? ? ? #Description: Mode of host. Either master or slave.
? ? ? ? mode ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?master
? ? ? ? #Description: Name of peer host (if mode is master)
? ? ? ? peer ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?db2
</host>

<host db2>
? ? ? ? ip ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?10.0.60.101
? ? ? ? mode ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?master
? ? ? ? peer ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?db1
</host>

<host db3>
? ? ? ? ip ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?10.0.60.102
? ? ? ? mode ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?slave
</host>


<role writer> #定義write角色
? ? ? ? #Description: Hosts which may take over the role
? ? ? ? hosts ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? db1, db2
? ? ? ? #Description: One or multiple IPs associated with the role,指定浮動write IP地址
? ? ? ? ips ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 10.0.60.160
? ? ? ? #Description: Mode of role. Either balanced or exclusive
? ? ? ? mode ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?exclusive
? ? ? ? #Description: The preferred host for this role. Only allowed for exclusive roles.
? ? ? ? #prefer ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? -
</role>

<role reader> ?#定義read角色
? ? ? ? hosts ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? db1, db2, db3
? ? ? ? ips ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 10.0.60.161,10.0.60.162,10.0.60.163 #浮動read IP地址
? ? ? ? mode ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?balanced
</role>


3、啟動mmm agent服務

/etc/init.d/mysql-mmm-agent start
chkconfig?--level?2345?mysql-mmm-agent?on


4、在監(jiān)控服務器(mysql04)安裝依賴包和mmm

安裝依賴包:

yum?-y install perl iproute perl-Algorithm-Diff perl-DBI?perl-Class-Singleton perl-DBD-MySQL perl-Log-Log4perl perl-Log-Dispatch perl-Proc-Daemon perl-MailTools?perl-Time-HiRes?perl-Mail-Sendmail?perl-Mail-Sender?perl-Email-Date-Format?perl-MIME-Lite?perl-Net-Ping


安裝mmm:

tar xvf mysql-mmm-2.2.1.tar.gz
cd?mysql-mmm-2.2.1
make install


5、配置mmm 監(jiān)控配置文件

mmm_mond和mmm_control使用mmm_mon.conf或mmm_mon_CLUSTER.conf配置文件

mmm_mon.conf配置文件參考:

# cat /etc/mysql-mmm/mmm_mon.conf?
include mmm_common.conf

#The monitor section is required by mmm_mond and mmm_control
<monitor>
? ? ? ? #Description: IP on which mmm_mond listens
? ? ? ? ip ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?127.0.0.1
? ? ? ? #Description: Port on which mmm mond listens
? ? ? ? port ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?9988
? ? ? ? #Description: Location of pid-file
? ? ? ? pid_path ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?/var/run/mmm_mond.pid
? ? ? ? #Description: Path to directory containing MMM binaries
? ? ? ? bin_path ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?/usr/lib/mysql-mmm/
? ? ? ? #Description: Location of of status file
? ? ? ? status_path ? ? ? ? ? ? ? ? ? ? ? ? ? ? /var/lib/misc/mmm_mond.status
? ? ? ? #Description: Break between network checks
? ? ? ? ping_interval ? ? ? ? ? ? ? ? ? ? ? ? ? 1
? ? ? ? #Description: IPs used for network checks,指定所有mysql服務器IP,write和read IP地址,用于進行ping檢查
? ? ? ? ping_ips ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?10.0.60.100, 10.0.60.101, 10.0.60.102, 10.0.60.160, 10.0.60.161, 10.0.60.162, 10.0.60.163
? ? ? ? #Description: Duration in seconds for flap detection. See flap_count
? ? ? ? flap_duration ? ? ? ? ? ? ? ? ? ? ? ? ? 3600
? ? ? ? #Description: Maximum number of downtimes within flap_duration seconds after
? ? ? ? #which a host is considered to be flapping.
? ? ? ? flap_count ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?3
? ? ? ? #Description: How many seconds to wait before switching node status from
? ? ? ? #AWAITING_RECOVERY to ONLINE. 0 = disabled.
? ? ? ? auto_set_online ? ? ? ? ? ? ? ? ? ? ? ? 0
? ? ? ? #Description: Binary used to kill hosts if roles couldn’t be removed because the agent
? ? ? ? #was not reachable. You have to provide a custom binary for this which
? ? ? ? #takes the hostname as first argument and the state of check ping (1 -ok; 0 - not ok) as second argument.
? ? ? ? kill_host_bin ? ? ? ? ? ? ? ? ? ? ? ? ? /usr/lib/mysql-mmm/monitor/kill_host
? ? ? ? #Description: Startup carefully i.e. switch into passive mode when writer role is
? ? ? ? #configured on multiple hosts
? ? ? ? careful_startup ? ? ? ? ? ? ? ? ? ? ? ? 0
? ? ? ? #Description: Default mode of monitor.
? ? ? ? mode ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?active
? ? ? ? #Description: How many seconds to wait for other master to become ONLINE before
? ? ? ? #switching from mode WAIT to mode ACTIVE. 0 = infinite.
? ? ? ? wait_for_other_master ? ? ? ? ? ? ? ? ? 120
</monitor>

<host default>
? ? ? ? #Description: mysql user for MMM Monitor
? ? ? ? monitor_user ? ? ? ? ? ? ? ? ? ?mmm_agent
? ? ? ? #Description: mysql password for MMM Monitor
? ? ? ? monitor_password ? ? ? ? ? ? ? ?mmm_agent
</host>

<check ?mysql> #check段,mmm執(zhí)行ping、mysql、rep_threads、rep_backlog四種檢查,可以分別進行檢查間隔等參數(shù)配置。
? ? ? ? #Description: Perform check every 5 seconds
? ? ? ? check_period ? ? ? ? ? ? ? ? ? ?5
? ? ? ? #Description: Check is considered as failed if it doesn’t succeed for at least
? ? ? ? #trap period seconds.
? ? ? ? trap_period ? ? ? ? ? ? ? ? ? ? 10
? ? ? ? #Description: Check times out after timeout seconds
? ? ? ? timeout ? ? ? ? ? ? ? ? ? ? ? ? 2
? ? ? ? #Description: Restart checker process after restart after checks
? ? ? ? restart_after ? ? ? ? ? ? ? ? ? 10000
? ? ? ? #Description: Maximum backlog for check rep_backlog.
? ? ? ? max_backlog ? ? ? ? ? ? ? ? ? ? 60
</check>

#設(shè)置為1,開啟調(diào)試模式,打印日志到前臺,ctrl+c將結(jié)束進程,對于調(diào)試有幫助
debug 0


6、開啟mmm monitor監(jiān)控

/etc/init.d/mysql-mmm-monitor start
chkconfig --level 2345?mysql-mmm-monitor on


7、使用mmm_control查看狀態(tài)

# mmm_control show
? db1(10.0.60.100) master/ONLINE. Roles: reader(10.0.60.163), writer(10.0.60.160)
? db2(10.0.60.101) master/ONLINE. Roles: reader(10.0.60.161)
? db3(10.0.60.102) slave/ONLINE. Roles: reader(10.0.60.162)


注:

當節(jié)點第一次開啟,狀態(tài)為等待恢復。

設(shè)置節(jié)點online:

# mmm_control set_online db1


MMM如何工作:

當故障發(fā)生時,mmm迅速的遷移故障節(jié)點的IP地址從一個節(jié)點到另一個節(jié)點,并使用Net::ARP Perl模塊更新ARP表

處理過程:

在故障active master節(jié)點:

1、mysql 設(shè)置為read_only(set global read_only=1),防止寫事務;

2、中斷活動連接;

3、移除寫ip;


在新master節(jié)點:

1、運行在passive master的mmm進程被通知即將成為active write;

2、slave將嘗試從master的二進制日志抓取任何剩余事務;

3、關(guān)閉read_only(set global read_only=0);

4、綁定write ip,并發(fā)生arp通告;


四、測試

1、測試mysql01 mysql實例故障

手動關(guān)閉mysql01服務器上的mysql實例,期望master將遷移到mysql02

停止mysql01的mysqld進程:也可以使用"killall -15 mysqld"結(jié)束mysqld進程

mysql01>\! sh stop.sh


查看mmm_mond的日志:總共經(jīng)過10s時間完成遷移

# tail -f /var/log/mysql-mmm/mmm_mond.log?
2014/05/27 14:19:13 ?WARN Check 'rep_backlog' on 'db1' is in unknown state! Message: UNKNOWN: Connect error (host = 10.0.60.100:3306, user = mmm_agent)! Lost connection to MySQL server at 'reading initial communication packet', system error: 111
2014/05/27 14:19:13 ?WARN Check 'rep_threads' on 'db1' is in unknown state! Message: UNKNOWN: Connect error (host = 10.0.60.100:3306, user = mmm_agent)! Lost connection to MySQL server at 'reading initial communication packet', system error: 111
2014/05/27 14:19:22 ERROR Check 'mysql' on 'db1' has failed for 10 seconds! Message: ERROR: Connect error (host = 10.0.60.100:3306, user = mmm_agent)! Lost connection to MySQL server at 'reading initial communication packet', system error: 111
2014/05/27 14:19:23 FATAL State of host 'db1' changed from ONLINE to HARD_OFFLINE (ping: OK, mysql: not OK)
2014/05/27 14:19:23 ?INFO Removing all roles from host 'db1':
2014/05/27 14:19:23 ?INFO ? ? Removed role 'reader(10.0.60.163)' from host 'db1'
2014/05/27 14:19:23 ?INFO ? ? Removed role 'writer(10.0.60.160)' from host 'db1'
2014/05/27 14:19:23 ?INFO Orphaned role 'writer(10.0.60.160)' has been assigned to 'db2' #可以看到寫IP已經(jīng)遷移到mysql02
2014/05/27 14:19:23 ?INFO Orphaned role 'reader(10.0.60.163)' has been assigned to 'db3'


使用mmm_control命令查看狀態(tài):

[root@mysql04 ~]# mmm_control show
? db1(10.0.60.100) master/HARD_OFFLINE. Roles:?#mysql01狀態(tài)已經(jīng)變?yōu)镠ARD_OFFLINE,意外著ping錯誤或mysql故障
? db2(10.0.60.101) master/ONLINE. Roles: reader(10.0.60.161), writer(10.0.60.160)
? db3(10.0.60.102) slave/ONLINE. Roles: reader(10.0.60.162), reader(10.0.60.163)


檢查mysql02的read_only變量是否改變:

mysql02>show global variables like 'read_only'; #默認在passive master時,read_only為ON
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| read_only ? ? | OFF ? |
+---------------+-------+
1 row in set (0.00 sec)

mysql02>


檢查mysql03是否已經(jīng)將mysql02作為主:

mysql03>show slave status\G;
*************************** 1. row ***************************
? ? ? ? ? ? ? ?Slave_IO_State: Waiting for master to send event
? ? ? ? ? ? ? ? ? Master_Host: 10.0.60.101 #已經(jīng)從Mysql02同步
? ? ? ? ? ? ? ? ? Master_User: repl
? ? ? ? ? ? ? ? ? Master_Port: 3306
? ? ? ? ? ? ? ? Connect_Retry: 10
? ? ? ? ? ? ? Master_Log_File: mysql02-bin.000014
? ? ? ? ? Read_Master_Log_Pos: 120
? ? ? ? ? ? ? ?Relay_Log_File: mysql03-relay-bin.000002
? ? ? ? ? ? ? ? Relay_Log_Pos: 285
? ? ? ? Relay_Master_Log_File: mysql02-bin.000014
? ? ? ? ? ? ?Slave_IO_Running: Yes
? ? ? ? ? ? Slave_SQL_Running: Yes


當再次啟動mysql01的mysql實例,db1的狀態(tài)將由HARD_OFFLINE改變?yōu)锳WAITING_RECOVERY:

[root@mysql04 ~]# mmm_control show
? db1(10.0.60.100) master/AWAITING_RECOVERY. Roles:?
? db2(10.0.60.101) master/ONLINE. Roles: reader(10.0.60.161), writer(10.0.60.160)
? db3(10.0.60.102) slave/ONLINE. Roles: reader(10.0.60.162), reader(10.0.60.163)


需要手動設(shè)置為online,mmm才會分配read ip給mysql01,并與mysql02同步:

[root@mysql04 ~]# mmm_control set_online db1
OK: State of 'db1' changed to ONLINE. Now you can wait some time and check its new roles!


mysql01>show slave status\G;
*************************** 1. row ***************************
? ? ? ? ? ? ? ?Slave_IO_State: Waiting for master to send event
? ? ? ? ? ? ? ? ? Master_Host: 10.0.60.101?#mysql01已經(jīng)從Mysql02同步
? ? ? ? ? ? ? ? ? Master_User: repl
? ? ? ? ? ? ? ? ? Master_Port: 3306
? ? ? ? ? ? ? ? Connect_Retry: 10
? ? ? ? ? ? ? Master_Log_File: mysql02-bin.000015
? ? ? ? ? Read_Master_Log_Pos: 120
? ? ? ? ? ? ? ?Relay_Log_File: mysql01-relay.000027
? ? ? ? ? ? ? ? Relay_Log_Pos: 285
? ? ? ? Relay_Master_Log_File: mysql02-bin.000015
? ? ? ? ? ? ?Slave_IO_Running: Yes
? ? ? ? ? ? Slave_SQL_Running: Yes


查看mysql02的semisync狀態(tài):

mysql02>show status like 'Rpl_semi%';
+--------------------------------------------+-------+
| Variable_name ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?| Value |
+--------------------------------------------+-------+
| Rpl_semi_sync_master_clients ? ? ? ? ? ? ? | 2 ? ? |
| Rpl_semi_sync_master_net_avg_wait_time ? ? | 1053 ?|
| Rpl_semi_sync_master_net_wait_time ? ? ? ? | 2106 ?|
| Rpl_semi_sync_master_net_waits ? ? ? ? ? ? | 2 ? ? |
| Rpl_semi_sync_master_no_times ? ? ? ? ? ? ?| 0 ? ? |
| Rpl_semi_sync_master_no_tx ? ? ? ? ? ? ? ? | 0 ? ? |
| Rpl_semi_sync_master_status ? ? ? ? ? ? ? ?| ON ? ?|
| Rpl_semi_sync_master_timefunc_failures ? ? | 0 ? ? |
| Rpl_semi_sync_master_tx_avg_wait_time ? ? ?| 1015 ?|
| Rpl_semi_sync_master_tx_wait_time ? ? ? ? ?| 1015 ?|
| Rpl_semi_sync_master_tx_waits ? ? ? ? ? ? ?| 1 ? ? |
| Rpl_semi_sync_master_wait_pos_backtraverse | 0 ? ? |
| Rpl_semi_sync_master_wait_sessions ? ? ? ? | 0 ? ? |
| Rpl_semi_sync_master_yes_tx ? ? ? ? ? ? ? ?| 1 ? ? |
| Rpl_semi_sync_slave_status ? ? ? ? ? ? ? ? | ON ? ?|
+--------------------------------------------+-------+
15 rows in set (0.00 sec)


2、模擬mysql02(Active Master服務器) kernel panic,期望進行遷移

執(zhí)行上面的測試后,當前active master為mysql02,使用下面命令模擬kernel panic:

mysql02>\! echo "c" > /proc/sysrq-trigger?


查看mmm_mond日志:總共經(jīng)過了20s的時間完成遷移

# tail -f /var/log/mysql-mmm/mmm_mond.log
2014/05/27 14:44:42 ?WARN Check 'rep_threads' on 'db2' is in unknown state! Message: UNKNOWN: Connect error (host = 10.0.60.101:3306, user = mmm_agent)! Can't connect to MySQL server on '10.0.60.101' (4)
2014/05/27 14:44:42 ?WARN Check '
rep_backlog' on 'db2' is in unknown state! Message: UNKNOWN: Connect error (host = 10.0.60.101:3306, user = mmm_agent)! Can't connect to MySQL server on '10.0.60.101' (4)
2014/05/27 14:44:46 FATAL Can't reach agent on host 'db2'
2014/05/27 14:44:49 ERROR Check '
ping' on 'db2' has failed for 11 seconds! Message: ERROR: Could not ping 10.0.60.101 #ping檢查錯誤
2014/05/27 14:44:55 ERROR Check '
mysql' on 'db2' has failed for 14 seconds! Message: ERROR: Connect error (host = 10.0.60.101:3306, user = mmm_agent)! Can't connect to MySQL server on '10.0.60.101' (4) #mysql檢查錯誤,不能連接
2014/05/27 14:44:59 ?INFO Check 'ping' on 'db2' is ok!
2014/05/27 14:45:02 FATAL State of host 'db2' changed from ONLINE to HARD_OFFLINE (ping: OK, mysql: not OK) #改變mysql02的狀態(tài)為HARD_OFFLINE
2014/05/27 14:45:02 ?INFO Removing all roles from host 'db2': ?#移除mysql02的角色
2014/05/27 14:45:02 ?INFO ? ? Removed role 'reader(10.0.60.161)' from host 'db2'
2014/05/27 14:45:02 ?INFO ? ? Removed role 'writer(10.0.60.160)' from host 'db2'
2014/05/27 14:45:02 FATAL Agent on host 'db2' is reachable again
2014/05/27 14:45:02 ?INFO Orphaned role 'writer(10.0.60.160)' has been assigned to 'db1' #分配角色到其他機器,write IP分配到mysql01,永遠不會分配到mysql03
2014/05/27 14:45:02 ?INFO Orphaned role 'reader(10.0.60.161)' has been assigned to 'db3'


使用mmm_control查看狀態(tài):

[root@mysql04 ~]# mmm_control show
? db1(10.0.60.100) master/ONLINE. Roles: reader(10.0.60.163)
? db2(10.0.60.101) master/HARD_OFFLINE. Roles:?
? db3(10.0.60.102) slave/ONLINE. Roles: reader(10.0.60.162)


3、模擬active master服務器網(wǎng)絡不通,期望進行遷移,但是網(wǎng)絡恢復后,將不會重啟slave;

當前active master為mysql01,在mysql01上禁用網(wǎng)卡:

mysql01>\! cat down_net.sh
ifdown eth0
sleep 600
ifup eth0
mysql01>\! sh down_net.sh


查看mmm_mond日志:總共經(jīng)過了9s完成遷移

2014/05/27 15:02:35 ?WARN Check 'rep_threads' on 'db1' is in unknown state! Message: UNKNOWN: Connect error (host = 10.0.60.100:3306, user = mmm_agent)! Can't connect to MySQL server on '10.0.60.100' (4)
2014/05/27 15:02:35 ?WARN Check '
rep_backlog' on 'db1' is in unknown state! Message: UNKNOWN: Connect error (host = 10.0.60.100:3306, user = mmm_agent)! Can't connect to MySQL server on '10.0.60.100' (4)
2014/05/27 15:02:41 FATAL Can't reach agent on host 'db1'
2014/05/27 15:02:41 ERROR Check '
ping' on 'db1' has failed for 11 seconds! Message: ERROR: Could not ping 10.0.60.100 ?#ping檢查錯誤
2014/05/27 15:02:44 FATAL State of host '
db1' changed from ONLINE to HARD_OFFLINE (ping: not OK, mysql: OK) #改變狀態(tài)
2014/05/27 15:02:44 ?INFO Removing all roles from host '
db1': #移除角色
2014/05/27 15:02:44 ?INFO ? ? Removed role '
reader(10.0.60.163)' from host 'db1' ?
2014/05/27 15:02:44 ?INFO ? ? Removed role '
writer(10.0.60.160)' from host 'db1'
2014/05/27 15:02:44 ERROR Can'
t send offline status notification to 'db1' - killing it!
2014/05/27 15:02:44 FATAL Could not kill host 'db1' - there may be some duplicate ips now! (There's no binary configured for killing hosts.)
2014/05/27 15:02:44 ?INFO Orphaned role '
writer(10.0.60.160)' has been assigned to 'db2'
2014/05/27 15:02:44 ?INFO Orphaned role '
reader(10.0.60.163)' has been assigned to 'db3'
2014/05/27 15:02:48 ERROR Check '
mysql' on 'db1' has failed for 14 seconds! Message: ERROR: Connect error (host = 10.0.60.100:3306, user = mmm_agent)! Can't connect to MySQL server on '10.0.60.100' (4)


使用mmm_control查看狀態(tài):

[root@mysql04 ~]# mmm_control show
# Warning: agent on host db1 is not reachable
? db1(10.0.60.100) master/HARD_OFFLINE. Roles:?
? db2(10.0.60.101) master/ONLINE. Roles: reader(10.0.60.161), writer(10.0.60.160)
? db3(10.0.60.102) slave/ONLINE. Roles: reader(10.0.60.162), reader(10.0.60.163)


當網(wǎng)絡恢復后,mmm會修改mysql01的slave配置,修改主為mysql02,但是沒有重啟slave,造成不能進行數(shù)據(jù)同步,需要手工重新開啟slave。

使用mmm_control檢查狀態(tài):

[root@mysql04 ~]# mmm_control show
? db1(10.0.60.100) master/AWAITING_RECOVERY. Roles:?
? db2(10.0.60.101) master/ONLINE. Roles: reader(10.0.60.161), writer(10.0.60.160)
? db3(10.0.60.102) slave/ONLINE. Roles: reader(10.0.60.162), reader(10.0.60.163)

[root@mysql04 ~]# mmm_control set_online db1 ?#網(wǎng)絡恢復后,手動設(shè)置為online
OK: State of 'db1' changed to ONLINE. Now you can wait some time and check its new roles!
[root@mysql04 ~]# mmm_control show
? db1(10.0.60.100) master/ONLINE. Roles: reader(10.0.60.163)
? db2(10.0.60.101) master/ONLINE. Roles: reader(10.0.60.161), writer(10.0.60.160)
? db3(10.0.60.102) slave/ONLINE. Roles: reader(10.0.60.162)


檢查mysql01的slave狀態(tài):看上去正常的

mysql01>show slave status\G;
*************************** 1. row ***************************
? ? ? ? ? ? ? ?Slave_IO_State: Waiting for master to send event
? ? ? ? ? ? ? ? ? Master_Host: 10.0.60.101
? ? ? ? ? ? ? ? ? Master_User: repl
? ? ? ? ? ? ? ? ? Master_Port: 3306
? ? ? ? ? ? ? ? Connect_Retry: 10
? ? ? ? ? ? ? Master_Log_File: mysql02-bin.000015
? ? ? ? ? Read_Master_Log_Pos: 328
? ? ? ? ? ? ? ?Relay_Log_File: mysql01-relay.000027
? ? ? ? ? ? ? ? Relay_Log_Pos: 493
? ? ? ? Relay_Master_Log_File: mysql02-bin.000015
? ? ? ? ? ? ?Slave_IO_Running: Yes
? ? ? ? ? ? Slave_SQL_Running: Yes


但是在mysql02(當前active master)插入數(shù)據(jù),mysql01不能從mysql02同步:

mysql02> insert into t1 values(2);
Query OK, 1 row affected (0.02 sec)
mysql02>select * from t1;
+----+
| id |
+----+
| ?1 |
| ?2 |
+----+
2 rows in set (0.00 sec)


mysql03已經(jīng)同步了數(shù)據(jù):

mysql03>select * from t1;
+----+
| id |
+----+
| ?1 |
| ?2 |
+----+
2 rows in set (0.00 sec)


而mysql01沒有同步數(shù)據(jù):

mysql01>select * from t1;
+----+
| id |
+----+
| ?1 |
+----+
1 row in set (0.00 sec)


解決方法:先停止slave,然后啟動slave;

mysql01>stop slave;start slave;?
Query OK, 0 rows affected (0.00 sec)

Query OK, 0 rows affected (0.00 sec)

mysql01>select * from t1;
+----+
| id |
+----+
| ?1 |
| ?2 |
+----+
2 rows in set (0.00 sec)


截圖:


4、模擬slave線程故障,不管是io或sql線程故障,期望進行遷移,恢復時如果在flap_duration時間內(nèi)超過了flap_count次數(shù)的故障,將不會自動恢復,狀態(tài)由REPLICATION_FAIL改為 AWAITING_RECOVERY (because it's flapping)

當前active master為mysql02。

停止active master(mysql02)的slave,不會造成遷移:

mmm_mond的日志:已經(jīng)檢測到db2(mysql02)復制線程錯誤

2014/05/27 15:39:02 ERROR Check 'rep_threads' on 'db2' has failed for 10 seconds! Message: ERROR: Replication is broken


使用mmm_control查看狀態(tài):

[root@mysql04 ~]# mmm_control show
? db1(10.0.60.100) master/ONLINE. Roles: reader(10.0.60.161)
? db2(10.0.60.101) master/ONLINE. Roles: reader(10.0.60.162), writer(10.0.60.160)
? db3(10.0.60.102) slave/ONLINE. Roles: reader(10.0.60.163)


如果當其他slave(mysql01、mysql03)的線程(不管是io還是sql線程)故障將會發(fā)生遷移:

手工停止io線程:

mysql01>stop slave io_thread;
Query OK, 0 rows affected (0.01 sec)


查看mmm_mond日志:

2014/05/27 15:43:28 ERROR Check 'rep_threads' on 'db1' has failed for 10 seconds! Message: ERROR: Replication is broken
2014/05/27 15:43:31 FATAL State of host 'db1' changed from ONLINE to REPLICATION_FAIL
2014/05/27 15:43:31 ?INFO Removing all roles from host 'db1':
2014/05/27 15:43:31 ?INFO ? ? Removed role 'reader(10.0.60.161)' from host 'db1' ?#移除角色
2014/05/27 15:43:31 ?INFO Orphaned role 'reader(10.0.60.161)' has been assigned to 'db3'


使用mmm_control查看狀態(tài):

[root@mysql04 ~]# mmm_control show
? db1(10.0.60.100) master/REPLICATION_FAIL. Roles:?
? db2(10.0.60.101) master/ONLINE. Roles: reader(10.0.60.162), writer(10.0.60.160)
? db3(10.0.60.102) slave/ONLINE. Roles: reader(10.0.60.161), reader(10.0.60.163)


當重新開啟io線程后,mmm將自動恢復db1,并重新遷移read IP到db1(mysql01)上,如果故障超過:

重新開啟線程:

mysql01>start slave io_thread; ?
Query OK, 0 rows affected (0.00 sec)


查看mmm_mond日志:

2014/05/27 15:45:23 ?INFO Check 'rep_threads' on 'db1' is ok!
2014/05/27 15:45:25 FATAL State of host 'db1' changed from REPLICATION_FAIL to ONLINE
2014/05/27 15:45:25 ?INFO Moving role 'reader(10.0.60.163)' from host 'db3' to host 'db1'


使用mmm_control查看狀態(tài):

[root@mysql04 ~]# mmm_control show
? db1(10.0.60.100) master/ONLINE. Roles: reader(10.0.60.163)
? db2(10.0.60.101) master/ONLINE. Roles: reader(10.0.60.162), writer(10.0.60.160)
? db3(10.0.60.102) slave/ONLINE. Roles: reader(10.0.60.161)


5、復制延時

延時檢查有max_backlog控制,默認為60;

復制延時或錯誤,如果故障時間少于60s,狀態(tài)為ONLINE,單會遷移,故障恢復后,mmm自動恢復read IP。如果rep_backlog和rel_threads同時錯誤,狀態(tài)將為REPLICATION_FAIL。


6、mmm agent或monitor故障

不會遷移角色,如果此時有master或slave故障,也將不能遷移角色


參考:

MMM官網(wǎng):http://mysql-mmm.org/

MMM博客:http://blog.mysql-mmm.org/





來自為知筆記(Wiz)



轉(zhuǎn)載于:https://my.oschina.net/anthonyyau/blog/269800

總結(jié)

以上是生活随笔為你收集整理的MMM结合Semisync机制实现Mysql Master-Master高可用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

国产精品久久久免费看 | 久久男人中文字幕资源站 | 天堂久久电影网 | 亚洲永久在线 | 欧美韩日视频 | 亚洲国产精品成人女人久久 | 欧美日韩在线观看一区二区 | 五月激情站| 福利视频午夜 | 久久国产综合视频 | 操操操综合 | 亚洲欧美国内爽妇网 | 超碰999| 久久夜色精品国产欧美乱极品 | www.天天干 | 国精产品999国精产品视频 | 久久精品这里都是精品 | 在线观看免费福利 | 国产麻豆精品传媒av国产下载 | 天天夜夜亚洲 | 欧美久草视频 | 综合网色 | 99热超碰 | 中文字幕亚洲欧美日韩2019 | 狠狠色香婷婷久久亚洲精品 | 成人免费在线观看电影 | 国产午夜激情视频 | 久久都是精品 | 欧美最爽乱淫视频播放 | 国产亚洲精品久久久久久久久久久久 | 色射色 | 久久激情网站 | 精品在线免费视频 | 欧美激情视频一二区 | 九九热视频在线播放 | 亚洲精品字幕在线观看 | 99久久99久久精品国产片果冰 | 在线成人一区二区 | 超碰国产在线 | av网站大全免费 | 亚洲专区在线视频 | 亚洲区视频在线观看 | 四虎影视欧美 | 欧美日韩一级视频 | 麻豆传媒一区二区 | 国产黄色片久久久 | 色婷婷激情五月 | av专区在线 | 精品国产乱码久久久久久浪潮 | 最近免费观看的电影完整版 | 中文国产成人精品久久一 | av福利电影| 日韩黄在线观看 | 免费看黄在线看 | 免费看日韩片 | 天天操天天操一操 | 中文字幕色婷婷在线视频 | 最近免费在线观看 | 97国产在线视频 | 美女在线观看网站 | 国产精品久久久久久久久久久久冷 | 国产日韩高清在线 | 在线看日韩av | 一区二区精品久久 | 狠狠干夜夜| 色综合久久88色综合天天 | 91九色丨porny丨丰满6 | 亚洲区色 | 欧美日韩一级视频 | 精品久久久久久久久中文字幕 | 日韩免费在线一区 | 成人网中文字幕 | 九九激情视频 | 国产婷婷精品av在线 | 最近中文字幕国语免费高清6 | 亚洲人av免费网站 | 日本在线观看黄色 | 欧美乱码精品一区二区 | 国产精品免费观看视频 | 国产精品初高中精品久久 | 五月婷婷激情综合 | 久久久久综合网 | 国产亚洲综合在线 | 91成人免费在线视频 | 成人一区二区三区在线观看 | 久久婷婷国产色一区二区三区 | 天天天操天天天干 | 亚洲精品高清视频在线观看 | 福利一区二区在线 | www视频免费在线观看 | 日韩在线视频在线观看 | 国产高清视频免费最新在线 | 国产 日韩 在线 亚洲 字幕 中文 | 天天干天天插 | 久久99国产精品久久99 | av中文字幕av | 国内精品久久影院 | 97精品国产97久久久久久粉红 | 国产黄色理论片 | 粉嫩高清一区二区三区 | 欧美日韩视频在线一区 | 日本乱视频 | 国产精品免费在线播放 | 国产精彩视频一区二区 | 亚洲欧洲成人精品av97 | 91精品久久久久久久久 | 国产性天天综合网 | 激情久久伊人 | 97视频入口免费观看 | 92精品国产成人观看免费 | 在线观看免费av片 | 久久久午夜精品福利内容 | 婷婷丁香激情 | 天天操天天干天天操天天干 | 91在线看黄| 视频精品一区二区三区 | 国产精品久久久久久久久久不蜜月 | 久久99久久99免费视频 | 国产精品一区二区免费视频 | 午夜国产在线 | 在线免费黄 | 91丨九色丨国产在线 | 日韩三级视频在线观看 | 久久99精品久久久久久三级 | 狠狠操狠狠干2017 | 国产精品久久久久久久久费观看 | 欧美国产大片 | 国产麻豆精品一区 | 18做爰免费视频网站 | 国产午夜激情视频 | 在线播放 一区 | 中文在线字幕观看电影 | 天天摸天天舔 | 人成免费网站 | 精品国产免费看 | а中文在线天堂 | 国产资源在线免费观看 | 国产一区在线不卡 | 超碰97国产精品人人cao | av观看免费在线 | 国产亚洲成av人片在线观看桃 | 天堂av免费看 | 日韩a在线播放 | 91在线你懂的 | 色999视频 | 亚洲精品国产视频 | 国产不卡一区二区视频 | 美女免费视频网站 | 成人av一二三区 | 国产xx视频| 国产精品a成v人在线播放 | 91香蕉视频在线下载 | 久久久综合香蕉尹人综合网 | 2019免费中文字幕 | 国产精品久久久久久久久费观看 | 国产主播大尺度精品福利免费 | 精品久久久免费 | 97av在线视频 | 国产成人在线网站 | 国产99久久久精品视频 | 久久久91精品国产 | 国产精品 中文在线 | 久久国产精品久久国产精品 | 四虎影视www | 91手机在线看片 | 91av电影网| 欧美三级高清 | 色88久久 | 日日日视频 | 激情久久一区二区三区 | 精品欧美在线视频 | 日韩最新在线 | 青青射 | 国产一区二区在线播放 | 久久精品首页 | 精品久久免费 | 91精品国产成人观看 | 日韩精品黄 | 国产成人一区二区在线观看 | 国产黑丝袜在线 | 久久精品韩国 | 色综合久久中文字幕综合网 | 国产永久免费高清在线观看视频 | 九九九热视频 | 国产精品资源在线 | 色爱成人网 | 蜜臀av性久久久久蜜臀aⅴ涩爱 | 在线激情影院一区 | 亚洲精品自在在线观看 | 国产大片免费久久 | 最新av电影网址 | 日本不卡一区二区三区在线观看 | 黄色电影网站在线观看 | 国产69熟 | 精品在线免费视频 | 日韩av影片在线观看 | 久久网页| 久久精品一区二区三区国产主播 | 九九热精品视频在线播放 | 在线国产视频一区 | 在线亚州 | 久热只有精品 | 国产免费午夜 | 国产xxxx| 免费观看性生交 | 永久免费观看视频 | 国产高清av免费在线观看 | 日韩有码中文字幕在线 | 一区二区三区四区五区六区 | 国产日韩欧美精品在线观看 | 亚洲专区视频在线观看 | 五月婷婷影院 | 成片人卡1卡2卡3手机免费看 | 欧美黑人猛交 | 国产一线在线 | 欧美日韩高清不卡 | 日日操日日插 | 91专区在线观看 | 天天爽天天射 | 久久手机视频 | 久久综合久久鬼 | 天天爽夜夜爽人人爽曰av | 精品一区91 | 亚洲涩涩色 | 麻豆久久久久 | 中文永久免费观看 | 黄色tv视频 | 奇米网444| 国产精品21区 | 成人a免费 | 天天综合色 | 九九在线视频免费观看 | 少妇精品久久久一区二区免费 | 欧美国产日韩一区二区三区 | 国产精品99免视看9 国产精品毛片一区视频 | av免费片 | 国产999精品久久久久久麻豆 | 日韩性片| 成人在线视频免费看 | 欧美午夜久久久 | 欧美日韩精品二区第二页 | 91av原创| 亚洲黄色软件 | 国产高清精品在线观看 | av官网在线 | 国产精品99久久久久久大便 | 美女av电影| 国产污视频在线观看 | 欧美美女视频在线观看 | 手机色站 | 精品国产一区二区三区四区vr | 欧美日韩国产在线一区 | 五月婷久 | 久久久99精品免费观看app | 欧美午夜寂寞影院 | 九九九九精品 | 91丨九色丨91啦蝌蚪老版 | 婷婷久久婷婷 | 国产高清无线码2021 | 超级碰碰碰碰 | 中文字幕成人 | 免费的国产精品 | 99久久精品午夜一区二区小说 | 一区av在线播放 | 天天爽天天碰狠狠添 | 国产直播av | 日韩在线视 | 精品久久综合 | 欧美尹人 | 亚洲成人精品久久 | 欧美日韩久久不卡 | 91字幕| 在线精品亚洲一区二区 | av中文在线观看 | 精品久久毛片 | 一区久久久 | 欧美大片在线观看一区 | 亚洲国产中文字幕在线观看 | 亚洲春色奇米影视 | 久久综合桃花 | 色香蕉视频 | 久久久久亚洲国产精品 | 国产一级二级三级在线观看 | 99在线精品观看 | 豆豆色资源网xfplay | 免费观看久久 | 国产偷国产偷亚洲清高 | 三级性生活视频 | 亚洲夜夜爽 | 丁香婷婷社区 | 一级免费黄色 | 久久尤物电影视频在线观看 | 成年人免费在线观看网站 | 久草手机视频 | 欧美色图另类 | www日韩在线 | 欧美日韩免费在线视频 | 色吊丝在线永久观看最新版本 | 欧美综合在线视频 | 丁香五婷 | 久久久免费电影 | 天天色天天草天天射 | 中文字幕一区二区三区在线视频 | 一区中文字幕 | 四虎免费在线观看视频 | 在线小视频 | 中文字幕在线看片 | 99久久久国产精品美女 | 日本中文字幕网址 | 8x成人免费视频 | 精品国产aⅴ一区二区三区 在线直播av | 国产一级片免费播放 | 99在线观看视频网站 | 最近中文字幕国语免费高清6 | 国产不卡视频在线播放 | 国产在线 一区二区三区 | 国产精品女 | 毛片基地黄久久久久久天堂 | 99久久婷婷国产综合亚洲 | 又黄又爽又刺激视频 | 国内精品在线一区 | 开心激情婷婷 | 婷婷国产视频 | 欧美性粗大hdvideo | 深爱激情开心 | 人人爽人人爱 | 日本激情视频中文字幕 | 97精品国产91久久久久久 | 日韩va欧美va亚洲va久久 | 国产小视频在线看 | 97超碰人 | 国内视频在线 | 人人人爽 | 成年人app网址 | av丝袜天堂| 亚洲女欲精品久久久久久久18 | 综合天堂av久久久久久久 | av一区二区在线观看中文字幕 | 91亚洲精品乱码久久久久久蜜桃 | 日韩精品一区二区三区丰满 | 免费在线精品视频 | 成人黄色小视频 | 久久久九色精品国产一区二区三区 | 在线影视 一区 二区 三区 | 欧美精品久久天天躁 | 久久av不卡 | 日韩有码欧美 | 日本精品视频在线 | 九九色在线观看 | 免费能看的av | 99久久99久久 | 久久精品免视看 | 婷婷色av| 特黄特色特刺激视频免费播放 | av片中文 | 久久国产精品99久久久久久进口 | 成 人 黄 色 视频播放1 | 国产精品国产三级国产aⅴ入口 | 久草在线免费资源站 | 中文字幕观看av | 国产视频观看 | 亚洲一区美女视频在线观看免费 | 黄色中文字幕在线 | a天堂一码二码专区 | 探花系列在线 | 伊人资源站 | 久久热首页 | 国产一区二区精品91 | 亚洲激情五月 | 国产91亚洲精品 | 深爱激情站 | 六月激情网 | 国产精品丝袜 | 免费黄av| 91在线91拍拍在线91 | 日韩成人在线一区二区 | 夜色资源站国产www在线视频 | 天天操天天干天天摸 | 成人免费在线视频观看 | av在线播放快速免费阴 | 九九热.com | 日韩精品在线免费播放 | 久艹视频在线免费观看 | 开心色激情网 | 天天爱天天舔 | 亚洲影院一区 | 国产综合精品一区二区三区 | 亚洲高清久久久 | 91精品电影 | 97超级碰碰碰视频在线观看 | 日日操天天操夜夜操 | 久久久久免费网 | 日韩毛片久久久 | 亚洲午夜久久久久久久久久久 | 免费的国产精品 | 天堂在线一区二区三区 | 韩国精品一区二区三区六区色诱 | 91豆麻精品91久久久久久 | 国产成人久久精品77777 | 久久久久久久久免费 | 在线免费黄色av | 中文字幕久久久精品 | 蜜臀久久99精品久久久无需会员 | 精品亚洲免费 | 欧美成人中文字幕 | 99久久久久久久 | 91最新在线 | 伊人久久婷婷 | 五月天堂色 | 香蕉久久久久久av成人 | 亚洲一区久久久 | 久久国产免费看 | 国产精品一区欧美 | 国产成人三级一区二区在线观看一 | 在线看v片成人 | 在线观看国产一区二区 | 日韩在线观看中文字幕 | av在线精品 | 91中文在线观看 | 女人18毛片90分钟 | 97涩涩视频| 久久视了 | 黄色影院在线播放 | 久久五月天婷婷 | 婷婷久久国产 | 日韩精品一区二区三区丰满 | 九月婷婷人人澡人人添人人爽 | 日韩精品久久久免费观看夜色 | 操操操com| 欧美精品一区二区在线观看 | av电影在线观看完整版一区二区 | 国产亚洲高清视频 | 亚洲精品国产精品国产 | 国产精品一区二区久久久 | 一区二区丝袜 | 久久一区精品 | 97精品一区二区三区 | 波多野结衣电影久久 | 国产最新网站 | 国产精品理论视频 | 91视频在线观看大全 | 欧美国产亚洲精品久久久8v | 国产剧在线观看片 | 国产五月 | 免费精品在线 | 国产一区精品在线观看 | 少妇bbbb搡bbbb桶| 久久精品2 | 久久久久国产a免费观看rela | 久久涩涩网站 | 亚洲理论电影 | 天天干天天操天天干 | avove黑丝| 97色婷婷成人综合在线观看 | 在线午夜电影神马影院 | 久久爱综合 | 丝袜一区在线 | 久久久久国产一区二区 | 久久不见久久见免费影院 | 国产成人精品不卡 | 婷婷久月 | 久久高清精品 | 狠狠的干狠狠的操 | 伊人狠狠操 | 亚洲片在线| av福利超碰网站 | 国产美女久久 | 天天操夜夜曰 | 91精品导航 | 亚洲欧美日韩国产精品一区午夜 | 字幕网av | 免费h漫在线观看 | 97超碰中文字幕 | 久久激情婷婷 | 国产成人一二三 | 日韩一区二区三区免费视频 | 久久人人爽人人片 | 亚洲区色 | 免费观看性生活大片3 | 亚洲一区视频在线播放 | 91精品网站| 91九色porn在线资源 | 亚洲婷婷丁香 | 日韩久久久久久久久久久久 | 久久久久久欧美二区电影网 | 人交video另类hd | 亚洲爱av | 不卡电影一区二区三区 | 久久久久久久久久免费视频 | 日韩精品一区二区三区电影 | www.超碰 | 亚洲国产人午在线一二区 | 欧洲精品视频一区二区 | 久久久久这里只有精品 | 超级碰碰碰碰 | 婷久久 | 日韩精品久久久久久久电影竹菊 | 久久久麻豆精品一区二区 | 一级黄色在线视频 | 久久久久高清 | va视频在线 | 麻豆久久 | 久久综合五月 | 久久久午夜视频 | 午夜精品影院 | 国产精品va在线观看入 | 亚洲三区在线 | 久久精品99北条麻妃 | 97成人资源 | 精品二区久久 | 成人影音av| 亚洲国产成人精品电影在线观看 | 色吊丝在线永久观看最新版本 | 国产在线理论片 | 久久综合综合久久综合 | 精品国产日本 | 国产精品乱码高清在线看 | 久久热亚洲| 欧美日韩久久不卡 | 91精彩在线视频 | 国产高清区 | 日韩中文幕 | 久久久久久蜜av免费网站 | 国产一区在线视频观看 | 日韩一区精品 | 久草在线这里只有精品 | 国产在线观看二区 | 国产成人精品一区二区三区在线观看 | 日韩精品视频第一页 | 精品一区在线看 | 欧美精品乱码久久久久久按摩 | 国产无套视频 | 久久成人免费 | 亚洲精品在线国产 | 欧美精品在线一区 | 日韩欧美一级二级 | 国产午夜三级一区二区三桃花影视 | 国产97色 | 欧美色精品天天在线观看视频 | 午夜精品一区二区国产 | 中文字幕免费观看视频 | 一本一道久久a久久精品蜜桃 | 国产一级电影免费观看 | 高清av影院| 色综合久久综合中文综合网 | 黄色的视频 | 欧美日韩中文字幕综合视频 | 人人插人人射 | 伊人午夜 | 99视| 久久精品老司机 | 日韩综合视频在线观看 | 人人草人人草 | 国产午夜在线观看 | 久久伊人综合 | 九色视频自拍 | 一区二区成人国产精品 | www.成人久久 | 欧美激情第八页 | 色插综合 | 亚洲欧洲中文日韩久久av乱码 | 国产亚洲欧美精品久久久久久 | av免费片| 91亚洲精品久久久 | 日韩av电影中文字幕在线观看 | 欧美不卡视频在线 | 日韩中文字幕国产 | 黄网站免费大全入口 | 久久99国产精品 | 日韩精品一区二区三区中文字幕 | 成人免费av电影 | 九九热精品国产 | 日韩专区中文字幕 | 天天艹日日干 | 中文字幕成人在线观看 | 婷婷色伊人 | 97操操| 国产在线观看一区 | 欧美成人h版 | 欧美一级免费片 | 午夜电影久久久 | 成人欧美一区二区三区在线观看 | 久久精品理论 | 国内视频1区 | 色婷婷综合成人av | av网址在线播放 | 国产一区二区三精品久久久无广告 | 免费观看性生活大片3 | 麻豆精品国产传媒 | 久久免费视频网站 | 黄色免费网战 | 日韩精品一区电影 | 日韩美女一级片 | 天天操狠狠操夜夜操 | 91视频久久久久 | 日韩av黄 | 91人网站 | 麻豆果冻剧传媒在线播放 | 国产精品va在线播放 | 日韩毛片在线免费观看 | 国产精品永久免费观看 | 又爽又黄在线观看 | 九色91在线 | 中文字幕一区二区三区在线观看 | 久草在线视频在线 | 日本三级大片 | 婷婷丁香激情综合 | 国产做爰视频 | 国产亚洲精品久久久久久无几年桃 | 国内精品久久久久久中文字幕 | 国内精品免费久久影院 | 天天综合网久久综合网 | 久久久久国产精品免费网站 | 国产精品久久久久久久久久久久 | 婷婷在线免费视频 | 深爱激情婷婷网 | 亚洲一级黄色大片 | 96香蕉视频 | 日韩黄色免费在线观看 | 中文字幕av在线 | 狠狠干夜夜操 | 99久久精品国产系列 | 最近高清中文在线字幕在线观看 | 97超碰人人爱| 在线精品视频免费播放 | 一区二区精品视频 | 黄色一区三区 | 西西4444www大胆无视频 | 热久久精品在线 | 99免费看片 | 一区二区三区四区五区在线 | www免费黄色| 亚洲精品理论 | 国产在线不卡 | 人人添人人 | 天天人人 | 久久综合婷婷国产二区高清 | 一级久久久| 国产精品丝袜在线 | 久久黄视频| 996久久国产精品线观看 | 中日韩免费视频 | 国产精品爽爽久久久久久蜜臀 | 91av社区| 欧美电影在线观看 | 丁香九月婷婷 | 精品视频久久 | 国产免费观看高清完整版 | 超碰午夜| 美女网站视频免费都是黄 | 日韩成人精品一区二区三区 | 久久高清片 | 国产最新在线观看 | 五月天综合色 | 91资源在线视频 | 国产精品一码二码三码在线 | 婷婷在线免费 | 亚洲精区二区三区四区麻豆 | 91高清完整版在线观看 | 亚洲天堂网站 | 欧美成人xxxx | 久久久久99精品成人片三人毛片 | 97精品国产91久久久久久 | 亚洲精品麻豆 | 亚洲涩涩涩 | 免费成人黄色av | 色播六月天 | 特级黄色片免费看 | 亚洲资源在线网 | 91福利小视频| 欧美午夜剧场 | 中文字幕久久亚洲 | 久久观看最新视频 | 国产午夜一级毛片 | 91福利区一区二区三区 | 国产精品麻豆果冻传媒在线播放 | 日韩精品视频免费专区在线播放 | 免费看毛片网站 | 一级免费观看 | 久久精品日产第一区二区三区乱码 | 国产精品久久久久免费 | 精品久久一区 | 九九免费视频 | 久久激五月天综合精品 | 蜜臀久久99精品久久久无需会员 | zzijzzij日本成熟少妇 | 成年人免费在线观看网站 | 美女视频免费精品 | 最新的av网站 | www久久精品 | 最新av网址大全 | 久久国产成人午夜av影院潦草 | 精品综合久久 | 国产精品手机播放 | 97色在线观看 | 免费电影一区二区三区 | 日日夜夜网 | 香蕉久草| 天天狠狠 | 欧美日韩国产页 | 美女视频黄免费网站 | 国产精品va在线播放 | 国产小视频在线免费观看 | www.888.av| 在线免费色视频 | 亚洲视频www | 不卡av在线 | 亚洲国产精品999 | 亚洲视频,欧洲视频 | 婷婷色在线资源 | 四季av综合网站 | 97视频在线观看播放 | 99视频在线观看免费 | 亚洲国产成人精品在线观看 | 91精品国产乱码在线观看 | 国产精品久久久久久久99 | 久久伦理电影网 | 亚洲激情电影在线 | 大胆欧美gogo免费视频一二区 | 草莓视频在线观看免费观看 | 在线看毛片网站 | 国内久久久久久 | 天天天综合 | 91传媒在线 | 99精品视频在线 | 国产色在线观看 | 伊人伊成久久人综合网小说 | 国产精品99蜜臀久久不卡二区 | 亚洲尺码电影av久久 | 青青草在久久免费久久免费 | 一区二区三区福利 | 日韩欧美在线综合网 | 91精品国产99久久久久久久 | 久久精品一区二区三区视频 | 99成人免费视频 | 欧美大片www | 国产高清在线一区 | 一级全黄毛片 | 久久亚洲成人网 | 99精品国产一区二区三区不卡 | 高清日韩一区二区 | 日韩在线理论 | 色吊丝在线永久观看最新版本 | 精品久操 | 亚洲国产中文在线 | 97视频成人 | 久艹在线免费观看 | 性色av免费在线观看 | 亚洲三级网站 | 日韩精品在线看 | 久99久在线视频 | 久在线观看 | 亚洲精品在线观 | 91社区国产高清 | 国产精品久久久久久久久久三级 | 欧美 日韩 国产 成人 在线 | 一本一道波多野毛片中文在线 | 国产成人av网站 | 天天天天色射综合 | 久久网站av | 婷婷丁香av| 精品毛片久久久久久 | 久久久久久久久久影视 | 少妇bbbb搡bbbb桶 | 在线观看视频你懂的 | 久草视频在线看 | 国产精品精品久久久 | 免费看黄电影 | 亚洲人成免费网站 | 久久这里只有精品视频99 | 九九在线高清精品视频 | 日韩精品久久一区二区三区 | 97成人在线视频 | 久久精品电影网 | 亚洲天堂网站视频 | 久久久久久久国产精品 | 蜜臀久久99精品久久久无需会员 | 亚洲伦理一区 | 99热超碰在线 | 精品91在线 | 国产色在线视频 | 国产亚洲精品女人久久久久久 | 久久免费播放视频 | 亚洲黄色免费网站 | 亚洲国产精品免费 | 国产精品免费一区二区三区 | 国产精品久久久久久久久久直播 | 五月婷婷色播 | 色综合天天做天天爱 | 久久精选视频 | 国产精品永久免费视频 | 精品国产综合区久久久久久 | 99精品在线免费视频 | 日韩精品专区在线影院重磅 | 亚洲aⅴ在线观看 | 色网站中文字幕 | 国产欧美日韩一区 | 在线观看视频你懂的 | 国产91对白在线 | 天堂网av在线 | 五月婷在线观看 | 手机在线永久免费观看av片 | 天天色天天上天天操 | 高清国产午夜精品久久久久久 | 国产免费美女 | 久久精品系列 | 91精品国产综合久久久久久久 | 最近日韩中文字幕中文 | 六月丁香婷婷网 | 久久涩涩网站 | 国产精品不卡一区 | 99电影456麻豆 | 国产精品视频地址 | 在线精品视频免费播放 | 一级精品视频在线观看宜春院 | 午夜视频免费在线观看 | 精品免费一区二区三区 | 亚洲精品在线免费观看视频 | 午夜视频在线观看网站 | av官网在线 | 在线观看免费观看在线91 | 天天综合中文 | 久久久久北条麻妃免费看 | 免费视频色| wwwww.国产| 国产视频精品视频 | 日韩v欧美v日本v亚洲v国产v | www.国产在线视频 | 国内精品久久久久影院日本资源 | www.香蕉 | 99在线精品免费视频九九视 | 久久欧美精品 | 91av中文字幕 | 欧美精品日韩 | 精品免费在线视频 | 色天天天| 91麻豆精品国产91久久久无需广告 | 中文字幕免费高清在线 | 人人爱爱人人 | 在线观看一区二区视频 | 日本精品久久久久久 | 在线观看亚洲免费视频 | 天天操天天拍 | 国产精品人成电影在线观看 | 亚洲国内精品在线 | 97色se| 五月婷婷丁香网 | 久久久久久久久久久国产精品 | 337p日本大胆噜噜噜噜 | 欧美精品亚洲精品 | 国产高清不卡 | 国产精品久久久久久模特 | 久久精品亚洲精品国产欧美 | 中文字幕日韩精品有码视频 | 久久免费视频这里只有精品 | 亚洲永久精品视频 | 国产免费观看高清完整版 | 蜜臀av免费一区二区三区 | 伊人宗合网 | 天天操天天色天天 | 奇米导航 | 中文字幕av在线不卡 | 四虎永久精品在线 | av在线电影播放 | 国产人免费人成免费视频 | 99久久精品国产一区 | 美女久久 | 91在线精品秘密一区二区 | 国产精品一区二区在线播放 | 91精品麻豆 | 国产一二区视频 | 青青河边草免费直播 | 99久久国产免费,99久久国产免费大片 | 日本精品一区二区 | 免费网站色| 五月天开心 | 麻豆国产精品一区二区三区 | 青草视频在线 | 天天草天天干天天 | 国产精品久久久av久久久 | 久久这里 | a成人v| 九色91在线视频 | 91黄站| 国产伦理精品一区二区 | 欧美一区日韩精品 | 91视频链接 | 色国产精品 | 成年人国产精品 | 99久久超碰中文字幕伊人 | 夜夜骑日日 | 粉嫩av一区二区三区免费 | 久久综合毛片 | av免费高清观看 | 亚洲精品中文在线观看 | 91丨九色丨国产在线观看 | 伊人宗合网 | www,黄视频 | 久久精品这里都是精品 | 中文字幕av影院 | 亚洲 欧美日韩 国产 中文 | 精品免费观看 | 国产精品高潮呻吟久久av无 | 9999在线视频 | 黄色毛片在线观看 | 18性欧美xxxⅹ性满足 | 精品中文字幕在线观看 | 成人午夜电影在线 | 日韩一级黄色av | 国产视频在线观看一区二区 | 不卡视频一区二区三区 | 国产韩国日本高清视频 | 69国产精品视频免费观看 | 麻豆一二三精选视频 | 亚洲欧洲在线视频 | 国产麻豆剧传媒免费观看 | 91精品免费看 | 天天色欧美 | 日韩视频图片 | 精品国产一区二区三区久久影院 | 超碰99在线 | 超碰99人人 | 亚洲播放一区 | 国产精品资源在线观看 | 日韩有码欧美 | 日韩v在线91成人自拍 | 日本中文字幕系列 | 久久久久久久久久久久亚洲 | 蜜臀av在线一区二区三区 | 五月婷婷丁香在线观看 | 免费黄色激情视频 | 国产精品 日韩 | 成人一区在线观看 | 亚洲 欧美日韩 国产 中文 | 久久免费视频国产 | 亚洲黄色在线免费观看 | 中文字幕 91| 91在线小视频 | 国产成人一区在线 | 999久久久免费视频 午夜国产在线观看 | 成人在线观看av | 激情综合网五月激情 | 久热爱| 国产精品久久一区二区三区, | 久久久久久久久久久高潮一区二区 | 色欧美视频 | 久久艹艹| 色综合国产 | 久久久久久久久久免费视频 | 九九热免费精品视频 | 天天综合成人网 | 久久精品99久久久久久 | 国产亚洲精品综合一区91 | 久久综合狠狠综合久久综合88 | 国产精彩在线视频 | av官网在线 | 日韩高清精品一区二区 | 日韩网 | 久草在线电影网 | 日韩资源在线播放 | 中文字幕一区三区 | 精品国产亚洲一区二区麻豆 | 在线播放av网址 | 黄色电影在线免费观看 | 在线观看视频黄色 | 中文字幕一区二区三区精华液 | 超碰在线国产 | 麻豆视频观看 | 91自拍视频在线观看 | 国产精品视频地址 | 网站免费黄色 | 中文字幕在线乱 | 亚洲免费成人 | 国产高清视频 | 久久综合九色综合97_ 久久久 | 麻豆传媒视频在线免费观看 | 天躁狠狠躁 | 日本视频高清 | 久操视频在线观看 | 午夜在线观看影院 | 亚洲免费av一区二区 | 日韩系列在线观看 | 久久国产麻豆 | 国产精品久久久久aaaa九色 | 四虎成人精品永久免费av九九 | 这里只有精品视频在线观看 | 欧美日韩久久 | 在线视频1卡二卡三卡 | 午夜视频在线观看一区二区三区 | 欧美日韩高清在线一区 | 成人在线免费观看网站 | 一区二区三区日韩精品 | 国产麻豆果冻传媒在线观看 | 99久精品视频 | 免费色视频网址 | 91.dizhi永久地址最新 | av在线播放免费 | 国产一区久久久 |