青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Fork me on GitHub
隨筆 - 215  文章 - 13  trackbacks - 0
<2025年11月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456


專注即時通訊及網游服務端編程
------------------------------------
Openresty 官方模塊
Openresty 標準模塊(Opm)
Openresty 三方模塊
------------------------------------
本博收藏大部分文章為轉載,并在文章開頭給出了原文出處,如有再轉,敬請保留相關信息,這是大家對原創作者勞動成果的自覺尊重!!如為您帶來不便,請于本博下留言,謝謝配合。

常用鏈接

留言簿(1)

隨筆分類

隨筆檔案

相冊

Awesome

Blog

Book

GitHub

Link

搜索

  •  

積分與排名

  • 積分 - 220944
  • 排名 - 117

最新評論

閱讀排行榜

http://blog.csdn.net/benxiaohai529/article/details/52848414

前言

前些天一直在忙線上環境部署的事情,初步想的是,nginx(keepalive雙機熱備)+3(tomcat)+2redis(雙機熱備),但是后來由于阿里云服務器經典網絡不提供虛擬IP,無法使用keepalive,nginx雙機熱備只能暫時先放棄,退而求其次,采用nginx+3tomcat+2redis(雙機熱備)。nginx+tomcat由于之前配置過,所以重點就落在Redis雙機熱備上,畢竟是線上系統,適當的抗災能力還是需要的,咱可不能像測試系統那么去玩,否則黑鍋就有的背了,畢竟碼代碼賺點生活費也不容易。

在網上也查了一些資料,redis集群實現大概有以下幾種方式:

1.redis-cluster,官方提供的集群搭建方案(過于重量級,比較適合后期數據量較大的時候的使用)

2.redis+keepalive(由于我們使用的阿里云服務器不支持虛擬IP,所以這套方案也就夭折了)

3.redis+zookeeper(需要引入zookeeper,對現有代碼變動較大)

4.redis+sentinel(redis自帶監控中間件)(代碼變動小,配置少,而且能滿足雙機熱備的需求)

基于我們目前的情況以及需求,經過初略對比,我們團隊決定選用第四種方案redis+sentinel實現雙機熱備。

準備工作

1.安裝redis-001(主)

$ wget http://download.redis.io/releases/redis-3.2.3.tar.gz $ tar xzf redis-3.2.3.tar.gz $ mv redis-3.2.3 redis-001 $ cd redis-001 $ make

2.安裝redis-002(從)

$ wget http://download.redis.io/releases/redis-3.2.3.tar.gz $ tar xzf redis-3.2.3.tar.gz $ mv redis-3.2.3 redis-002 $ cd redis-002 $ make

3.修改redis-002端口為6380

$ cd /usr/tools/redis-002/ $ vim redis.conf ...找到port 6379改為6380...

4.修改redis默認配置

a.關閉ip綁定,注釋redis.conf中bind 127.0.0.1

b.關閉保護模式,將protected-mode yes改為protected-mode no

5.啟動redis-001,redis-002

$ cd tools/redis-001/ $ ./src/redis-server redis.conf

出現以下信息就表示啟動成功了:

12513:M 09 Oct 11:15:49.061 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect. 12513:M 09 Oct 11:15:49.061 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled. 12513:M 09 Oct 11:15:49.061 * DB loaded from disk: 0.000 seconds 12513:M 09 Oct 11:15:49.061 * The server is now ready to accept connections on port 6379 

redis主從復制

1.redis 復制的特點

    1). 同一個Master可以同步多個Slaves。
    2). Slave同樣可以接受其它Slaves的連接和同步請求,這樣可以有效的分載Master的同步壓力。因此我們可以將Redis的Replication架構視為圖結構。
    3). Master Server是以非阻塞的方式為Slaves提供服務。所以在Master-Slave同步期間,客戶端仍然可以提交查詢或修改請求。
    4). Slave Server同樣是以非阻塞的方式完成數據同步。在同步期間,如果有客戶端提交查詢請求,Redis則返回同步之前的數據。
    5). 為了分載Master的讀操作壓力,Slave服務器可以為客戶端提供只讀操作的服務,寫服務仍然必須由Master來完成。即便如此,系統的伸縮性還是得到了很大的提高。
    6). Master可以將數據保存操作交給Slaves完成,從而避免了在Master中要有獨立的進程來完成此操作。

