精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

OpenStack對(duì)象存儲(chǔ):Swift架構(gòu)詳解

運(yùn)維 系統(tǒng)運(yùn)維 OpenStack
OpenStack Object Storage(Swift)是OpenStack開源云計(jì)算項(xiàng)目的子項(xiàng)目之一,被稱為對(duì)象存儲(chǔ),提供了強(qiáng)大的擴(kuò)展性、冗余和持久性。本文將從架構(gòu)、原理和實(shí)踐等幾方面講述Swift。

  OpenStack Object Storage(Swift)是OpenStack開源云計(jì)算項(xiàng)目的子項(xiàng)目之一,被稱為對(duì)象存儲(chǔ),提供了強(qiáng)大的擴(kuò)展性、冗余和持久性。本文將從架構(gòu)、原理和實(shí)踐等幾方面講述Swift。 Swift并不是文件系統(tǒng)或者實(shí)時(shí)的數(shù)據(jù)存儲(chǔ)系統(tǒng),它稱為對(duì)象存儲(chǔ),用于永久類型的靜態(tài)數(shù)據(jù)的長(zhǎng)期存儲(chǔ),這些數(shù)據(jù)可以檢索、調(diào)整,必要時(shí)進(jìn)行更新。最適合存儲(chǔ)的數(shù)據(jù)類型的例子是虛擬機(jī)鏡像、圖片存儲(chǔ)、郵件存儲(chǔ)和存檔備份。因?yàn)闆]有中心單元或主控結(jié)點(diǎn),Swift提供了更強(qiáng)的擴(kuò)展性、冗余和持久性。Swift前身是Rackspace Cloud Files項(xiàng)目,隨著Rackspace加入到OpenStack社區(qū),于2010年7月貢獻(xiàn)給OpenStack,作為該開源項(xiàng)目的一部分。Swift目前的最新版本是OpenStack Essex 1.5.1。

  新浪SAE團(tuán)隊(duì)對(duì)Swift有將近一年的研究和運(yùn)營經(jīng)驗(yàn)。在深入剖析Swift架構(gòu)和原理、完全掌握Swift源碼,并且經(jīng)過一段時(shí)間的測(cè)試和運(yùn)營之后,我們決定將推出基于Swift的SAE Storage服務(wù)。目前,已完成開發(fā),并于一個(gè)月前開始線上運(yùn)行,且表現(xiàn)非常出色。因此,下面將分享一下我們?cè)赟wift上的一些研究和工作。

Swift特性

  在OpenStack官網(wǎng)中,列舉了Swift的20多個(gè)特性,其中最引人關(guān)注的是以下幾點(diǎn)。

極高的數(shù)據(jù)持久性

  一些朋友經(jīng)常將數(shù)據(jù)持久性(Durability)與系統(tǒng)可用性(Availability)兩個(gè)概念混淆,前者也理解為數(shù)據(jù)的可靠性,是指數(shù)據(jù)存儲(chǔ)到系統(tǒng)中后,到某一天數(shù)據(jù)丟失的可能性。例如Amazon S3的數(shù)據(jù)持久性是11個(gè)9,即如果存儲(chǔ)1萬(4個(gè)0)個(gè)文件到S3中,1千萬(7個(gè)0)年之后,可能會(huì)丟失其中1個(gè)文件。那么Swift能提供多少個(gè)9的SLA呢?下文會(huì)給出答案。針對(duì)Swift在新浪測(cè)試環(huán)境中的部署,我們從理論上測(cè)算過,Swift在5個(gè)Zone、5×10個(gè)存儲(chǔ)節(jié)點(diǎn)的環(huán)境下,數(shù)據(jù)復(fù)制份是為3,數(shù)據(jù)持久性的SLA能達(dá)到10個(gè)9。

  完全對(duì)稱的系統(tǒng)架構(gòu)

  “對(duì)稱”意味著Swift中各節(jié)點(diǎn)可以完全對(duì)等,能極大地降低系統(tǒng)維護(hù)成本。

  無限的可擴(kuò)展性

  這里的擴(kuò)展性分兩方面,一是數(shù)據(jù)存儲(chǔ)容量無限可擴(kuò)展;二是Swift性能(如QPS、吞吐量等)可線性提升。因?yàn)镾wift是完全對(duì)稱的架構(gòu),擴(kuò)容只需簡(jiǎn)單地新增機(jī)器,系統(tǒng)會(huì)自動(dòng)完成數(shù)據(jù)遷移等工作,使各存儲(chǔ)節(jié)點(diǎn)重新達(dá)到平衡狀態(tài)。