2.redis復制原理

    在Slave啟動并連接到Master之后,它將主動發送一個SYNC命令。此后Master將啟動后臺存盤進程,同時收集所有接收到的用于修改數據集的命令,在后臺進程執行完畢后,Master將傳送整個數據庫文件到Slave,以完成一次完全同步。而Slave服務器在接收到數據庫文件數據之后將其存盤并加載到內存中。此后,Master繼續將所有已經收集到的修改命令,和新的修改命令依次傳送給Slaves,Slave將在本次執行這些數據修改命令,從而達到最終的數據同步。
    如果Master和Slave之間的鏈接出現斷連現象,Slave可以自動重連Master,但是在連接成功之后,一次完全同步將被自動執行。

3.redis主從配置

前面也說了,redis主從配置很簡單,只需要一個slaveof就可以搞定。

連接redis-002,執行slaveof 192.168.231.130 6379:

C:\Users\lenovo\Desktop\redis>D: D:\>cd D:\Program Files\Redis-x64-3.0.5 D:\Program Files\Redis-x64-3.0.5>redis-cli.exe -h 192.168.231.130 -p 6380 192.168.231.130:6380> slaveof 192.168.231.130 6379 OK 192.168.231.130:6380>

執行完成后,可以看到服務器上redis-001控制臺輸出以下內容:

12513:M 09 Oct 11:15:49.061 * DB loaded from disk: 0.000 seconds 12513:M 09 Oct 11:15:49.061 * The server is now ready to accept connections on port 6379 12513:M 09 Oct 11:41:59.371 * Slave 192.168.231.130:6380 asks for synchronization 12513:M 09 Oct 11:41:59.371 * Full resync requested by slave 192.168.231.130:6380 12513:M 09 Oct 11:41:59.371 * Starting BGSAVE for SYNC with target: disk 12513:M 09 Oct 11:41:59.372 * Background saving started by pid 13673 13673:C 09 Oct 11:41:59.388 * DB saved on disk 13673:C 09 Oct 11:41:59.388 * RDB: 6 MB of memory used by copy-on-write 12513:M 09 Oct 11:41:59.462 * Background saving terminated with success 12513:M 09 Oct 11:41:59.462 * Synchronization with slave 192.168.231.130:6380 succeeded

redis-002控制臺輸出:

13581:S 09 Oct 11:41:59.361 * Connecting to MASTER 192.168.231.130:6379 13581:S 09 Oct 11:41:59.370 * MASTER <-> SLAVE sync started 13581:S 09 Oct 11:41:59.370 * Non blocking connect for SYNC fired the event. 13581:S 09 Oct 11:41:59.371 * Master replied to PING, replication can continue... 13581:S 09 Oct 11:41:59.371 * Partial resynchronization not possible (no cached master) 13581:S 09 Oct 11:41:59.374 * Full resync from master: e2f4e2608956ea6392482c2e0a9429efdebd2b53:1 13581:S 09 Oct 11:41:59.462 * MASTER <-> SLAVE sync: receiving 76 bytes from master 13581:S 09 Oct 11:41:59.463 * MASTER <-> SLAVE sync: Flushing old data 13581:S 09 Oct 11:41:59.463 * MASTER <-> SLAVE sync: Loading DB in memory 13581:S 09 Oct 11:41:59.463 * MASTER <-> SLAVE sync: Finished with success 

但是這樣做的話,重啟redis-002后又會復原,所以通常我們會直接修改redis-002配置文件redis.conf,在末尾加上slaveof 192.168.231.130 6379部分,就永久有效了。

現在我們往redis-001中寫入數據,就可以從redis-002中查詢出來了,我們來測試一下,往redis-001中寫入key為name,value為osc的數據。