無單點(diǎn)故障

  在互聯(lián)網(wǎng)業(yè)務(wù)大規(guī)模應(yīng)用的場(chǎng)景中,存儲(chǔ)的單點(diǎn)一直是個(gè)難題。例如數(shù)據(jù)庫,一般的HA方法只能做主從,并且“主”一般只有一個(gè);還有一些其他開源存儲(chǔ)系統(tǒng)的實(shí)現(xiàn)中,元數(shù)據(jù)信息的存儲(chǔ)一直以來是個(gè)頭痛的地方,一般只能單點(diǎn)存儲(chǔ),而這個(gè)單點(diǎn)很容易成為瓶頸,并且一旦這個(gè)點(diǎn)出現(xiàn)差異,往往能影響到整個(gè)集群,典型的如HDFS。而Swift的元數(shù)據(jù)存儲(chǔ)是完全均勻隨機(jī)分布的,并且與對(duì)象文件存儲(chǔ)一樣,元數(shù)據(jù)也會(huì)存儲(chǔ)多份。整個(gè)Swift集群中,也沒有一個(gè)角色是單點(diǎn)的,并且在架構(gòu)和設(shè)計(jì)上保證無單點(diǎn)業(yè)務(wù)是有效的。

簡(jiǎn)單、可依賴

  簡(jiǎn)單體現(xiàn)在架構(gòu)優(yōu)美、代碼整潔、實(shí)現(xiàn)易懂,沒有用到一些高深的分布式存儲(chǔ)理論,而是很簡(jiǎn)單的原則。可依賴是指Swift經(jīng)測(cè)試、分析之后,可以放心大膽地將Swift用于最核心的存儲(chǔ)業(yè)務(wù)上,而不用擔(dān)心Swift捅簍子,因?yàn)椴还艹霈F(xiàn)任何問題,都能通過日志、閱讀代碼迅速解決。

  應(yīng)用場(chǎng)景

  Swift提供的服務(wù)與Amazon S3相同,適用于許多應(yīng)用場(chǎng)景。最典型的應(yīng)用是作為網(wǎng)盤類產(chǎn)品的存儲(chǔ)引擎,比如Dropbox背后就是使用Amazon S3作為支撐的。在OpenStack中還可以與鏡像服務(wù)Glance結(jié)合,為其存儲(chǔ)鏡像文件。另外,由于Swift的無限擴(kuò)展能力,也非常適合用于存儲(chǔ)日志文件和數(shù)據(jù)備份倉庫。#p#

Swift架構(gòu)概述

  Swift主要有三個(gè)組成部分:Proxy Server、Storage Server和Consistency Server。其架構(gòu)如圖1所示,其中Storage和Consistency服務(wù)均允許在Storage Node上。Auth認(rèn)證服務(wù)目前已從Swift中剝離出來,使用OpenStack的認(rèn)證服務(wù)Keystone,目的在于實(shí)現(xiàn)統(tǒng)一OpenStack各個(gè)項(xiàng)目間的認(rèn)證管理。

  圖1 Swift部署架構(gòu)

主要組件

  Proxy Server

  Proxy Server是提供Swift API的服務(wù)器進(jìn)程,負(fù)責(zé)Swift其余組件間的相互通信。對(duì)于每個(gè)客戶端的請(qǐng)求,它將在Ring中查詢Account、Container或Object的位置,并且相應(yīng)地轉(zhuǎn)發(fā)請(qǐng)求。Proxy提供了Rest-full API,并且符合標(biāo)準(zhǔn)的HTTP協(xié)議規(guī)范,這使得開發(fā)者可以快捷構(gòu)建定制的Client與Swift交互。

  Storage Server

  Storage Server提供了磁盤設(shè)備上的存儲(chǔ)服務(wù)。在Swift中有三類存儲(chǔ)服務(wù)器:Account、Container和Object。其中Container服務(wù)器負(fù)責(zé)處理Object的列表,Container服務(wù)器并不知道對(duì)象存放位置,只知道指定Container里存的哪些Object。這些Object信息以sqlite數(shù)據(jù)庫文件的形式存儲(chǔ)。Container服務(wù)器也做一些跟蹤統(tǒng)計(jì),例如Object的總數(shù)、Container的使用情況。

  Consistency Servers

  在磁盤上存儲(chǔ)數(shù)據(jù)并向外提供Rest-ful API并不是難以解決的問題,最主要的問題在于故障處理。Swift的Consistency Servers的目的是查找并解決由數(shù)據(jù)損壞和硬件故障引起的錯(cuò)誤。主要存在三個(gè)Server:Auditor、Updater和Replicator。 Auditor運(yùn)行在每個(gè)Swift服務(wù)器的后臺(tái)持續(xù)地掃描磁盤來檢測(cè)對(duì)象、Container和賬號(hào)的完整性。如果發(fā)現(xiàn)數(shù)據(jù)損壞,Auditor就會(huì)將該文件移動(dòng)到隔離區(qū)域,然后由Replicator負(fù)責(zé)用一個(gè)完好的拷貝來替代該數(shù)據(jù)。圖2給出了隔離對(duì)象的處理流圖。 在系統(tǒng)高負(fù)荷或者發(fā)生故障的情況下,Container或賬號(hào)中的數(shù)據(jù)不會(huì)被立即更新。如果更新失敗,該次更新在本地文件系統(tǒng)上會(huì)被加入隊(duì)列,然后Updaters會(huì)繼續(xù)處理這些失敗了的更新工作,其中由Account Updater和Container Updater分別負(fù)責(zé)Account和Object列表的更新。 Replicator的功能是處理數(shù)據(jù)的存放位置是否正確并且保持?jǐn)?shù)據(jù)的合理拷貝數(shù),它的設(shè)計(jì)目的是Swift服務(wù)器在面臨如網(wǎng)絡(luò)中斷或者驅(qū)動(dòng)器故障等臨時(shí)性故障情況時(shí)可以保持系統(tǒng)的一致性。

  圖2 隔離對(duì)象的處理流圖

  Ring

  Ring是Swift最重要的組件,用于記錄存儲(chǔ)對(duì)象與物理位置間的映射關(guān)系。在涉及查詢Account、Container、Object信息時(shí),就需要查詢集群的Ring信息。 Ring使用Zone、Device、Partition和Replica來維護(hù)這些映射信息。Ring中每個(gè)Partition在集群中都(默認(rèn))有3個(gè)Replica。每個(gè)Partition的位置由Ring來維護(hù),并存儲(chǔ)在映射中。Ring文件在系統(tǒng)初始化時(shí)創(chuàng)建,之后每次增減存儲(chǔ)節(jié)點(diǎn)時(shí),需要重新平衡一下Ring文件中的項(xiàng)目,以保證增減節(jié)點(diǎn)時(shí),系統(tǒng)因此而發(fā)生遷移的文件數(shù)量最少。

原理

  Swift用到的算法和存儲(chǔ)理論并不復(fù)雜,主要有幾下幾個(gè)概念。

  一致性哈希算法

  Swift利用一致性哈希算法構(gòu)建了一個(gè)冗余的可擴(kuò)展的分布式對(duì)象存儲(chǔ)集群。Swift采用一致性哈希的主要目的是在改變集群的Node數(shù)量時(shí),能夠盡可能少地改變已存在Key和Node的映射關(guān)系。 該算法的思路分為以下三個(gè)步驟。 首先計(jì)算每個(gè)節(jié)點(diǎn)的哈希值,并將其分配到一個(gè)0~232的圓環(huán)區(qū)間上。其次使用相同方法計(jì)算存儲(chǔ)對(duì)象的哈希值,也將其分配到這個(gè)圓環(huán)上。隨后從數(shù)據(jù)映射到的位置開始順時(shí)針查找,將數(shù)據(jù)保存到找到的第一個(gè)節(jié)點(diǎn)上。如果超過232仍然找不到節(jié)點(diǎn),就會(huì)保存到第一個(gè)節(jié)點(diǎn)上。 假設(shè)在這個(gè)環(huán)形哈希空間中存在4臺(tái)Node,若增加一臺(tái)Node5,根據(jù)算法得出Node5被映射在Node3和Node4之間,那么受影響的將僅是沿Node5逆時(shí)針遍歷到Node3之間的對(duì)象(它們本來映射到Node4上)。其分布如圖3所示。

  圖3 一致性哈希環(huán)結(jié)構(gòu)