192.168.231.130:6379> set name osc OK 192.168.231.130:6379> keys * 1) "name" 192.168.231.130:6379>

查詢redis-002中的數據,會發現同樣存在name的key,并且值為osc 

192.168.231.130:6380> keys * 1) "name" 192.168.231.130:6380> get name "osc" 192.168.231.130:6380>

到目前為止,redis主從復制已經配置成功了,接下來就要開始重點工作,配置雙機熱備。

redis+sentinel雙機熱備

1.理論概念

    雙機熱備特指基于高可用系統中的兩臺服務器的熱備(或高可用),因兩機高可用在國內使用較多,故得名雙機熱備,雙機高可用按工作中的切換方式分為:主-備方式(Active-Standby方式)和雙主機方式(Active-Active方式),主-備方式即指的是一臺服務器處于某種業務的激活狀態(即Active狀態),另一臺服務器處于該業務的備用狀態(即Standby狀態)。而雙主機方式即指兩種不同業務分別在兩臺服務器上互為主備狀態(即Active-Standby和Standby-Active狀態)。

大白話就是,當主服務器掛了之后,從服務器立馬切換為主服務器繼續工作,當原先主服務器修復完善啟動后,會自動充當從服務器的角色繼續工作。這樣就很好的避免了,由于一臺主機出現故障,系統掛點的現象出現。

Sentinel(哨兵)是用于監控redis集群中Master狀態的工具,已經集成在redis官方版本中,可以直接配置使用。

2.Sentinel命令

       PING :返回 PONG 。
       SENTINEL masters :列出所有被監視的主服務器,以及這些主服務器的當前狀態;
       SENTINEL slaves <master name> :列出給定主服務器的所有從服務器,以及這些從服務器的當前狀態;
       SENTINEL get-master-addr-by-name <master name> : 返回給定名字的主服務器的 IP 地址和端口號。 如果這個主服務器正在執行故障轉移操作, 或者針對這個主服務器的故障轉移操作已經完成, 那么這個命令返回新的主服務器的 IP 地址和端口號;
       SENTINEL reset <pattern> : 重置所有名字和給定模式 pattern 相匹配的主服務器。 pattern 參數是一個 Glob 風格的模式。 重置操作清楚主服務器目前的所有狀態, 包括正在執行中的故障轉移, 并移除目前已經發現和關聯的, 主服務器的所有從服務器和 Sentinel ;
       SENTINEL failover <master name> : 當主服務器失效時, 在不詢問其他 Sentinel 意見的情況下, 強制開始一次自動故障遷移。

客戶端可以通過SENTINEL get-master-addr-by-name <master name>獲取當前的主服務器IP地址和端口號,以及SENTINEL slaves <master name>獲取所有的Slaves信息

3.雙機熱備配置

a.關閉redis-001與redis-002

b.在redis-001和redis-002配置sentinel.conf中加上以下配置信息:

sentinel monitor mymaster 192.168.231.130 6379 1

c.修改redis-002 sentinel.conf監聽端口:

$ cd /usr/tools/redis-002/ $ vim sentinel.conf ...找到port 26379改為26380... port 26380

d.分別啟動redis-001(主)與redis-002(從),redis 服務和sentinel服務

​$ cd /usr/tools/redis-002/ $ ./src/redis-server redis.conf $ ./src/redis-sentinel sentinel.conf
​$ cd /usr/tools/redis-001/ $ ./src/redis-server redis.conf $ ./src/redis-sentinel sentinel.conf

此時在主從redis,sentinel控制臺會出現以下信息:

14677:X 09 Oct 14:04:49.633 # Sentinel ID is 7b8fdc1e5e47426b0d62a3ddd22ede0fd712f452 14677:X 09 Oct 14:04:49.633 # +monitor master mymaster 192.168.231.130 6379 quorum 1 14677:X 09 Oct 14:04:49.634 * +slave slave 192.168.231.130:6380 192.168.231.130 6380 @ mymaster 192.168.231.130 6379 14677:X 09 Oct 14:05:53.727 * +sentinel sentinel 31e660153984b606951c564395bdc8e193943f0b 192.168.231.130 26380 @ mymaster 192.168.231.130 6379