Replica

  如果集群中的數(shù)據(jù)在本地節(jié)點(diǎn)上只有一份,一旦發(fā)生故障就可能會(huì)造成數(shù)據(jù)的永久性丟失。因此,需要有冗余的副本來保證數(shù)據(jù)安全。Swift中引入了Replica的概念,其默認(rèn)值為3,理論依據(jù)主要來源于NWR策略(也叫Quorum協(xié)議)。 NWR是一種在分布式存儲(chǔ)系統(tǒng)中用于控制一致性級(jí)別的策略。在Amazon的Dynamo云存儲(chǔ)系統(tǒng)中,使用了NWR來控制一致性。其中,N代表同一份數(shù)據(jù)的Replica的份數(shù),W是更新一個(gè)數(shù)據(jù)對(duì)象時(shí)需要確保成功更新的份數(shù);R代表讀取一個(gè)數(shù)據(jù)需要讀取的Replica的份數(shù)。 公式W+R>N,保證某個(gè)數(shù)據(jù)不被兩個(gè)不同的事務(wù)同時(shí)讀和寫;公式W>N/2保證兩個(gè)事務(wù)不能并發(fā)寫某一個(gè)數(shù)據(jù)。 在分布式系統(tǒng)中,數(shù)據(jù)的單點(diǎn)是不允許存在的。即線上正常存在的Replica數(shù)量為1的情況是非常危險(xiǎn)的,因?yàn)橐坏┻@個(gè)Replica再次出錯(cuò),就可能發(fā)生數(shù)據(jù)的永久性錯(cuò)誤。假如我們把N設(shè)置成為2,那么只要有一個(gè)存儲(chǔ)節(jié)點(diǎn)發(fā)生損壞,就會(huì)有單點(diǎn)的存在,所以N必須大于2。N越高,系統(tǒng)的維護(hù)成本和整體成本就越高。工業(yè)界通常把N設(shè)置為3。例如,對(duì)于MySQL主從結(jié)構(gòu),其NWR數(shù)值分別是N= 2, W = 1, R = 1,沒有滿足NWR策略。而Swift的N=3, W=2, R=2,完全符合NWR策略,因此Swift系統(tǒng)是可靠的,沒有單點(diǎn)故障。

  Zone

  如果所有的Node都在一個(gè)機(jī)架或一個(gè)機(jī)房中,那么一旦發(fā)生斷電、網(wǎng)絡(luò)故障等,都將造成用戶無法訪問。因此需要一種機(jī)制對(duì)機(jī)器的物理位置進(jìn)行隔離,以滿足分區(qū)容忍性(CAP理論中的P)。因此,Ring中引入了Zone的概念,把集群的Node分配到每個(gè)Zone中。其中同一個(gè)Partition的Replica不能同時(shí)放在同一個(gè)Node上或同一個(gè)Zone內(nèi)。注意,Zone的大小可以根據(jù)業(yè)務(wù)需求和硬件條件自定義,可以是一塊磁盤、一臺(tái)存儲(chǔ)服務(wù)器,也可以是一個(gè)機(jī)架甚至一個(gè)IDC。

  Weight

  Ring引入Weight的目的是解決未來添加存儲(chǔ)能力更大的Node時(shí),分配到更多的Partition。例如,2TB容量的Node的Partition數(shù)為1TB的兩倍,那么就可以設(shè)置2TB的Weight為200,而1TB的為100。#p#

  圖4 一種Swift部署集群

  實(shí)例分析

  圖4中是新浪SAE在測(cè)試環(huán)境中部署的Swift集群,集群中又分為5個(gè)Zone,每個(gè)Zone是一臺(tái)存儲(chǔ)服務(wù)器,每臺(tái)服務(wù)器上由12塊2TB的SATA磁盤組成,只有操作系統(tǒng)安裝盤需要RAID,其他盤作為存儲(chǔ)節(jié)點(diǎn),不需要RAID。前面提到過,Swift采用完全對(duì)稱的系統(tǒng)架構(gòu),在這個(gè)部署案例中得到了很好的體現(xiàn)。圖4中每個(gè)存儲(chǔ)服務(wù)器的角色是完全對(duì)等的,系統(tǒng)配置完全一樣,均安裝了所有Swift服務(wù)軟件包,如Proxy Server、Container Server和Account Server等。上面的負(fù)載均衡(Load Balancer)并不屬于Swift的軟件包,出于安全和性能的考慮,一般會(huì)在業(yè)務(wù)之前擋一層負(fù)載均衡設(shè)備。當(dāng)然可以去掉這層代理,讓Proxy Server直接接收用戶的請(qǐng)求,但這可能不太適合在生產(chǎn)環(huán)境中使用。 圖4中分別表示了上傳文件PUT和下載文件GET請(qǐng)求的數(shù)據(jù)流,兩個(gè)請(qǐng)求操作的是同一個(gè)對(duì)象。上傳文件時(shí),PUT請(qǐng)求通過負(fù)載均衡隨機(jī)挑選一臺(tái)Proxy Server,將請(qǐng)求轉(zhuǎn)發(fā)到后者,后者通過查詢本地的Ring文件,選擇3個(gè)不同Zone中的后端來存儲(chǔ)這個(gè)文件,然后同時(shí)將該文件向這三個(gè)存儲(chǔ)節(jié)點(diǎn)發(fā)送文件。這個(gè)過程需要滿足NWR策略(Quorum Protocol),即3份存儲(chǔ),寫成功的份數(shù)必須大于3/2,即必須保證至少2份數(shù)據(jù)寫成功,再給用戶返回文件寫成功的消息。下載文件時(shí),GET請(qǐng)求也通過負(fù)載均衡隨機(jī)挑選一臺(tái)Proxy Server,后者上的Ring文件能查詢到這個(gè)文件存儲(chǔ)在哪三個(gè)節(jié)點(diǎn)中,然后同時(shí)去向后端查詢,至少有2個(gè)存儲(chǔ)節(jié)點(diǎn)“表示”可以提供該文件,然后Proxy Server從中選擇一個(gè)節(jié)點(diǎn)下載文件。

  小結(jié)

  Swift簡(jiǎn)單、冗余、可擴(kuò)展的架構(gòu)設(shè)計(jì)保證了它能夠用于IaaS的基礎(chǔ)服務(wù)。在Rackspace Cloud Files服務(wù)兩年的運(yùn)行積累使得Swift代碼變得越來越成熟,目前已部署在全球各地的公有云、私有云服務(wù)中。隨著OpenStack的不斷完善和發(fā)展,Swift將得到更廣泛的應(yīng)用。

 

責(zé)任編輯:黃丹 來源: 天極網(wǎng)
相關(guān)推薦

2013-07-25 09:12:48

OpenStackSwift對(duì)象存儲(chǔ)對(duì)象存儲(chǔ)

2015-08-25 11:17:13

OpenStack對(duì)象存儲(chǔ)Swift

2015-08-27 09:46:02

開源對(duì)象存儲(chǔ)Swift

2014-11-27 13:29:29

OpenStackSwift開源

2013-12-10 09:57:35

Openstack S開源云存儲(chǔ)Openstack

2013-12-11 21:44:01

OpenStack對(duì)象Swift

2012-05-17 13:47:37

OpenStack架構(gòu)

2012-05-16 09:59:30

OpenStack架構(gòu)

2016-06-17 13:43:15

OpenStackSwift跨地域存儲(chǔ)集群

2014-08-19 10:30:30

Swift源碼OpenStack架構(gòu)

2012-02-01 09:21:23

Hadoop分布式文件系統(tǒng)OpenStack

2015-05-22 10:12:11

2015-04-03 10:43:49

2013-07-26 09:16:13

SwiftOpenStackSwiftStack

2017-08-29 20:19:56

對(duì)象存儲(chǔ)架構(gòu)存儲(chǔ)數(shù)據(jù)中心

2018-11-21 10:21:55

CephSwift存儲(chǔ)系統(tǒng)

2011-09-07 10:42:38

cloudopenstack n