e.測試結果:

連接主服務器sentinel,注意端口是sentinel.conf中配置的端口。

根據前面描述的sentinel命令查詢主服務器信息:

192.168.231.130:26379> SENTINEL masters 1)  1) "name"     2) "mymaster"     3) "ip"     4) "192.168.231.130"     5) "port"     6) "6379"     7) "runid"     8) "fafb94fe9bff119e8a97f9183e3bcb5561933631"     9) "flags"    10) "master"    11) "link-pending-commands"    12) "0"    13) "link-refcount"    14) "1"    15) "last-ping-sent"    16) "0"    17) "last-ok-ping-reply"    18) "671"    19) "last-ping-reply"    20) "671"    21) "down-after-milliseconds"    22) "10000"    23) "info-refresh"    24) "4904"    25) "role-reported"    26) "master"    27) "role-reported-time"    28) "205675"    29) "config-epoch"    30) "0"    31) "num-slaves"    32) "1"    33) "num-other-sentinels"    34) "1"    35) "quorum"    36) "1"    37) "failover-timeout"    38) "180000"    39) "parallel-syncs"    40) "1" 192.168.231.130:26379>

查詢從服務器信息:

192.168.231.130:26379> SENTINEL slaves mymaster 1)  1) "name"     2) "192.168.231.130:6380"     3) "ip"     4) "192.168.231.130"     5) "port"     6) "6380"     7) "runid"     8) "feabcfa65e69778e877ca0bd95adb9d642f6522f"     9) "flags"    10) "slave"    11) "link-pending-commands"    12) "0"    13) "link-refcount"    14) "1"    15) "last-ping-sent"    16) "0"    17) "last-ok-ping-reply"    18) "928"    19) "last-ping-reply"    20) "928"    21) "down-after-milliseconds"    22) "10000"    23) "info-refresh"    24) "7332"    25) "role-reported"    26) "slave"    27) "role-reported-time"    28) "388802"    29) "master-link-down-time"    30) "0"    31) "master-link-status"    32) "ok"    33) "master-host"    34) "192.168.231.130"    35) "master-port"    36) "6379"    37) "slave-priority"    38) "100"    39) "slave-repl-offset"    40) "472844" 192.168.231.130:26379>

現在,我們來關閉端口為6379主redis-001服務器,看看會出現什么情況,此時redis-002控制臺會出現以下信息:

14735:S 09 Oct 14:15:47.618 # Error condition on socket for SYNC: Connection refused 14735:S 09 Oct 14:15:48.628 * Connecting to MASTER 192.168.231.130:6379 14735:S 09 Oct 14:15:48.628 * MASTER <-> SLAVE sync started 14735:S 09 Oct 14:15:48.628 # Error condition on socket for SYNC: Connection refused 14735:S 09 Oct 14:15:49.638 * Connecting to MASTER 192.168.231.130:6379 14735:S 09 Oct 14:15:49.638 * MASTER <-> SLAVE sync started 14735:S 09 Oct 14:15:49.638 # Error condition on socket for SYNC: Connection refused 14735:S 09 Oct 14:15:50.648 * Connecting to MASTER 192.168.231.130:6379 14735:S 09 Oct 14:15:50.648 * MASTER <-> SLAVE sync started 14735:S 09 Oct 14:15:50.648 # Error condition on socket for SYNC: Connection refused 14735:S 09 Oct 14:15:51.659 * Connecting to MASTER 192.168.231.130:6379 14735:S 09 Oct 14:15:51.659 * MASTER <-> SLAVE sync started 14735:S 09 Oct 14:15:51.659 # Error condition on socket for SYNC: Connection refused 14735:S 09 Oct 14:15:52.669 * Connecting to MASTER 192.168.231.130:6379 14735:S 09 Oct 14:15:52.669 * MASTER <-> SLAVE sync started 14735:S 09 Oct 14:15:52.669 # Error condition on socket for SYNC: Connection refused 14735:M 09 Oct 14:15:53.459 * Discarding previously cached master state. 14735:M 09 Oct 14:15:53.459 * MASTER MODE enabled (user request from 'id=5 addr=192.168.231.130:53187 fd=7 name=sentinel-7b8fdc1e-cmd age=23 idle=0 flags=x db=0 sub=0 psub=0 multi=3 qbuf=0 qbuf-free=32768 obl=36 oll=0 omem=0 events=r cmd=exec') 14735:M 09 Oct 14:15:53.463 # CONFIG REWRITE executed with success.

從日志可以看出,服務器會經過多次連接主服務器失敗后,判定主服務器故障,會對配置文件進行重寫(CONFIG REWRITE executed with success),我們再去看看從服務器的配置文件redis.conf,會發現之前在末尾加上的slaveof 192.168.231.130 6379不見了,這就說明當sentinel監測到主服務器掛掉之后,自動將從服務器切換為主服務器。

我們再來看看主從服務器sentinel控制臺輸出了信息:

主sentinel:

14677:X 09 Oct 14:15:54.384 # +promoted-slave slave 192.168.231.130:6380 192.168.231.130 6380 @ mymaster 192.168.231.130 6379 14677:X 09 Oct 14:15:54.384 # +failover-state-reconf-slaves master mymaster 192.168.231.130 6379 14677:X 09 Oct 14:15:54.456 # +failover-end master mymaster 192.168.231.130 6379 14677:X 09 Oct 14:15:54.456 # +switch-master mymaster 192.168.231.130 6379 192.168.231.130 6380 14677:X 09 Oct 14:15:54.456 * +slave slave 192.168.231.130:6379 192.168.231.130 6379 @ mymaster 192.168.231.130 6380 14677:X 09 Oct 14:16:04.479 # +sdown slave 192.168.231.130:6379 192.168.231.130 6379 @ mymaster 192.168.231.130 6380

從sentinel:

14688:X 09 Oct 14:15:53.223 # +sdown master mymaster 192.168.231.130 6379 14688:X 09 Oct 14:15:53.223 # +odown master mymaster 192.168.231.130 6379 #quorum 1/1 14688:X 09 Oct 14:15:53.223 # Next failover delay: I will not start a failover before Sun Oct  9 14:21:53 2016 14688:X 09 Oct 14:15:54.461 # +config-update-from sentinel 7b8fdc1e5e47426b0d62a3ddd22ede0fd712f452 192.168.231.130 26379 @ mymaster 192.168.231.130 6379 14688:X 09 Oct 14:15:54.461 # +switch-master mymaster 192.168.231.130 6379 192.168.231.130 6380 14688:X 09 Oct 14:15:54.461 * +slave slave 192.168.231.130:6379 192.168.231.130 6379 @ mymaster 192.168.231.130 6380 14688:X 09 Oct 14:16:04.483 # +sdown slave 192.168.231.130:6379 192.168.231.130 6379 @ mymaster 192.168.231.130 6380 

從上面日志信息可以看出,主從確實已經切換成功了,最后我們來看看實際情況是不是那樣的,打開命令行執行查詢主從信息命令,看看會出現什么結果:

192.168.231.130:26379> SENTINEL get-master-addr-by-name mymaster 1) "192.168.231.130" 2) "6380" 192.168.231.130:26379>
192.168.231.130:26379> SENTINEL masters 1)  1) "name"     2) "mymaster"     3) "ip"     4) "192.168.231.130"     5) "port"     6) "6380"     7) "runid"     8) "bb4fe3dece04db30c29f6650f1edd4d3689da751"     9) "flags"    10) "master"    11) "link-pending-commands"    12) "0"    13) "link-refcount"    14) "1"    15) "last-ping-sent"    16) "0"    17) "last-ok-ping-reply"    18) "14"    19) "last-ping-reply"    20) "14"    21) "down-after-milliseconds"    22) "10000"    23) "info-refresh"    24) "4648"    25) "role-reported"    26) "master"    27) "role-reported-time"    28) "847746"    29) "config-epoch"    30) "1"    31) "num-slaves"    32) "1"    33) "num-other-sentinels"    34) "1"    35) "quorum"    36) "1"    37) "failover-timeout"    38) "180000"    39) "parallel-syncs"    40) "1" 192.168.231.130:26379>