2025-09-10 02:00:00

分布式文件存儲(chǔ)

2019-06-20 08:59:51

HDFSCEPHGFS

2021-07-20 05:33:41

Swift Codable
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

欧美在线观看你懂的| 丁香婷婷综合激情五月色| 日韩毛片在线看| 欧美日韩大尺度| 免费黄色网页在线观看| 国产成人精品免费看| 青青草国产精品一区二区| 青青操在线视频观看| 久久悠悠精品综合网| 在线视频一区二区三| 女同性恋一区二区| 可以在线观看的av| 国产精品乱码妇女bbbb| 中文字幕日韩精品在线观看| 在线视频日韩欧美| 欧美裸体视频| 亚洲欧美日本韩国| 日本10禁啪啪无遮挡免费一区二区| 亚洲综合精品国产一区二区三区 | 激情五月综合婷婷| 一本到一区二区三区| 男女啪啪免费观看| 成年人在线免费观看| 成人小视频在线| 成人午夜在线视频一区| 在线能看的av| 一区精品久久| 欧美成年人网站| 国产91丝袜美女在线播放| 欧美美女黄色| 精品日韩99亚洲| 色婷婷.com| 欧美最新精品| 色婷婷av一区二区| 少妇av一区二区三区无码| 在线观看电影av| 国产精品初高中害羞小美女文| 欧美不卡三区| 无码国产精品96久久久久| 国产99久久久久| 91精品网站| 国产免费的av| 激情国产一区二区| 国产女人精品视频| 国产第一页在线观看| 国产精品婷婷| 久久人人爽人人爽人人片av高清| h色网站在线观看| 999久久久亚洲| 日韩中文字幕在线视频播放| 影音先锋男人在线| 精品福利久久久| 国产丝袜视频一区| 玖玖爱在线观看| 亚洲免费专区| 国产午夜精品全部视频播放| 黄免费在线观看| 欧美精选一区二区三区| 中文字幕视频在线免费欧美日韩综合在线看 | 欧美激情乱人伦| 国产高潮国产高潮久久久91| 欧美影院一区| 国内精品久久久久久久| 在线观看 中文字幕| 在线亚洲成人| 国产精品黄页免费高清在线观看| 69xxxx国产| 九色porny丨国产精品| 91久久精品一区| 成人av一区二区三区在线观看| 国产高清不卡二三区| 国产精品免费区二区三区观看| 欧美一区二区三区激情| 91香蕉视频mp4| 亚洲不卡1区| 成人在线免费视频| 国产精品电影一区二区| 久久av高潮av| 久久爱91午夜羞羞| 欧美日韩国产精品成人| 91精品人妻一区二区三区蜜桃2| 凹凸成人在线| 国产亚洲欧美日韩一区二区| 午夜爱爱毛片xxxx视频免费看| 一区视频在线看| 国产成人久久久| 国产三级第一页| 91丝袜美腿高跟国产极品老师 | 成人在线资源网址| 国产午夜在线视频| 亚洲美腿欧美偷拍| 日韩人妻精品无码一区二区三区| 日韩一区二区三区免费视频| 日韩欧美久久一区| 亚洲色成人网站www永久四虎| 国产精品久久久久久久| 97激碰免费视频| 92久久精品一区二区| zzijzzij亚洲日本少妇熟睡| 亚洲资源视频| 欧美久久天堂| 精品久久久久久久人人人人传媒| 日本乱子伦xxxx| 国产精品xvideos88| 国产精品扒开腿做爽爽爽视频 | 最新中文字幕亚洲| 国产成人精品亚洲男人的天堂| 免费不卡在线视频| 精品欧美日韩在线| 在线观看的网站你懂的| 欧美亚洲自拍偷拍| 亚洲一区二区三区四区五区六区| 99久久夜色精品国产亚洲狼| 欧美亚洲视频一区二区| 精品久久久免费视频| 国产精品久久夜| 欧美 国产 日本| 欧洲大片精品免费永久看nba| 中文字幕日韩高清| 国产又黄又猛又粗又爽| 成人性生交大片免费看视频在线| 中文字幕成人一区| 99九九久久| 亚洲性猛交xxxxwww| 日韩 欧美 中文| 国产成人鲁色资源国产91色综| 一区二区三区三区在线| 日本在线视频一区二区| 亚洲开心激情网| 日韩 欧美 中文| 成av人片一区二区| 日本阿v视频在线观看| 国产欧美视频在线| www.日韩视频| 国产一区二区女内射| 国产女同性恋一区二区| 欧美韩国日本在线| 青青一区二区| 欧美一级片免费在线| 亚洲欧美综合在线观看| 午夜精品一区在线观看| 精品人妻一区二区免费| 欧美婷婷在线| 粉嫩高清一区二区三区精品视频| 18视频在线观看| 日韩一级免费观看| 久久国产精品二区| 粉嫩av亚洲一区二区图片| 人妻无码一区二区三区四区| 2021年精品国产福利在线| 欧美激情区在线播放| 黄色小视频免费观看| 亚洲国产你懂的| 人妻无码一区二区三区| 老牛影视一区二区三区| 日韩免费一区二区三区| 成人黄色毛片| 久久福利网址导航| 丰满肥臀噗嗤啊x99av| 精品国产31久久久久久| 欧美 变态 另类 人妖| 老妇喷水一区二区三区| 一区二区在线观| 精品一区二区三区免费看| 色综合色综合久久综合频道88| 日韩一级片免费看| 欧美性猛交xxxx乱大交| 色噜噜日韩精品欧美一区二区| 久久免费高清| 在线一区亚洲| jizz18欧美18| 国产成人精品电影| 黄色在线观看网站| 亚洲国产日韩欧美在线图片 | 成人影音在线| 国产视频精品va久久久久久| 又骚又黄的视频| 亚洲愉拍自拍另类高清精品| 香蕉视频黄色在线观看| 美国三级日本三级久久99| 日韩在线视频在线| 欧美极品中文字幕| 99热在线播放| 成人线上视频| 久久精品视频在线播放| 欧美一级淫片免费视频魅影视频| 日韩欧美在线视频观看| 少妇aaaaa| 久久久一区二区三区捆绑**| 久久无码人妻一区二区三区| 国产欧美短视频| 欧美日韩视频免费在线观看| 欧美色资源站| 91色在线观看| 日韩精选视频| 久久久久久亚洲精品不卡| 番号集在线观看| 精品区一区二区| 伊人久久一区二区| 欧美日韩午夜剧场| 免费高清在线观看电视| 久久人人超碰精品| 久久人妻少妇嫩草av蜜桃| 日本午夜一区二区| 日本毛片在线免费观看| 欧美在线黄色| 中文字幕欧美人与畜| 日韩精选在线| 国产精品对白一区二区三区| 欧美国产视频| 国产成人一区二区在线| wwww在线观看免费视频| 久久综合久久八八| 99精品老司机免费视频| 亚洲精品中文字幕女同| 女人18毛片水真多18精品| 欧美一区三区四区| 中文字幕777| 日本久久电影网| 日韩欧美a级片| 亚洲国产一二三| 欧美黄色aaa| **欧美大码日韩| 欧美亚洲色综久久精品国产| 久久久美女毛片| 大地资源二中文在线影视观看| 成人午夜又粗又硬又大| 伦伦影院午夜理论片| 黄色小说综合网站| 日韩在线一区视频| 久久国产尿小便嘘嘘| 男人搞女人网站| 日韩高清在线一区| 国产无套粉嫩白浆内谢的出处| 亚洲视频大全| 成年人观看网站| 西西裸体人体做爰大胆久久久| 九一国产精品视频| 亚洲精品专区| 欧美v在线观看| 国产美女一区| 国产一区二区三区精彩视频| 国产精品呻吟| 超碰影院在线观看| 日韩福利视频导航| 精品999在线| 久久99久久久久| 欧美大片久久久| 国产剧情一区在线| 亚洲熟女乱综合一区二区| 国产白丝精品91爽爽久久 | xfplay精品久久| 人人妻人人藻人人爽欧美一区| 91麻豆swag| 欧美性猛交xxxx乱| 中文字幕国产一区| 中文字幕电影av| 一区二区久久久| 免费看日韩毛片| 色婷婷国产精品| 在线免费av片| 日韩三级电影网址| 少妇无码一区二区三区| 亚洲精品少妇网址| 色多多视频在线观看| 欧美xxxx18性欧美| 7777久久亚洲中文字幕| 免费欧美在线视频| 日日干夜夜操s8| 国产专区欧美精品| zjzjzjzjzj亚洲女人| 95精品视频在线| 黄色片网站免费| 亚洲欧洲精品一区二区三区| 久久亚洲AV无码| 一本大道av一区二区在线播放| 国产乱码一区| 一区二区三区四区精品视频 | 97超碰资源站| 精品国产电影一区二区| 免费a在线观看| 成年无码av片在线| 在线看的毛片| 91免费在线视频网站| 日韩伦理一区二区三区| 综合一区中文字幕| 99国产精品99久久久久久粉嫩| 91人人澡人人爽人人精品| 国产成人av资源| 正在播放国产对白害羞| 亚洲大型综合色站| 91国产精品一区| 国产网站欧美日韩免费精品在线观看| 蜜芽在线免费观看| 91精品国产乱码久久久久久蜜臀| julia一区二区三区中文字幕| 国产欧美日韩综合精品二区| 日韩免费视频| 黄www在线观看| 成人午夜视频在线| 国产视频不卡在线| 欧美色另类天堂2015| 国产欧美第一页| 亚洲精品一区二三区不卡| 日韩av激情| 成人在线激情视频| 精品国产91久久久久久浪潮蜜月| 男女视频网站在线观看| 国产麻豆日韩欧美久久| 香蕉成人在线视频| 欧美午夜性色大片在线观看| 亚洲男人天堂久久| 欧美成人精品一区二区| 福利一区二区| 亚洲高清在线观看一区| 久久高清国产| 黄色正能量网站| 午夜影院久久久| 超碰在线播放97| 久久综合色88| 亚洲一区导航| 亚洲视频在线二区| 视频精品一区二区| 日韩精品卡通动漫网站| 午夜a成v人精品| 日韩一级片免费在线观看| 色综合男人天堂| 在线观看视频一区二区三区| 在线视频一二三区| 国产美女视频91| 黑人操日本美女| 欧美精品 国产精品| 欧美一级二级三级区| 国产欧美精品日韩| 色综合天天爱| 香蕉视频999| 亚洲同性同志一二三专区| 国产精品久久久久久无人区| zzijzzij亚洲日本成熟少妇| 日韩有码欧美| 秋霞在线一区二区| 国产精品77777竹菊影视小说| 免费国产羞羞网站美图| 日韩一区二区三| 欧美黑人猛交| 国产一区二区三区色淫影院| 日韩一区二区免费看| 亚洲专区区免费| 色噜噜久久综合| 1区2区3区在线观看| 91欧美精品成人综合在线观看| 亚洲一区二区日韩| 欧美熟妇精品一区二区| 亚洲成人1区2区| 欧洲免费在线视频| 国产精品一区二区三区在线播放| 婷婷久久一区| 亚洲色偷偷色噜噜狠狠99网| 岛国av一区二区在线在线观看| 精品999视频| 国产主播欧美精品| 欧美日韩四区| 精品人妻无码一区二区三区 | 亚洲人成人一区二区在线观看| 国产伦子伦对白视频| 欧美激情日韩图片| 蜜桃一区二区三区| 高潮一区二区三区| 亚洲国产精品综合小说图片区| 日产精品久久久久久久性色| 国产精品丝袜视频| 欧美特黄视频| 亚洲人成人无码网www国产| 欧美精品一卡二卡| bl视频在线免费观看| 亚欧精品在线| 成人免费毛片嘿嘿连载视频| 黄色片中文字幕| 久久伊人精品天天| 亚洲人成网www| 婷婷激情综合五月天| 欧美色视频日本高清在线观看| av资源在线观看免费高清| 99精彩视频| 免费欧美日韩国产三级电影| 久久久精品视频在线| 国产亚洲欧美另类中文| 清纯唯美激情亚洲| 在线观看免费成人av| 亚洲永久免费av| 91啦中文在线| 久久久久高清| 国产激情视频一区二区在线观看| 欧美a视频在线观看| 欧美日韩999| 欧美老女人另类| 国产在线观看无码免费视频| 91精品国产欧美一区二区18| 日韩电影免费观| 97免费视频观看|