到這里基本已經部署完畢了,再去啟動原先主服務器redis-001,會發現此時的redis-001變成了從服務器,接下來的內容由于與前面重復較多,我就不演示了。

注意事項

1.一步一步來,先配置主從復制,再配置主從切換

2.啟動順序不要弄錯了,先啟動主服務器的redis與sentinel,再啟動從服務器redis與sentinel,如果遇到失敗情況,由于sentinel啟動后會自動修改和生成部分配置信息,為避免沖突浪費時間,建議直接刪除配置文件,重新配置。

3.如果redis有密碼的話,需要在主從服務器redis.conf中都加上:

masterauth <password>

以及在主從服務器sentinel.conf加上:

sentinel auth-pass mymaster <password>

兩者密碼一致。

4.daemonize yes,啟用保護進程
protected-mode no,關閉保護模式

另附

具體程序代碼修改部分,可以參考《JedisSentinelPool的相關配置與操作》

交叉參考:

http://www.cnblogs.com/davidwang456/p/3525090.html
http://blog.csdn.net/mingjie1212/article/details/54296858
http://blog.csdn.net/qguanri/article/details/51120178
https://my.oschina.net/ydsakyclguozi/blog/515050


posted on 2017-07-10 10:25 思月行云 閱讀(748) 評論(0)  編輯 收藏 引用 所屬分類: Redis\Mongo
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            免费看成人av| 亚洲国产精品热久久| 国产欧美综合在线| 国产精品久久久久影院色老大 | 久久久精品性| 久久精品夜色噜噜亚洲a∨ | 国产精品亚洲片夜色在线| 国产精品福利片| 国产欧美精品xxxx另类| 国产午夜精品久久久| 亚洲国产成人在线| 一区二区欧美日韩| 午夜精品久久久久久久久久久久久| 亚洲综合视频一区| 久久精品日韩一区二区三区| 免费国产一区二区| 亚洲黄色性网站| 亚洲午夜免费视频| 久久久中精品2020中文| 欧美日韩黄色大片| 国产日韩一级二级三级| 女人天堂亚洲aⅴ在线观看| 在线观看的日韩av| 亚洲视频免费在线| 久久精品国产96久久久香蕉| 欧美电影资源| 99精品国产在热久久下载| 午夜精品久久久久久久白皮肤| 久久久久久精| 欧美网站大全在线观看| 国产一区二区黄| 一本色道久久加勒比精品| 久久精品日韩一区二区三区| 亚洲人成人77777线观看| 亚洲欧美国产高清| 免费视频最近日韩| 国产亚洲精品久久久久婷婷瑜伽| 亚洲麻豆av| 麻豆成人综合网| 亚洲一区二区欧美日韩| 欧美成人自拍| 在线播放豆国产99亚洲| 亚洲午夜av在线| 亚洲国产欧美日韩精品| 久久黄金**| 国产精品私房写真福利视频| 99精品国产福利在线观看免费| 久久久亚洲国产天美传媒修理工| av成人免费在线观看| 欧美风情在线观看| 狠狠色狠狠色综合人人| 亚洲欧美日韩精品久久久| 亚洲欧洲日产国产网站| 另类亚洲自拍| 伊人天天综合| 卡一卡二国产精品| 欧美一区二区三区在线| 国产精品一区二区久久久久| 亚洲午夜视频| 亚洲毛片在线观看| 欧美极品一区二区三区| 亚洲电影在线免费观看| 模特精品在线| 老巨人导航500精品| 一区二区三区在线视频观看| 久久婷婷av| 久久国产精品第一页| 国内精品久久久久久| 久久精品视频在线观看| 欧美一区二区三区久久精品茉莉花 | 亚洲天堂第二页| 亚洲美洲欧洲综合国产一区| 欧美国产综合视频| 日韩视频在线观看免费| 亚洲狠狠婷婷| 欧美日韩中文字幕精品| 亚洲一区二区精品在线| 亚洲无吗在线| 快射av在线播放一区| 在线亚洲国产精品网站| 欧美大片在线观看一区| 女人天堂亚洲aⅴ在线观看| 91久久国产自产拍夜夜嗨| 亚洲第一精品夜夜躁人人爽| 欧美精品偷拍| 亚洲欧美国产精品桃花| 午夜精品网站| 在线看片成人| 日韩视频不卡| 国产欧美一区二区三区久久 | 一区二区三区成人精品| 一区二区三区日韩精品| 国内成人精品一区| 欧美激情第二页| 欧美亚洲成人网| 久久久久国产精品一区二区| 亚洲精品裸体| 亚洲视频碰碰| 亚洲电影观看| 亚洲视频自拍偷拍| 1204国产成人精品视频| 亚洲视频免费看| 亚洲黄色在线看| 午夜精品久久久久久久白皮肤| 极品中文字幕一区| 亚洲色在线视频| 亚洲人成亚洲人成在线观看| 亚洲一区二区三区中文字幕在线| 国产综合自拍| 一本大道久久a久久精品综合| 国产一区二区黄| 一二美女精品欧洲| 亚洲激情六月丁香| 欧美在线视频一区二区| 亚洲一区bb| 免费人成网站在线观看欧美高清| 午夜久久黄色| 欧美日本精品在线| 麻豆精品一区二区综合av| 国产精品久久久久久超碰 | 国产精品久久9| 亚洲国产视频直播| 国内精品写真在线观看| 中国成人在线视频| 日韩视频免费| 免费在线欧美视频| 欧美在线视频一区| 欧美视频中文字幕| 亚洲激情成人网| 在线成人h网| 欧美中文在线免费| 欧美在线观看天堂一区二区三区| 欧美日韩国产va另类| 亚洲国产99精品国自产| 亚洲国产福利在线| 久久中文字幕一区二区三区| 国内外成人免费激情在线视频 | 免费观看在线综合色| 六月婷婷一区| 韩国女主播一区| 久久成人18免费观看| 欧美在线视频一区二区三区| 国产伦精品一区二区三区高清版| 一区二区三区精品| 亚洲一区二区三区成人在线视频精品| 欧美国产日韩免费| 亚洲国产一区二区视频| 日韩视频免费看| 国产精品激情电影| 亚洲女同精品视频| 久久精品视频亚洲| 精品成人一区二区三区| 蜜臀久久99精品久久久久久9| 欧美r片在线| 亚洲精品自在久久| 欧美日韩免费高清| 夜夜嗨av色综合久久久综合网| 一区二区三区高清在线 | 久久久精品网| 国产综合自拍| 欧美成人一区二免费视频软件| 亚洲一区免费看| 国产精品免费观看在线| 欧美在线免费| 亚洲国产网站| 欧美伊人久久久久久久久影院 | 激情久久婷婷| 欧美高清视频一二三区| av成人黄色| 久久久久国产精品厨房| 亚洲国产视频一区| 国产精品扒开腿做爽爽爽视频| 亚洲免费中文| 欧美国产专区| 午夜在线观看免费一区| 在线观看一区二区视频| 欧美人与禽性xxxxx杂性| 亚洲电影免费在线| 亚洲男人影院| 亚洲经典一区| 美女久久网站| 亚洲在线免费视频| 欧美成人性生活| 亚洲一区综合| 亚洲激情在线观看| 国产欧美日韩伦理| 农村妇女精品| 欧美一级午夜免费电影| 久久精品人人| 亚洲激情一区| 老色批av在线精品| 亚洲永久精品大片| 亚洲国产精品久久久久久女王| 国产精品国产三级国产a| 米奇777超碰欧美日韩亚洲| 亚洲欧美另类在线| 9l国产精品久久久久麻豆| 欧美电影免费观看| 久久人人九九| 久久精品日产第一区二区三区|