久久精品国产精品国产精品污,男人扒开添女人下部免费视频,一级国产69式性姿势免费视频,夜鲁夜鲁很鲁在线视频 视频,欧美丰满少妇一区二区三区,国产偷国产偷亚洲高清人乐享,中文 在线 日韩 亚洲 欧美,熟妇人妻无乱码中文字幕真矢织江,一区二区三区人妻制服国产

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

Docker网络和服务发现

發(fā)布時(shí)間:2025/3/21 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Docker网络和服务发现 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

【編者的話】 本文是《Docker網(wǎng)絡(luò)和服務(wù)發(fā)現(xiàn)》一書的全文,作者是Michael Hausenblas。本文介紹了Docker世界中的網(wǎng)絡(luò)和服務(wù)發(fā)現(xiàn)的工作原理,并提供了一系列解決方案。

?

前言

當(dāng)你開始使用Docker構(gòu)建應(yīng)用的時(shí)候,對(duì)于Docker的能力和它帶來(lái)的機(jī)會(huì),你會(huì)感到很興奮。它可以同時(shí)在開發(fā)環(huán)境和生產(chǎn)環(huán)境中運(yùn)行,只需要將一切打包進(jìn)一個(gè)Docker鏡像中,然后通過(guò)Docker Hub分發(fā)鏡像,這是很直接了當(dāng)?shù)摹D銜?huì)發(fā)現(xiàn)以下過(guò)程很令人滿意:你可以快速地將現(xiàn)有的應(yīng)用(如Python應(yīng)用)移植到Docker中,將該容器與另一個(gè)數(shù)據(jù)庫(kù)容器(如PostgreSQL)連接。但是,你不會(huì)想手動(dòng)啟動(dòng)一個(gè)Docker容器,也不會(huì)想自己去實(shí)現(xiàn)一個(gè)系統(tǒng)來(lái)監(jiān)控運(yùn)行中的容器和重啟未運(yùn)行的容器。

此時(shí),你會(huì)意識(shí)到兩個(gè)相互關(guān)聯(lián)的挑戰(zhàn):網(wǎng)絡(luò)和服務(wù)發(fā)現(xiàn)。不幸的是,說(shuō)得好聽(tīng)一點(diǎn),這兩個(gè)領(lǐng)域都是新興的課題;說(shuō)得難聽(tīng)一點(diǎn),在這兩個(gè)領(lǐng)域里,還有很多不確定的內(nèi)容,也缺乏最佳實(shí)踐。幸運(yùn)的是,在海量的博客和文章中,分散著各種各樣的“秘方”。

?

?

本書

因此,我對(duì)自己說(shuō):如果有人寫本書,可以介紹這些主題,并提供一些基本的指導(dǎo),對(duì)于每項(xiàng)技術(shù)給讀者指引正確的方向,那該多好啊。

那個(gè)“人”注定是我, 在本書里,我將介紹Docker容器網(wǎng)絡(luò)和服務(wù)發(fā)現(xiàn)領(lǐng)域中的挑戰(zhàn)和現(xiàn)有的解決方案。 我想讓大家了解以下三點(diǎn):

?

?

  • 服務(wù)發(fā)現(xiàn)和容器編排就像一枚硬幣的兩面。
  • 對(duì)于Docker網(wǎng)絡(luò),如果沒(méi)有正確的理解和完善的策略,那就糟糕了。
  • 網(wǎng)絡(luò)和服務(wù)發(fā)現(xiàn)領(lǐng)域還很年輕。你會(huì)發(fā)現(xiàn),剛開始你還在學(xué)習(xí)一套技術(shù),過(guò)一段時(shí)間,就會(huì)“換擋”,嘗試另一套技術(shù)。不要緊張,這是很正常的。在我看來(lái),在形成標(biāo)準(zhǔn)和市場(chǎng)穩(wěn)定之前,還會(huì)有兩三年時(shí)間。


編排和調(diào)度

嚴(yán)格來(lái)講,編排是比調(diào)度更廣泛的一個(gè)概念:編排包含了調(diào)度,同時(shí)也包含其他內(nèi)容。例如,容器的故障重啟(可能是由于容器本身不健康,也可能是宿主機(jī)出了故障)。而調(diào)度僅僅是指,決定哪個(gè)容器運(yùn)行在哪個(gè)宿主機(jī)上的過(guò)程。在本書中,我會(huì)無(wú)差別地使用這兩個(gè)術(shù)語(yǔ)。

我這么做的原因是:第一,在IETF RFC和NIST標(biāo)準(zhǔn)中并沒(méi)有對(duì)這兩個(gè)概念的官方定義;第二,在不同公司的市場(chǎng)宣傳中,往往會(huì)故意混淆它們,因此我希望你能對(duì)此有所準(zhǔn)備。然而,Joe Beda(前Google和Kubernetes的策劃者)對(duì)于該問(wèn)題發(fā)表了一篇相當(dāng)不錯(cuò)的文章:?What Makes a Container Cluster?,你可以更深入地了解一下。

?

?

我希望,本書的讀者是:

?

?

  • 開發(fā)者們,正在使用Docker;
  • 網(wǎng)絡(luò)Ops,正在為熱情的開發(fā)者所帶來(lái)的沖擊做準(zhǔn)備;
  • (企業(yè))軟件架構(gòu)師,正在將現(xiàn)有負(fù)載遷移到Docker,或者使用Docker開始一項(xiàng)新項(xiàng)目;
  • 最后但同樣重要的是,我相信,分布式應(yīng)用的開發(fā)者、SRE和后端工程師們也能從其中獲取一些價(jià)值。


需要注意的是,本書不是一本動(dòng)手實(shí)踐(hands-on)的書籍(除了第二章的Docker網(wǎng)絡(luò)部分),更像是一本指導(dǎo)。當(dāng)你計(jì)劃實(shí)施一個(gè)基于Docker的部署時(shí),你可以參考本書來(lái)做出一個(gè)明智合理的決定。閱讀本書的另一種方式是,添加大量注釋和書簽(a heavily annotated bookmark collection)。

?

?

我在一個(gè)很酷的創(chuàng)業(yè)公司Mesosphere, Inc.(Apache Mesos背后的商業(yè)公司)工作,主要的工作內(nèi)容是幫助DevOps充分利用Mesos。雖然我有偏見(jiàn)地認(rèn)為Mesos是目前進(jìn)行大規(guī)模集群調(diào)度的最佳選擇,但是我仍然會(huì)盡我最大的努力來(lái)確保這種偏愛(ài)不會(huì)影響對(duì)于各項(xiàng)技術(shù)的介紹。

?

?

致謝

向Mesosphere同事們James DeFelice和Stefan Schimanski(來(lái)自Kubernetes組)致謝,他們很耐心地回答了我關(guān)于Kubernetes網(wǎng)絡(luò)的問(wèn)題。向我的Mesosphere同事們Sebastien Pahl和Tim Fall(原Docker同事)致謝,我非常感謝你們關(guān)于Docker網(wǎng)絡(luò)的建議。也很感謝另一個(gè)Mesos同事Mohit Soni,在百忙之中他提供了很多反饋。

進(jìn)一步地, 我要感謝Medallia的Thorvald Natvig,他的講話Velocity NYC 2015促使我深入地思考了網(wǎng)絡(luò)這一領(lǐng)域,他也很友善地和我討論Medallia生產(chǎn)環(huán)境中使用Docker/Mesos/Aurora的經(jīng)驗(yàn)和教訓(xùn)。

很感謝Adrian Mouat(容器解決方案)和Diogo Mónica(Docker, Inc.)通過(guò)Twitter回答問(wèn)題,尤其是在普通人睡覺(jué)的時(shí)候,花了數(shù)小時(shí)回答了我的問(wèn)題。

我也很感謝來(lái)自Chris Swan的反饋,他提供了明確可操作的評(píng)論。通過(guò)解決他的問(wèn)題,我相信本書變得更有針對(duì)性了。

在本書的寫作過(guò)程中,來(lái)自Google的Mandy Waite提供了很多有用的反饋,特別是Kubernetes,我很感謝這一點(diǎn)。我也很感激Tim Hockin(Google)的支持,他幫助我澄清了很多關(guān)于Docker網(wǎng)絡(luò)特性和Kubernetes的疑惑。

感謝Matthias Bauer對(duì)于本書的草稿提出的寶貴意見(jiàn)。

非常感謝我的O’Reilly編輯Brian Anderson。從我們討論草稿開始,你一直都非常支持我,很高效,也很有趣。非常榮幸和您一起工作。

最后重要的一點(diǎn)是,對(duì)于我的家庭要致以最深刻的謝意:我的“陽(yáng)光”Saphira,我的“運(yùn)動(dòng)女孩”Ranya,我的兒子和“Minecraft大師”Iannis,以及一直支持我的妻子Anneliese。如果沒(méi)有你們的支持,我是不可能完成本書的。

?

?

動(dòng)機(jī)

2012年2月,Randy Bias發(fā)表了一篇談話,名為開放和可擴(kuò)展云架構(gòu),提出了pets和cattle兩種文化基因的碰撞。

?

?

  • 基礎(chǔ)設(shè)施的pets方法(pets approach to infrastructure),每臺(tái)機(jī)器或虛擬機(jī)被當(dāng)做一個(gè)個(gè)體,會(huì)分配一個(gè)名字,各個(gè)應(yīng)用被靜態(tài)地部署在各個(gè)機(jī)器上。例如:?db-prod-2是生產(chǎn)環(huán)境中的一臺(tái)數(shù)據(jù)庫(kù)服務(wù)器。應(yīng)用是手動(dòng)部署的,當(dāng)一臺(tái)機(jī)器出故障時(shí),你需要修復(fù)它,并把應(yīng)用手動(dòng)部署到另一臺(tái)機(jī)器上。在非云原生應(yīng)用時(shí)代(non-cloud-native era),這種方法通常占據(jù)著主導(dǎo)地位。
  • 基礎(chǔ)設(shè)施的cattle方法(cattle approach to infrastructure),所有的機(jī)器都是無(wú)名的、完全類似的(modulo hardware upgrades),它們只有編號(hào),沒(méi)有名字。應(yīng)用是自動(dòng)部署到機(jī)器群中的任意一臺(tái)。當(dāng)其中一臺(tái)機(jī)器發(fā)生故障時(shí),你不需要立刻處理它,只要在方便的時(shí)候更換故障機(jī)器(或者它的一部分,如一塊損壞的HDD)。


盡管這些文化基因(meme)最初是針對(duì)虛擬機(jī)的,但是我們這里會(huì)將cattle方法套用在容器的基礎(chǔ)架構(gòu)上。

?

?

Go Cattle!

在基礎(chǔ)設(shè)施中,使用cattle方法的一大好處就是,你可以在商用硬件上進(jìn)行水平擴(kuò)展。

這樣一來(lái),你就可以有很大的彈性來(lái)實(shí)施混合云。只要你愿意,一部分可以部署在premise環(huán)境中,一部分部署在公有云上,也可以部署在不同的云提供商的IaaS架構(gòu)上。

更重要的是,從一名運(yùn)維者的角度上來(lái)看,cattle方法可以保證一個(gè)相當(dāng)好的睡眠質(zhì)量。因?yàn)槟阍僖膊粫?huì)像pets方法中那樣,凌晨3點(diǎn)被叫起來(lái)去更換一塊壞了的HDD或者將應(yīng)用重新部署到另一臺(tái)服務(wù)器上。

然而,cattle方法也帶來(lái)了一些挑戰(zhàn),主要包括以下兩個(gè)方面:

?

?

社交挑戰(zhàn)(Social challenges)

我敢說(shuō),大部分挑戰(zhàn)會(huì)來(lái)自于社交方面:我應(yīng)該怎么說(shuō)服我的老板呢?我怎么讓CTO買我的賬呢?我的同事們會(huì)反對(duì)這種新的做法嗎?這是不是意味著我們只需要更少的人來(lái)維護(hù)基礎(chǔ)架構(gòu)?現(xiàn)在,對(duì)于這個(gè)問(wèn)題,我還不能提供一個(gè)完整有效的解決方案。你可以買一本《鳳凰項(xiàng)目》,從中你可能可以找到答案。

?

技術(shù)挑戰(zhàn)(Technical challenges)

這個(gè)方面主要包括:機(jī)器的準(zhǔn)備機(jī)制(provisioning mechanism)如何選擇(例如,使用Ansible來(lái)部署Mesos Agents);在容器之間、在容器和外界之間如何通信;如何保證容器的自動(dòng)部署并能被尋址(consequently findable)。

?

Docker網(wǎng)絡(luò)和服務(wù)發(fā)現(xiàn)棧

我們?cè)趫D1-1中描述了整個(gè)技術(shù)棧,包括以下內(nèi)容:

?

?

底層的網(wǎng)絡(luò)層(The low-level networking layer)

這一層包括一系列網(wǎng)絡(luò)工具:?iptables、路由、IPVLAN和Linux命名空間。你通常不需要知道其中的細(xì)節(jié),除非你是在網(wǎng)絡(luò)組,但是你需要意識(shí)到這一點(diǎn)。關(guān)于這一課題的更多信息,可以參考Docker網(wǎng)絡(luò)基礎(chǔ)

?

Docker網(wǎng)絡(luò)層

這一層封裝了底層的網(wǎng)絡(luò)層,提供各種抽象模型,例如單主機(jī)橋網(wǎng)絡(luò)模式、多主機(jī)的每個(gè)容器一個(gè)IP地址的解決方案。在第2章和第3章中有相關(guān)介紹。

?

服務(wù)發(fā)現(xiàn)層/容器編排層

這里,我們將容器調(diào)度定義為通過(guò)底層提供的基本原語(yǔ)(primitives)決定將容器放在哪里。第4章提到了服務(wù)發(fā)現(xiàn)的必要背景,第5章從容器編排的角度講解了網(wǎng)絡(luò)和服務(wù)發(fā)現(xiàn)。

軟件定義網(wǎng)絡(luò)(SDN)

SDN真的是一個(gè)市場(chǎng)術(shù)語(yǔ)(umbrella term或者marketing term),它可以提供VM帶來(lái)的網(wǎng)絡(luò)優(yōu)勢(shì),就像裸機(jī)服務(wù)器(bare-metal servers)一樣。網(wǎng)絡(luò)管理團(tuán)隊(duì)會(huì)變得更加敏捷,對(duì)商業(yè)需求的變化反應(yīng)更加迅速。另一種看法是:SDN是一種使用軟件來(lái)定義網(wǎng)絡(luò)的配置方式,可能是通過(guò)API構(gòu)建、通過(guò)NFV構(gòu)建,或者由Docker網(wǎng)絡(luò)來(lái)提供SDN。

如果你是一名開發(fā)者或架構(gòu)師,我建議你看一下Cisco對(duì)于該課題的觀點(diǎn)和SDxCentral的文章What’s Software-Defined Networking (SDN)?

?


圖 1-1

如果你在網(wǎng)絡(luò)運(yùn)維組的話,你可能已經(jīng)準(zhǔn)備好進(jìn)入下一章了。然而,如果你是架構(gòu)師或者開發(fā)者的話,對(duì)于網(wǎng)絡(luò)知識(shí)可能有點(diǎn)生疏了,我建議你讀一下Linux Network Administrators Guide來(lái)復(fù)習(xí)一下相關(guān)知識(shí)。

?

我需要All-In嗎?

在各種會(huì)議和用戶組中,我經(jīng)常遇到一些人,他們對(duì)于容器領(lǐng)域的機(jī)會(huì)非常興奮,同時(shí)他們也擔(dān)心在從容器中受益之前需要投入多少。以下的表格是對(duì)于我了解的各種部署的非正式的總結(jié)(按照階段不同排序)。

?

?


需要注意的是,不是所有的例子都使用Docker容器(顯而易見(jiàn)的是,Google并不使用Docker容器)。其中,某些正在著手使用Docker,例如,在ad-hoc階段;某些正在轉(zhuǎn)向full-down階段,例如Uber,請(qǐng)看ContainerSched 2015 London中的演講。最后重要的一點(diǎn)是,這些階段與部署的大小是沒(méi)有必然關(guān)系的。例如,Gutefrage.de只有六臺(tái)裸機(jī)服務(wù)器,仍然使用Apache Mesos來(lái)管理它們。?

在繼續(xù)之前,還有最后一點(diǎn):到目前為止,你可能已經(jīng)注意到了我們處理的是分布式系統(tǒng)。由于我們總是希望將容器部署到一個(gè)集群中,我強(qiáng)烈建議你讀一下分布式計(jì)算的謬論,以防你不熟悉這一主題。

現(xiàn)在言歸正傳,讓我們進(jìn)入Docker網(wǎng)絡(luò)這一主題。

?

Docker網(wǎng)絡(luò)基礎(chǔ)

在我們進(jìn)入網(wǎng)絡(luò)細(xì)節(jié)之前,我們先來(lái)看一看在單主機(jī)上發(fā)生了什么。Docker容器需要運(yùn)行在一臺(tái)宿主機(jī)上,可以是一臺(tái)物理機(jī)(on-premise數(shù)據(jù)中心中的裸機(jī)服務(wù)器),也可以是on-prem或云上的一臺(tái)虛擬機(jī)。就像圖2-1中描述的那樣,宿主機(jī)上運(yùn)行了Docker的daemon進(jìn)程和客戶端,一方面可以與Docker registry交互,另一方面可以啟動(dòng)、關(guān)閉和審查容器。

?

?


圖 2-1
宿主機(jī)和容器的關(guān)系是1:N,這以為這一臺(tái)宿主機(jī)上可以運(yùn)行多個(gè)容器。例如,從Facebook的報(bào)告來(lái)看,取決于機(jī)器的能力,每臺(tái)宿主機(jī)上平均可以運(yùn)行10到40個(gè)容器。另一個(gè)數(shù)據(jù)是:在Mesosphere,我們發(fā)現(xiàn),在裸機(jī)服務(wù)器上的各種負(fù)載測(cè)試中,每臺(tái)宿主機(jī)上不超過(guò)250個(gè)容器是可能的。

無(wú)論你是在單主機(jī)上進(jìn)行部署,還是在集群上部署,你總得和網(wǎng)絡(luò)打交道:

?

  • 對(duì)于大多數(shù)單主機(jī)部署來(lái)說(shuō),問(wèn)題歸結(jié)于是使用共享卷進(jìn)行數(shù)據(jù)交換,還是使用網(wǎng)絡(luò)(基于HTTP或者其他的)進(jìn)行數(shù)據(jù)交換。盡管Docker數(shù)據(jù)卷很容易使用,它也引入了緊耦合,這意味著很難將單主機(jī)部署轉(zhuǎn)化為多主機(jī)部署。自然地,共享卷的優(yōu)勢(shì)是速度。
  • 在多主機(jī)部署中,你需要考慮兩個(gè)方面:單主機(jī)上的容器之間如何通信和多主機(jī)之間的通信路徑是怎樣的。性能考量和安全方面都有可能影響你的設(shè)計(jì)決定。多主機(jī)部署通常是很有必要的,原因是單主機(jī)的能力有限(請(qǐng)看前面關(guān)于宿主機(jī)上容器的平均數(shù)量和最大數(shù)量的討論),也可能是因?yàn)樾枰渴鸱植际较到y(tǒng),例如Apache Spark、HDFS和Cassandra。


分布式系統(tǒng)和數(shù)據(jù)本地化(Distributed Systems and Data Locality)

使用分布式系統(tǒng)(計(jì)算或存儲(chǔ))的基本想法是想從并行處理中獲利,通常伴隨著數(shù)據(jù)本地化。數(shù)據(jù)本地化,我指的是將代碼轉(zhuǎn)移到數(shù)據(jù)所在地的原則,而不是傳統(tǒng)的、其他的方式。考慮下以下的場(chǎng)景:如果你的數(shù)據(jù)集是TB級(jí)的,而代碼是MB級(jí)的,那么在集群中移動(dòng)代碼比傳輸TB級(jí)數(shù)據(jù)更高效。除了可以并行處理數(shù)據(jù)之外,分布式系統(tǒng)還可以提供容錯(cuò)性,因?yàn)橄到y(tǒng)中的一部分可以相對(duì)獨(dú)立地工作。

本章主要討論單主機(jī)中的網(wǎng)絡(luò),在第3章中,我們將介紹多主機(jī)場(chǎng)景。

簡(jiǎn)單地說(shuō),Docker網(wǎng)絡(luò)是原生的容器SDN解決方案。總而言之,Docker網(wǎng)絡(luò)有四種模式:橋模式,主機(jī)模式,容器模式和無(wú)網(wǎng)絡(luò)模式。我們會(huì)詳細(xì)地討論單主機(jī)上的各種網(wǎng)絡(luò)模式,在本章的最后,我們還會(huì)討論一些常規(guī)主題,比如安全。

?

?

bridge模式網(wǎng)絡(luò)

在該模式(見(jiàn)圖2-2)中,Docker守護(hù)進(jìn)程創(chuàng)建了一個(gè)虛擬以太網(wǎng)橋docker0,附加在其上的任何網(wǎng)卡之間都能自動(dòng)轉(zhuǎn)發(fā)數(shù)據(jù)包。默認(rèn)情況下,守護(hù)進(jìn)程會(huì)創(chuàng)建一對(duì)對(duì)等接口,將其中一個(gè)接口設(shè)置為容器的eth0接口,另一個(gè)接口放置在宿主機(jī)的命名空間中,從而將宿主機(jī)上的所有容器都連接到這個(gè)內(nèi)部網(wǎng)絡(luò)上。同時(shí),守護(hù)進(jìn)程還會(huì)從網(wǎng)橋的私有地址空間中分配一個(gè)IP地址和子網(wǎng)給該容器。

例2-1

?

?

$?docker?run?-d?-P?--net=bridge?nginx:1.9.1 $?docker?ps CONTAINER?ID???IMAGE??????????????????COMMAND????CREATED STATUS?????????PORTS??????????????????NAMES 17d447b7425d???nginx:1.9.1????????????nginx?-g???19?seconds?ago Up?18?seconds??0.0.0.0:49153->443/tcp,0.0.0.0:49154->80/tcp??trusting_feynman

?

?

注意:
因?yàn)閎ridge模式是Docker的默認(rèn)設(shè)置,所以你也可以使用docker run -d -P nginx:1.9.1。如果你沒(méi)有使用-P(發(fā)布該容器暴露的所有端口)或者-p host_port:container_port(發(fā)布某個(gè)特定端口),IP數(shù)據(jù)包就不能從宿主機(jī)之外路由到容器中。

?

?


圖 2-2

?

?

小技巧:
在生產(chǎn)環(huán)境中,我建議使用Docker的host模式(將會(huì)在下一小節(jié)Host模式網(wǎng)路中討論),并輔以第3章中的某個(gè)SDN解決方案。進(jìn)一步地,為了控制容器間的網(wǎng)絡(luò)通信,你可以使用flags參數(shù):--iptables和-icc。

?

?

Host模式網(wǎng)絡(luò)

該模式將禁用Docker容器的網(wǎng)絡(luò)隔離。因?yàn)槿萜鞴蚕砹怂拗鳈C(jī)的網(wǎng)絡(luò)命名空間,直接暴露在公共網(wǎng)絡(luò)中。因此,你需要通過(guò)端口映射(port mapping)來(lái)進(jìn)行協(xié)調(diào)。

?

例2-2 $?docker?run?-d?--net=host?ubuntu:14.04?tail?-f?/dev/null $?ip?addr?|?grep?-A?2?eth0: 2:?eth0:?<BROADCAST,MULTICAST,UP,LOWER_UP>?mtu?9001?qdisc?mq?state?UP?group?default?qlen?1000 link/ether?06:58:2b:07:d5:f3?brd?ff:ff:ff:ff:ff:ff inet?**10.0.7.197**/22?brd?10.0.7.255?scope?global?dynamic?eth0$?docker?ps CONTAINER?ID??IMAGE?????????COMMAND??CREATED STATUS????????PORTS?????????NAMES b44d7d5d3903??ubuntu:14.04??tail?-f??2?seconds?ago Up?2?seconds????????????????jovial_blackwell $?docker?exec?-it?b44d7d5d3903?ip?addr 2:?eth0:?<BROADCAST,MULTICAST,UP,LOWER_UP>?mtu?9001?qdisc?mq?state?UP?group?default?qlen?1000 link/ether?06:58:2b:07:d5:f3?brd?ff:ff:ff:ff:ff:ff inet?**10.0.7.197**/22?brd?10.0.7.255?scope?global?dynamic?eth0


我們可以從例2-2中看到:容器和宿主機(jī)具有相同的IP地址10.0.7.197

在圖2-3中,我們可以看到:當(dāng)使用host模式網(wǎng)絡(luò)時(shí),容器實(shí)際上繼承了宿主機(jī)的IP地址。該模式比bridge模式更快(因?yàn)闆](méi)有路由開銷),但是它將容器直接暴露在公共網(wǎng)絡(luò)中,是有安全隱患的。

?


圖 2-3

?

Container模式網(wǎng)絡(luò)

該模式會(huì)重用另一個(gè)容器的網(wǎng)絡(luò)命名空間。通常來(lái)說(shuō),當(dāng)你想要自定義網(wǎng)絡(luò)棧時(shí),該模式是很有用的。實(shí)際上,該模式也是Kubernetes使用的網(wǎng)絡(luò)模式,你可以在這里了解更多內(nèi)容。

例2-3

?

?

$?docker?run?-d?-P?--net=bridge?nginx:1.9.1 $?docker?ps CONTAINER?ID??IMAGE????????COMMAND???CREATED?????????STATUS PORTS??????????????????????NAMES eb19088be8a0??nginx:1.9.1??nginx?-g??3?minutes?ago???Up?3?minutes 0.0.0.0:32769->80/tcp, 0.0.0.0:32768->443/tcp?????admiring_engelbart $?docker?exec?-it?admiring_engelbart?ip?addr 8:?eth0@if9:?<BROADCAST,MULTICAST,UP,LOWER_UP>?mtu?9001?qdisc?noqueue?state?UP?group?default link/ether?02:42:ac:11:00:03?brd?ff:ff:ff:ff:ff:ff inet?**172.17.0.3**/16?scope?global?eth0$?docker?run?-it?--net=container:admiring_engelbart?ubuntu:14.04?ip?addr ... 8:?eth0@if9:?<BROADCAST,MULTICAST,UP,LOWER_UP>?mtu?9001?qdisc?noqueue?state?UP?group?default link/ether?02:42:ac:11:00:03?brd?ff:ff:ff:ff:ff:ff inet?**172.17.0.3**/16?scope?global?eth0


結(jié)果(例2-3)顯示:第二個(gè)容器使用了--net=container參數(shù),因此和第一個(gè)容器admiring_engelbart具有相同的IP地址172.17.0.3

?

None模式網(wǎng)絡(luò)

該模式將容器放置在它自己的網(wǎng)絡(luò)棧中,但是并不進(jìn)行任何配置。實(shí)際上,該模式關(guān)閉了容器的網(wǎng)絡(luò)功能,在以下兩種情況下是有用的:容器并不需要網(wǎng)絡(luò)(例如只需要寫磁盤卷的批處理任務(wù));你希望自定義網(wǎng)絡(luò),在第3章中有很多選項(xiàng)使用了該模式。

例2-4

?

?

$?docker?run?-d?-P?--net=none?nginx:1.9.1 $?docker?ps CONTAINER?ID??IMAGE??????????COMMAND???CREATED STATUS????????PORTS??????????NAMES d8c26d68037c??nginx:1.9.1????nginx?-g??2?minutes?ago Up?2?minutes?????????????????grave_perlman $??docker?inspect?d8c26d68037c?|?grep?IPAddress "IPAddress":?"", "SecondaryIPAddresses":?null,


在例2-4中可以看到,恰如我們所料,網(wǎng)絡(luò)沒(méi)有任何配置。

你可以在Docker官方文檔中讀到更多關(guān)于Docker網(wǎng)絡(luò)的配置。

?

?

注意:
本書中的所有Docker命令都是在CoreOS環(huán)境中執(zhí)行的,Docker客戶端和服務(wù)端的版本都是1.7.1。

?

?

更多話題

在本章中,我們了解了Docker單主機(jī)網(wǎng)絡(luò)的四種基本模式。現(xiàn)在我們討論下你應(yīng)該了解的其他主題(這與多主機(jī)部署也是相關(guān)的):

?

分配IP地址

頻繁大量的創(chuàng)建和銷毀容器時(shí),手動(dòng)分配IP地址是不能接受的。bridge模式可以在一定程度上解決這個(gè)問(wèn)題。為了防止本地網(wǎng)絡(luò)上的ARP沖突,Docker Daemon會(huì)根據(jù)分配的IP地址生成一個(gè)隨機(jī)地MAC地址。在下一章中,我們會(huì)再次討論分配地址的挑戰(zhàn)。

?

分配端口

你會(huì)發(fā)現(xiàn)有兩大陣營(yíng):固定端口分配(fixed-port-allocation)和動(dòng)態(tài)端口分配(dynamically-port-allocation)。每個(gè)服務(wù)或者應(yīng)用可以有各自的分配方法,也可以是作為全局的策略,但是你必須做出自己的判斷和決定。請(qǐng)記住,bridge模式中,Docker會(huì)自動(dòng)分配UDP或TCP端口,并使其可路由。

?

網(wǎng)絡(luò)安全

Docker可以開啟容器間通信(意味著默認(rèn)配置--icc=true),也就是說(shuō),宿主機(jī)上的所有容器可以不受任何限制地相互通信,這可能導(dǎo)致拒絕服務(wù)攻擊。進(jìn)一步地,Docker可以通過(guò)--ip_forward--iptables兩個(gè)選項(xiàng)控制容器間、容器和外部世界的通信。你應(yīng)該了解這些選項(xiàng)的默認(rèn)值,并讓網(wǎng)絡(luò)組根據(jù)公司策略設(shè)置Docker進(jìn)程。可以讀一下StackEngine的Boyd Hemphill寫的文章Docker security analysis

另一個(gè)網(wǎng)絡(luò)安全方面是線上加密(on-the-wire encryption),通常是指RFC 5246中定義的TLS/SSL。注意,在寫本書時(shí),這一方面還很少被討論,實(shí)際上,只有兩個(gè)系統(tǒng)(下一章會(huì)詳細(xì)討論)提供了這個(gè)特性:Weave使用NACl,OpenVPN是基于TLS的。根據(jù)我從Docker的安全負(fù)責(zé)人Diogo Mónica那里了解的情況,v1.9之后可能加入線上加密功能。

最后,可以讀一下Adrian Mouat的Using Docker,其中詳細(xì)地介紹了網(wǎng)絡(luò)安全方面。

?

?

小技巧: 自動(dòng)Docker安全檢查 為了對(duì)部署在生產(chǎn)環(huán)境中的Docker容器進(jìn)行安全檢查,我強(qiáng)烈建議使用The Docker Bench for Security。

現(xiàn)在,我們對(duì)單主機(jī)場(chǎng)景有了一個(gè)基本的了解,讓我們繼續(xù)看一下更有效的案例:多主機(jī)網(wǎng)絡(luò)環(huán)境。

?

?

?

Docker多主機(jī)網(wǎng)絡(luò)

只要是在單主機(jī)上使用Docker的話,那么上一章中介紹的技術(shù)就足夠了。然而,如果一臺(tái)宿主機(jī)的能力不足以應(yīng)付工作負(fù)載,要么買一個(gè)更高配置的宿主機(jī)(垂直擴(kuò)展),要么你添加更多同類型的機(jī)器(水平擴(kuò)展)。

對(duì)于后者,你會(huì)搭建一個(gè)集群。那么,就出現(xiàn)了一系列問(wèn)題:不同宿主機(jī)上的容器之間如何相互通信?如何控制容器間、容器和外部世界之間的通信?怎么保存狀態(tài),如IP地址分配、集群內(nèi)保持一致性等?如何與現(xiàn)有的網(wǎng)絡(luò)基礎(chǔ)架構(gòu)結(jié)合?安全策略呢?

為了解決這些問(wèn)題,在本章中,我們會(huì)討論多主機(jī)網(wǎng)絡(luò)的各種技術(shù)。

?

?

?

注意:
對(duì)于本章中介紹的各種選項(xiàng),請(qǐng)記住Docker信奉的是“batteries included but replaceable”,也就是說(shuō),總會(huì)有一個(gè)默認(rèn)功能(如網(wǎng)絡(luò)、服務(wù)發(fā)現(xiàn)),但是你可以使用其他方案來(lái)替代。

?

?

Overlay

2015年3月,Docker, Inc.收購(gòu)了軟件定義網(wǎng)絡(luò)(SDN)的創(chuàng)業(yè)公司SocketPlane,并更名為Docker Overlay驅(qū)動(dòng),作為多主機(jī)網(wǎng)絡(luò)的默認(rèn)配置(在Docker 1.9以后)。Overlay驅(qū)動(dòng)通過(guò)點(diǎn)對(duì)點(diǎn)(peer-to-peer)通信擴(kuò)展了通常的bridge模式,并使用一個(gè)可插拔的key-value數(shù)據(jù)庫(kù)后端(如Consul、etcd和ZooKeeper)來(lái)分發(fā)集群狀態(tài)。

?

Flannel

CoreOS?Flannel是一個(gè)虛擬網(wǎng)絡(luò),分配給每個(gè)宿主機(jī)一個(gè)子網(wǎng)。集群中的每個(gè)容器(或者說(shuō)是Kubernetes中的pod)都有一個(gè)唯一的、可路由的IP地址,并且支持以下一系列后端:VXLAN、AWS VPC和默認(rèn)的2層UDP overlay網(wǎng)絡(luò)。flannel的優(yōu)勢(shì)是它降低了端口映射的復(fù)雜性。例如,Red Hat的Atomic項(xiàng)目使用的就是flannel

?

?

Weave

Weaveworks?Weave創(chuàng)建了一個(gè)虛擬網(wǎng)絡(luò),用來(lái)連接部署在多主機(jī)上的Docker容器。應(yīng)用使用網(wǎng)絡(luò)的方式就像是容器直接插入到同一個(gè)網(wǎng)絡(luò)交換機(jī)上,不需要配置端口映射和連接。Weave網(wǎng)絡(luò)上的應(yīng)用容器提供的服務(wù)可以直接在公共網(wǎng)絡(luò)上訪問(wèn),無(wú)論這些容器在哪里運(yùn)行。同樣的,無(wú)論位置在哪,現(xiàn)有的內(nèi)部系統(tǒng)都是暴露給應(yīng)用容器的。Weave可以穿越防火墻,在部分連接的網(wǎng)絡(luò)中運(yùn)行。流量可以加密,允許主機(jī)跨越非授信網(wǎng)絡(luò)進(jìn)行連接。你可以從Alvaro Saurin的文章Automating Weave Deployment on Docker Hosts with Weave Discovery中學(xué)習(xí)到Weave的更多特性。

?

?

Project Calico

Metaswitch的Calico項(xiàng)目使用標(biāo)準(zhǔn)IP路由,嚴(yán)格的說(shuō)是RFC 1105中定義的邊界網(wǎng)關(guān)協(xié)議(Border Gateway Protocol,簡(jiǎn)稱BGP),并能使用網(wǎng)絡(luò)工具提供3層解決方案。相反,大多數(shù)其他的網(wǎng)絡(luò)解決方案(包括Weave)是通過(guò)封裝2層流量到更高層來(lái)構(gòu)建一個(gè)overlay網(wǎng)絡(luò)。主操作模式不需要任何封裝,是為可以控制物理網(wǎng)絡(luò)結(jié)構(gòu)的組織的數(shù)據(jù)中心設(shè)計(jì)的。

?

?

Open vSwitch

Open vSwitch是一個(gè)多層虛擬交換機(jī),通過(guò)可編程擴(kuò)展來(lái)實(shí)現(xiàn)網(wǎng)絡(luò)自動(dòng)化,支持標(biāo)準(zhǔn)管理接口和協(xié)議,如NetFlow、IPFIX、LACP和802.1ag。除此之外,它還支持在多個(gè)物理服務(wù)器上分發(fā),和VMware的vNetwork distributed vSwitch、Cisco的Nexus 1000V類似。

?

?

Pipework

Pipework由著名的Docker工程師Jér?me Petazzoni創(chuàng)建,稱為L(zhǎng)inux容器的軟件定義網(wǎng)絡(luò)。它允許你使用cgroups和namespace在任意復(fù)雜的場(chǎng)景中連接容器,并與LXC容器或者Docker兼容。由于Docker, Inc.收購(gòu)了SocketPlane并引入了Overlay Driver,我們必須看一下這些技術(shù)如何融合。

?

?

OpenVPN

OpenVPN,另一個(gè)有商業(yè)版本的開源項(xiàng)目,運(yùn)行你創(chuàng)建使用TLS的虛擬私有網(wǎng)絡(luò)(virtual private networks,簡(jiǎn)稱VPN)。這些VPN也可以安全地跨越公共網(wǎng)絡(luò)連接容器。如果你想嘗試一下基于Docker的配置,我建議看一下DigitalOcean很贊的教程How To Run OpenVPN in a Docker Container on Ubuntu 14.04

?

?

未來(lái)的Docker網(wǎng)絡(luò)

在最近發(fā)布的Docker v1.9中,引入了一個(gè)新的命令docker network。容器可以動(dòng)態(tài)地連接到其他網(wǎng)絡(luò)上,每個(gè)網(wǎng)絡(luò)都可以由不同的網(wǎng)絡(luò)驅(qū)動(dòng)來(lái)支持。默認(rèn)的多主機(jī)網(wǎng)絡(luò)驅(qū)動(dòng)是Overlay

為了了解更多實(shí)踐經(jīng)驗(yàn),我建議看一下以下博客:

?

?

  • Aleksandr Tarasov的Splendors and Miseries of Docker Network
  • Calico項(xiàng)目的Docker libnetwork Is Almost Here, and Calico Is Ready!
  • Weave Works的Life and Docker Networking – One Year On

?

?

更多話題

在本章中,我們討論了多主機(jī)網(wǎng)絡(luò)中的各種解決方案。這一小節(jié)會(huì)簡(jiǎn)要介紹一下其他需要了解的話題:

?

?

IPVLAN

Linux內(nèi)核v3.19引入了每個(gè)容器一個(gè)IP地址的特性,它分配給主機(jī)上的每個(gè)容器一個(gè)唯一的、可路由的IP地址。實(shí)際上,IPVLAN使用一個(gè)網(wǎng)卡接口,創(chuàng)建了多個(gè)虛擬的網(wǎng)卡接口,并分配了不同的MAC地址。這個(gè)相對(duì)較新的特性是由Google的Mahesh Bandewar貢獻(xiàn)的,與macvlan驅(qū)動(dòng)類似,但是更加靈活,因?yàn)樗梢酝瑫r(shí)使用在L2和L3上。如果你的Linux發(fā)行版已經(jīng)使用了高于3.19的內(nèi)核,那么你很幸運(yùn);否則,你就無(wú)法享受這個(gè)新功能。

?

IP地址管理(IPAM)

多主機(jī)網(wǎng)絡(luò)中,最大的挑戰(zhàn)之一就是集群中容器的IP地址分配

?

編排工具兼容性

本章中討論的大多數(shù)多主機(jī)網(wǎng)絡(luò)解決方案都是封裝了Docker API,并配置網(wǎng)絡(luò)。也就是說(shuō),在你選擇其中一個(gè)之前,你需要檢查與容器編排工具的可兼容性。更多主題,請(qǐng)看第5章。

?

IPv4 vs. IPv6

到目前為止,大多數(shù)Docker部署使用的是標(biāo)準(zhǔn)IPv4,但是IPv6正在迎頭趕上。Docker從v1.5(2015年2月發(fā)布)開始支持IPv6。IPv4的持續(xù)減少將會(huì)導(dǎo)致越來(lái)越多的IPv6部署,也可以擺脫NATs。然而,什么時(shí)候轉(zhuǎn)變完成還不清楚。

現(xiàn)在,你已經(jīng)對(duì)底層網(wǎng)絡(luò)和Docker網(wǎng)絡(luò)的解決方案有了充分理解,讓我們進(jìn)入下一個(gè)內(nèi)容:服務(wù)發(fā)現(xiàn)。

?

容器和服務(wù)發(fā)現(xiàn)

管理基礎(chǔ)架構(gòu)的cattle方法的最大挑戰(zhàn)就是服務(wù)發(fā)現(xiàn)。服務(wù)發(fā)現(xiàn)和容器調(diào)度是一枚硬幣的兩面。如果你使用cattle方法的話,那么你會(huì)把所有機(jī)器看做相同的,你不會(huì)手動(dòng)分配某臺(tái)機(jī)器給某個(gè)應(yīng)用。相反,你會(huì)使用調(diào)度軟件來(lái)管理容器的生命周期。

那么,問(wèn)題就來(lái)了:如何決定容器被調(diào)度到哪臺(tái)宿主機(jī)上?答對(duì)了,這就是服務(wù)發(fā)現(xiàn)。我們會(huì)在第5章詳細(xì)討論硬幣的另一面:容器編排。

?

?

挑戰(zhàn)

服務(wù)發(fā)現(xiàn)已經(jīng)出現(xiàn)了一段時(shí)間了,被認(rèn)為是zeroconf的一部分。

zeroconf

zeroconf的想法是自動(dòng)化創(chuàng)建和管理計(jì)算機(jī)網(wǎng)絡(luò),自動(dòng)分配網(wǎng)絡(luò)地址,自動(dòng)分發(fā)和解析主機(jī)名,自動(dòng)管理網(wǎng)絡(luò)服務(wù)。

對(duì)于Docker容器來(lái)說(shuō),這個(gè)挑戰(zhàn)歸結(jié)于穩(wěn)定地維護(hù)運(yùn)行中容器和位置(location)的映射關(guān)系。位置這里指的是IP地址(啟動(dòng)容器的宿主機(jī)地址)和可被訪問(wèn)的端口。這個(gè)映射必須及時(shí)完成,并在集群中準(zhǔn)確地重啟容器。容器的服務(wù)發(fā)現(xiàn)解決方案必須支持以下兩個(gè)操作:

?

?

注冊(cè)(Register)

建立container->location的映射。因?yàn)橹挥腥萜髡{(diào)度器才知道容器運(yùn)行在哪,我們可以把該映射當(dāng)做容器位置的“絕對(duì)真理”(the absolute source of truth)。

?

查詢(Lookup)

其他服務(wù)或應(yīng)用可以查詢我們存儲(chǔ)的映射關(guān)系,屬性包括信息的實(shí)時(shí)性和查詢延遲。

讓我們看一下在選擇過(guò)程中相對(duì)獨(dú)立的幾點(diǎn)考慮:

?

  • 除了簡(jiǎn)單地向一個(gè)特定方向發(fā)送請(qǐng)求之外,怎么從搜索路徑中排除不健康的宿主機(jī)和掛掉的容器?你已經(jīng)猜到了,這是和負(fù)載均衡高度相關(guān)的主題,因?yàn)檫@是很重要的,所以本章的最后一小節(jié)將討論這一主題。
  • 有人認(rèn)為這是實(shí)現(xiàn)細(xì)節(jié),也有人認(rèn)為需要考慮CAP三要素。在選擇服務(wù)發(fā)現(xiàn)工具時(shí),需要考慮選擇強(qiáng)一致性(strong consistency)還是高可用性(high availability)。至少你要意識(shí)到這一點(diǎn)。
  • 可擴(kuò)展性也會(huì)影響你的選擇。當(dāng)然,如果你只有少量的節(jié)點(diǎn)需要管理,那么上面討論的解決方案就夠用了。然而,如果你的集群有100多個(gè)節(jié)點(diǎn),甚至1000個(gè)節(jié)點(diǎn),那么在選擇某一項(xiàng)特定技術(shù)之前,你必須做一些負(fù)載測(cè)試。

?

?

CAP理論

1998年,Eric Brewer提出了分布式系統(tǒng)的CAP理論。CAP代表了一致性(consistency)、可用性(availability)和分區(qū)容錯(cuò)性(partition tolerance):?


一致性
分布式系統(tǒng)的所有節(jié)點(diǎn)同時(shí)看到相同的數(shù)據(jù)。?
可用性
保證每個(gè)請(qǐng)求都能得到響應(yīng),無(wú)論該響應(yīng)是成功還是失敗。
分區(qū)容錯(cuò)性?
無(wú)論哪塊分區(qū)由于網(wǎng)絡(luò)故障而失效,分布式系統(tǒng)都可以繼續(xù)運(yùn)行。
CAP理論在分布式系統(tǒng)的實(shí)踐中已經(jīng)討論多次了。你會(huì)聽(tīng)到人們主要討論強(qiáng)一致性 vs 最終一致性,我建議讀一下Martin Kleppmann的論文A Critique of the CAP Theorem。該論文提出了一種不同的、更實(shí)際的思考CAP的方法,特別是一致性。

如果你想了解該領(lǐng)域更多的需求和根本的挑戰(zhàn),可以讀一下Jeff Lindsay的Understanding Modern Service Discovery with Docker和Shopify的Simon Eskildsen在DockerCon分享的內(nèi)容

?

?

技術(shù)

該小節(jié)介紹了各種技術(shù)和它們的優(yōu)缺點(diǎn),并提供了網(wǎng)上的更多資源(如果你想獲得這些技術(shù)的實(shí)踐經(jīng)驗(yàn),你可以看看Adrian Mouat的書Using Docker)。

?

?

ZooKeeper

Apache?ZooKeeper是ASF的頂級(jí)項(xiàng)目,基于JVM的集中式配置管理工具,提供了與Google的Chubby相兼容的功能。ZooKeeper(ZK)將數(shù)據(jù)載荷組織成文件系統(tǒng),成為znodes的層級(jí)結(jié)構(gòu)。在集群中,選舉出一個(gè)leader節(jié)點(diǎn),客戶端能夠連接到服務(wù)器中的任意一個(gè)來(lái)獲取數(shù)據(jù)。一個(gè)ZK集群中需要2n+1個(gè)節(jié)點(diǎn)。最常見(jiàn)的配置是3、5、7個(gè)節(jié)點(diǎn)。

ZooKeeper是經(jīng)戰(zhàn)場(chǎng)證明的、成熟的、可擴(kuò)展的解決方案,但是也有一下缺點(diǎn)。有些人認(rèn)為ZK集群的安裝和管理不是一個(gè)令人愉快的體驗(yàn)。我碰到的大多數(shù)ZK問(wèn)題都是因?yàn)槟硞€(gè)服務(wù)(我想到了Apache Storm)錯(cuò)誤地使用了它。它們可能在znodes里放入了太多數(shù)據(jù),更糟糕的是,他們的讀寫率很不健康(unhealthy read-write ratio),特別是寫得太快。如果你打算使用ZK的話,至少考慮使用高層接口。例如,Apache Curator封裝了ZK,提供了大量的方法;Netflix的Exhibitor可以管理和監(jiān)控一個(gè)ZK集群。

從圖4-1可以看出,你可以看到兩個(gè)組件:R/W(作為注冊(cè)監(jiān)控器(registration watcher),你需要自己提供)和NGINX(被R/W控制)。當(dāng)一個(gè)容器被調(diào)度到一個(gè)節(jié)點(diǎn)上時(shí),它會(huì)在ZK中注冊(cè),使用一個(gè)路徑為/$nodeID/$containerID的znode,IP地址作為數(shù)據(jù)載荷。R/W監(jiān)控znodes節(jié)點(diǎn)的變化,然后相應(yīng)地配置NGINX。這種方法對(duì)于HAProxy和其他負(fù)載均衡器也同樣有效。

?


圖 4-1

?

etcd

etcd是由CoreOS團(tuán)隊(duì)使用Go語(yǔ)言編寫的。它是一個(gè)輕量級(jí)的、分布式鍵值對(duì)數(shù)據(jù)庫(kù),使用Raft算法實(shí)現(xiàn)一致性(帶有l(wèi)eader選舉的leader-follower模型),在集群中使用復(fù)制日志(replicated log)向followers分發(fā)lead收到的寫請(qǐng)求。從某種意義上說(shuō),在概念上,etcd和ZK是相當(dāng)類似的。雖然負(fù)載數(shù)據(jù)是任意的,但是etcd的HTTP API是基于JSON的。就像ZK一樣,你可以觀察到etcd保存的值的變化。etcd的一個(gè)非常有用的特性是鍵的TTL,是服務(wù)發(fā)現(xiàn)的重要的一個(gè)結(jié)構(gòu)單元。和ZK一樣,一個(gè)etcd集群至少需要2n+1個(gè)節(jié)點(diǎn)。

etcd的安全模型支持基于TLS/SSL和客戶端證書加密的線上加密(on-the-wire encryption),加密可以發(fā)生在客戶端和集群之間,也可以在etcd節(jié)點(diǎn)之間。

在圖4-2中,你可以看到etcd服務(wù)發(fā)現(xiàn)的搭建和ZK是相當(dāng)類似的。主要區(qū)別在于etcd使用confd來(lái)配置NGINX,而不是使用自己編寫的腳本。和ZK一樣,這種搭建方法也適用于HAProxy或者其他負(fù)載均衡器。

?


圖 4-2

?

Consul

Consul是HashiCorp的產(chǎn)品,也是用Go語(yǔ)言寫的,功能有服務(wù)注冊(cè)、服務(wù)發(fā)現(xiàn)和健康檢查,可以使用HTTP API或者DNS來(lái)查詢服務(wù)。Consul支持多數(shù)據(jù)中心的部署。

Consul的其中一個(gè)特性是一個(gè)分布式鍵值對(duì)數(shù)據(jù)庫(kù),與etcd相似。它也是用Raft一致性算法(同樣需要2n+1個(gè)節(jié)點(diǎn)),但是部署方式是不同的。Consul有agent的概念,有兩種運(yùn)行方式:服務(wù)器模式(提供鍵值對(duì)數(shù)據(jù)庫(kù)和DNS)和客戶端模式(注冊(cè)服務(wù)和健康檢查),使用serf實(shí)現(xiàn)了成員和節(jié)點(diǎn)發(fā)現(xiàn)。

使用Consul,你有四種方式來(lái)實(shí)現(xiàn)服務(wù)發(fā)現(xiàn)(從最可取到最不可取):

?

  • 使用服務(wù)定義配置文件(service definition config file),由Consul agent解釋。
  • 使用traefik等工具,其中有Consul后端(backend)。
  • 編寫你自己的進(jìn)程通過(guò)HTTP API注冊(cè)服務(wù)。
  • 讓服務(wù)自己使用HTTP API來(lái)注冊(cè)服務(wù)。


想要學(xué)習(xí)Consul來(lái)做服務(wù)發(fā)現(xiàn)嗎?請(qǐng)閱讀這兩篇文章:Consul Service Discovery with DockerDocker DNS & Service Discovery with Consul and Registrator。?

?

?

純基于DNS的解決方案

在互聯(lián)網(wǎng)中,DNS經(jīng)受了數(shù)十年的戰(zhàn)場(chǎng)驗(yàn)證,是很健壯的。DNS系統(tǒng)的最終一致性、特定的客戶端強(qiáng)制性地(aggressively)緩存DNS查詢結(jié)果、對(duì)于SRV記錄的依賴這些因素使你明白這是正確的選擇。

本小節(jié)之所以叫做“純基于DNS的解決方案”的原因是,技術(shù)上講Consul也是用了DNS服務(wù)器,但這只是Consul做服務(wù)發(fā)現(xiàn)的其中一個(gè)選項(xiàng)。以下是著名的、常用的、純粹的基于DNS的服務(wù)發(fā)現(xiàn)解決方案:

?

?

Mesos-DNS

該解決方案是專門用于Apache Mesos的服務(wù)發(fā)現(xiàn)的。使用Go編寫,Mesos-DNS下拉任意任務(wù)的有效的Mesos Master進(jìn)程,并通過(guò)DNS或HTTP API暴露IP:PORT信息。對(duì)于其他主機(jī)名或服務(wù)的DNS請(qǐng)求,Mesos-DNS可以使用一個(gè)外部的域名服務(wù)器或者你的現(xiàn)有DNS服務(wù)器來(lái)轉(zhuǎn)發(fā)Mesos任務(wù)的請(qǐng)求到Mesos-DNS。

?

SkyDNS

使用etcd,你可以將你的服務(wù)通告給SkyDNS,SkyDNS在etcd中保存了服務(wù)定義,并更新DNS記錄。你的客戶端應(yīng)用發(fā)送DNS請(qǐng)求來(lái)發(fā)現(xiàn)服務(wù)。因此,在功能層面,SkyDNS與Consul是相當(dāng)類似的,只是沒(méi)有健康檢查。

?

WeaveDNS

WeaveDNS由Weave 0.9引入,作為Weave網(wǎng)絡(luò)的服務(wù)發(fā)現(xiàn)解決方案,允許容器按照主機(jī)名找到其他容器的IP地址。在Weave 1.1中,引入了所謂的Gossip DNS,通過(guò)緩存和超時(shí)功能使得查詢更加快速。在最新的實(shí)現(xiàn)中,注冊(cè)是廣播到所有參與的實(shí)例上,在內(nèi)存中保存所有條目,并在本地處理查詢。

?

Airbnb的SmartStack和Netflix的Eureka

在本小節(jié)中,我們將會(huì)看一下兩個(gè)定做的系統(tǒng),它們是用來(lái)解決特定的需求。這并不意味著你不能或者不應(yīng)該使用它們,你只是需要意識(shí)到它們。

Airbnb的SmartStack是一個(gè)自動(dòng)的服務(wù)發(fā)現(xiàn)和注冊(cè)框架,透明地處理創(chuàng)建、刪除、故障和維護(hù)工作。在容器運(yùn)行的同一個(gè)宿主機(jī)上,SmartStack使用了兩個(gè)分離的服務(wù):Nerve(寫到ZK)用于服務(wù)注冊(cè),Synapse(動(dòng)態(tài)配置HAProxy)用于查詢。這是一個(gè)針對(duì)非容器環(huán)境的完善的解決方案,隨著實(shí)踐推移,你會(huì)看到對(duì)于Docker,SmartStack也是有用的。

Netflix的Eureka則不同,它運(yùn)行在AWS環(huán)境中(Netflix全部運(yùn)行在AWS上)。Eureka是一個(gè)基于REST的服務(wù),用于定位服務(wù)以便負(fù)載均衡和中間件層服務(wù)器的故障遷移;Eureka還有一個(gè)基于Java的客戶端組件,可以直接與服務(wù)交互。這個(gè)客戶端有一個(gè)內(nèi)置的負(fù)載均衡器,可以做基本的round-robin的負(fù)載均衡。在Netflix,Eureka用于做red/black部署、Cassandra和memcached部署、承載應(yīng)用中關(guān)于服務(wù)的元數(shù)據(jù)。

Eureka集群在參與的節(jié)點(diǎn)之間異步地復(fù)制服務(wù)注冊(cè)信息;與ZK、etcd、Consul不同,Eureka相對(duì)于強(qiáng)一致性更傾向于服務(wù)可用性,讓客戶端自行處理過(guò)時(shí)的讀請(qǐng)求,優(yōu)點(diǎn)是在網(wǎng)絡(luò)分區(qū)上更有彈性。你也知道的:網(wǎng)絡(luò)是不可靠的

?

負(fù)載均衡

服務(wù)發(fā)現(xiàn)的一個(gè)方面是負(fù)載均衡,有的時(shí)候負(fù)載均衡被認(rèn)為是正交的,有的時(shí)候負(fù)載均衡被認(rèn)為是服務(wù)發(fā)現(xiàn)的一部分。它可以在很多容器之間分散負(fù)載(入站服務(wù)請(qǐng)求)。在容器和微服務(wù)的語(yǔ)境下,負(fù)載均衡同時(shí)具有以下功能:

?

?

  • 最大化吞吐量,最小化響應(yīng)時(shí)間
  • 防止熱點(diǎn)(hotspotting),例如單一容器過(guò)載
  • 可以處理過(guò)度激進(jìn)的DNS緩存(overly aggressive DNS caching)


以下列舉了一些有名的Docker中的負(fù)載均衡解決方案:
*?NGINX
*?HAProxy
*?Bamboo
*?Kube-Proxy
*?vulcand
*?Magnetic.io的vamp-router
*?moxy
*?HAProxy-SRV
*?Marathon的servicerouter.py
*?traefik

如果你想了解更多關(guān)于負(fù)載均衡的信息,請(qǐng)查看Mesos meetup視頻和nginx.conf 2014上關(guān)于NGINX和Consul的負(fù)載均衡的演講

?

?

更多話題

在本章的最后,我列舉了服務(wù)發(fā)現(xiàn)解決方案的一覽表。我并不想評(píng)出一個(gè)優(yōu)勝者,因?yàn)槲蚁嘈胚@取決于你的用例和需求。因此,把下表當(dāng)做一個(gè)快速定位和小結(jié):

?

?


最后請(qǐng)注意:服務(wù)發(fā)現(xiàn)領(lǐng)域在不斷變化中,每周都會(huì)出現(xiàn)新工具。例如,Uber最近開源了它的內(nèi)部解決方案Hyperbahn,一個(gè)路由器的overlay網(wǎng)絡(luò),用來(lái)支持TChannel RPC協(xié)議。因?yàn)槿萜鞣?wù)發(fā)現(xiàn)在不斷發(fā)展,因此你可能要重新評(píng)估最初的選擇,直到穩(wěn)定下來(lái)為止。

?

容器和編排

就像上一章中介紹的那樣,使用cattle方法來(lái)管理基礎(chǔ)架構(gòu),你不必手動(dòng)為特定應(yīng)用分配特定機(jī)器。相反,你應(yīng)該使用調(diào)度器來(lái)管理容器的生命周期。盡管調(diào)度是一個(gè)重要的活動(dòng),但是它其實(shí)只是另一個(gè)更廣闊的概念——編排的一部分。

從圖5-1,可以看到編排包括健康檢查(health checks)、組織原語(yǔ)(organizational primitives,如Kubernetes中的labels、Marathon中的groups)、自動(dòng)擴(kuò)展(autoscaling)、升級(jí)/回滾策略、服務(wù)發(fā)現(xiàn)。有時(shí)候base provisioning也被認(rèn)為是編排的一部分,但是這已經(jīng)超出了本書的討論范圍,例如安裝Mesos Agent或Kubernetes Kubelet。

服務(wù)發(fā)現(xiàn)和調(diào)度是同一枚硬幣的兩面。決定一個(gè)特定的容器運(yùn)行在集群的哪個(gè)節(jié)點(diǎn)的實(shí)體,稱之為調(diào)度器。它向其他系統(tǒng)提供了containers->locations的映射關(guān)系,可以以各種方式暴露這些信息,例如像etcd那樣的分布式鍵值對(duì)數(shù)據(jù)庫(kù)、像Mesos-DNS那樣的DNS。

?

?


圖 5-1

本章將從容器編排解決方案的角度討論服務(wù)發(fā)現(xiàn)和網(wǎng)絡(luò)。背后的動(dòng)機(jī)很簡(jiǎn)單:假設(shè)你使用了某個(gè)平臺(tái),如Kubernetes;然后,你主要的關(guān)注點(diǎn)是平臺(tái)如何處理服務(wù)發(fā)現(xiàn)和網(wǎng)絡(luò)。

?

?

注意:
接下來(lái),我會(huì)討論滿足以下兩個(gè)條件的容器編排系統(tǒng):開源的和相當(dāng)大的社區(qū)。
你可以看一下以下幾個(gè)不同的解決方案:Fackebook的Bistro或者托管的解決方案,如Amazon EC2的容器服務(wù)ECS。
另外,你如果想多了解一下分布式系統(tǒng)調(diào)度這個(gè)主題,我推薦閱讀Google關(guān)于Borg和Omega的研究論文。

在我們深入探討容器編排系統(tǒng)之前,讓我們先看一下編排的核心組件——調(diào)度器到底是做什么的。

?

?

?

調(diào)度器到底是做什么的?

分布式系統(tǒng)調(diào)度器根據(jù)用戶請(qǐng)求將應(yīng)用分發(fā)到一個(gè)或多個(gè)可用的機(jī)器上。例如,用戶可能請(qǐng)求運(yùn)行應(yīng)用的100個(gè)實(shí)例(或者Kubernetes中的replica)。

在Docker中,這意味著:(a)相應(yīng)的Docker鏡像存在宿主機(jī)上;(b)調(diào)度器告訴本地的Docker Daemon基于該鏡像開啟一個(gè)容器。

在圖5-2中,你可以看到,對(duì)于集群中運(yùn)行的應(yīng)用,用戶請(qǐng)求了三個(gè)實(shí)例。調(diào)度器根據(jù)它對(duì)于集群狀態(tài)的了解,決定將應(yīng)用部署在哪里。比如,機(jī)器的使用情況、成功啟動(dòng)應(yīng)用所必須的資源、約束條件(該應(yīng)用只能運(yùn)行在使用SSD的機(jī)器)等。進(jìn)一步地,服務(wù)質(zhì)量也是考量因素之一。

?

?


圖 5-2

通過(guò)John Wilkes的Cluster Management at Google了解更多內(nèi)容。

?

?

警告:
對(duì)于調(diào)度容器的限制條件的語(yǔ)義,你要有概念。例如,有一次我做了一個(gè)Marathon的demo,沒(méi)有按照預(yù)期工作,原因是我沒(méi)有考慮布局的限制條件:我使用了唯一的主機(jī)名和一個(gè)特定的角色這一對(duì)組合。它不能擴(kuò)展,原因是集群中只有一個(gè)節(jié)點(diǎn)符合條件。同樣的問(wèn)題也可能發(fā)生在Kubernetes的label上。

?

?

Vanilla Docker and Docker Swarm

創(chuàng)造性地,Docker提供了一種基本的服務(wù)發(fā)現(xiàn)機(jī)制:Docker連接(links)。默認(rèn)情況下,所有容器都可以相互通信,如果它們知道對(duì)方的IP地址。連接允許用戶任何容器發(fā)現(xiàn)彼此的IP地址,并暴露端口給同一宿主機(jī)上的其他容器。Docker提供了一個(gè)方便的命令行選項(xiàng)--link,可以自動(dòng)實(shí)現(xiàn)這一點(diǎn)。

但是,容器之間的硬連接(hard-wiring of links)并不有趣,也不具擴(kuò)展性。事實(shí)上,這種方法并不算好。長(zhǎng)久來(lái)說(shuō),這個(gè)特性會(huì)被棄用。

讓我們看一下更好的解決方案(如果你仍然想要或者必須使用連接的話):ambassador模式

?

Ambassadors

如圖5-3所示,這個(gè)模式背后的想法是使用一個(gè)代理容器來(lái)代替真正的容器,并轉(zhuǎn)發(fā)流量。它帶來(lái)的好處是:ambassador模式允許你在開發(fā)階段和生產(chǎn)階段使用不同的網(wǎng)絡(luò)架構(gòu)。網(wǎng)絡(luò)運(yùn)維人員可以在運(yùn)行時(shí)重寫應(yīng)用,而不需要更改應(yīng)用代碼。

簡(jiǎn)單來(lái)說(shuō),ambassador模式的缺點(diǎn)是它不能有效地?cái)U(kuò)展。ambassador模式可以用在小規(guī)模的、手動(dòng)的部署中,但是當(dāng)你使用真正的容器編排工具(如Kubernetes或Apache Mesos)時(shí),應(yīng)該避免使用ambassador模式。

?

?


圖 5-3

?

?

注意:
如果你想要了解如何在Docker中部署ambassador模式,我再次建議你參考Adrian Mouat的書Using Docker。事實(shí)上,在圖5-3中,我使用的就是他的amouat/ambassador鏡像。

?

?

Docker Swarm

除了容器的靜態(tài)鏈接(static linking),Docker有一個(gè)原生的集群工具Docker Swarm。Docker Swarm基于Docker API構(gòu)建,并通過(guò)以下方式工作:有一個(gè)Swarm manager負(fù)載調(diào)度,在每一個(gè)宿主機(jī)上運(yùn)行了一個(gè)agent,負(fù)責(zé)本地資源管理(如圖5-4所示)。

Swarm中有趣的地方在于,調(diào)度器是插件式的(plug-able),所以你可以使用除了內(nèi)置以外的其他調(diào)度器,如Apache Mesos。在寫本書的過(guò)程中,Swarm發(fā)布了1.0版本,并完成了GA(General Availability);新的特性(如高可用性)正在進(jìn)行開發(fā)中。

?


圖 5-4

?

網(wǎng)絡(luò)

在本書的第2章和第3章中,我們介紹了Docker中的單宿主機(jī)和多宿主機(jī)中的網(wǎng)絡(luò)。

?

服務(wù)發(fā)現(xiàn)

Docker Swarm支持不同的后端:etcd、Consul和Zookeeper。你也可以使用靜態(tài)文件來(lái)捕捉集群狀態(tài)。最近,一個(gè)基于DNS的服務(wù)發(fā)現(xiàn)工具wagl被引入到了Swarm中。

如果你想更多了解Docker Swarm,可以讀一下Rajdeep Dua的幻燈片

?

Kubernetes

Kubernetes(請(qǐng)看圖5-5)是一個(gè)opinionated的開源框架,彈性地管理容器化的應(yīng)用。簡(jiǎn)單來(lái)說(shuō),它吸取了Google超過(guò)十年的運(yùn)行容器負(fù)載的經(jīng)驗(yàn),我們會(huì)簡(jiǎn)要地介紹一下。進(jìn)一步地,你總是可以選擇其他開源或閉源的方法來(lái)替換Kubernetes的默認(rèn)實(shí)現(xiàn),比如DNS或監(jiān)控。

?

?


圖 5-5

以下討論假設(shè)你已經(jīng)熟悉Kubernetes和它的技術(shù)。如果你還不熟悉Kubernetes的話,我建議看一下Kelsey HighTower的Kubernetes Up and Running

Kubernetes中,調(diào)度單元是一個(gè)pod,這是a tightly coupled set of containers that is always collocated。pod運(yùn)行實(shí)例的數(shù)目是由Replication Controller定義和指定的。pods和services的邏輯組織是由labels定義的。

在每個(gè)Kubernetes節(jié)點(diǎn)上,運(yùn)行著一個(gè)稱為Kubelet的agent,負(fù)責(zé)控制Docker daemon,向Master匯報(bào)節(jié)點(diǎn)狀態(tài),設(shè)置節(jié)點(diǎn)資源。Master節(jié)點(diǎn)提供API(例如,圖5-6中的web UI),收集集群現(xiàn)在的狀態(tài),并存儲(chǔ)在etcd中,將pods調(diào)度到節(jié)點(diǎn)上。

?


圖 5-6

?

網(wǎng)絡(luò)

在Kubernetes中,每個(gè)pod都有一個(gè)可路由的IP,不需要NAT,集群節(jié)點(diǎn)上的pods之間也可以相互通信。pod中的所有容器共享一個(gè)端口命名空間(port namespace)和同一個(gè)notion localhost,因此沒(méi)有必要做端口代理(port brokering)。這是Kubernetes的基本要求,可以通過(guò)network overlay來(lái)實(shí)現(xiàn)。

在pod中,存在一個(gè)所謂的infrastructure容器,kubelet實(shí)例化的第一個(gè)容器,它會(huì)獲得pod的IP,并設(shè)置網(wǎng)絡(luò)命名空間。pod中的所有其他容器會(huì)加入到infra容器的網(wǎng)絡(luò)和IPC命名空間。infra容器的網(wǎng)絡(luò)啟用了bridge模式(請(qǐng)參考第九頁(yè)的bridge模式網(wǎng)絡(luò)),pod中的所有其他容器使用container模式(請(qǐng)參考第11頁(yè)的container模式網(wǎng)絡(luò))來(lái)共享它的命名空間。infra容器中的初始進(jìn)程實(shí)際上什么也沒(méi)做,因?yàn)樗哪康闹皇翘峁┟臻g的載體。關(guān)于端口轉(zhuǎn)發(fā)的最近的work around可能在infra容器中啟動(dòng)額外的進(jìn)程。如果infra容器死亡的話,那么Kubelet會(huì)殺死pod中所有的進(jìn)程,然后重新啟動(dòng)進(jìn)程。

進(jìn)一步地,Kubernetes的命名空間會(huì)啟動(dòng)所有control points。其中一個(gè)網(wǎng)絡(luò)命名空間的例子是,Calico項(xiàng)目使用命名空間來(lái)強(qiáng)化coarse-grained網(wǎng)絡(luò)策略(policy)

?

服務(wù)發(fā)現(xiàn)

在Kubernetes的世界里,有一個(gè)服務(wù)發(fā)現(xiàn)的canonical抽象,這是service primitive。盡管pods隨時(shí)可能啟動(dòng)和銷毀因?yàn)樗麄兛赡苁?#xff08;或者pods運(yùn)行的宿主機(jī)失敗),服務(wù)是長(zhǎng)時(shí)間運(yùn)行的:它們提供集群層面的服務(wù)發(fā)現(xiàn)和某種級(jí)別的負(fù)載均衡。它們提供了一個(gè)穩(wěn)定的IP地址和持久化名字,compensating for the shortlivedness of all equally labelled pods。Kubernetes提供了兩種發(fā)現(xiàn)機(jī)制:通過(guò)環(huán)境變量(限制于一個(gè)特定節(jié)點(diǎn)上)和DNS(集群層面上的)。

?

Apache Mesos

Apache Mesos?(圖5-7)是一個(gè)通用的集群資源管理器,抽象了集群中的各項(xiàng)資源(CPU、RAM等),通過(guò)這種方式,集群對(duì)于開發(fā)者來(lái)說(shuō)就像一個(gè)巨大的計(jì)算機(jī)。

在某種程度上,Mesos可以看作是分布式操作系統(tǒng)的內(nèi)核。因此,它從未單獨(dú)使用,總是和其他框架一起工作,例如Marathon(用于long-running任務(wù),如web服務(wù)器)、Chronos(用于批量任務(wù))或者大數(shù)據(jù)框架(如Apache Spark或Apache Cassandra)。

?

?


圖 5-7

Mesos同時(shí)支持容器化負(fù)載(Docker容器)和普通的可執(zhí)行文件(包括bash腳本、Python腳本、基于JVM的應(yīng)用、一個(gè)純粹的老的Linux二進(jìn)制格式),也支持無(wú)狀態(tài)和有狀態(tài)的服務(wù)。

接下來(lái),我假設(shè)你已經(jīng)熟悉了Mesos和它的相關(guān)技術(shù)。如果你不熟悉Mesos,我建議你閱讀David Greenberg的書《Building Applications on Mesos》,該書介紹了Mesos,特別是對(duì)于分布式應(yīng)用的開發(fā)者。

如圖5-8所示,你可以看到Marathon的UI,使用Apache Mesos來(lái)啟動(dòng)和管理長(zhǎng)期運(yùn)行的服務(wù)和應(yīng)用。

?


圖 5-8

?

網(wǎng)絡(luò)

網(wǎng)絡(luò)特性和能力主要取決于Mesos使用的容器方案:

?

  • 對(duì)于Mesos containerizer來(lái)說(shuō),有一些要求,如Linux內(nèi)核版本要大于3.16,并安裝libnl。開啟網(wǎng)絡(luò)隔離功能之后,你可以構(gòu)建一個(gè)Mesos Agent。啟動(dòng)之后,你可以看到以下輸出:
    ? mesos-slave?--containerizer=mesos?--isolation=network/port_mapping?--resources=ports:[31000-32000];ephemeral_ports:?[33000-35000]
    Mesos Agent會(huì)配置成使用非臨時(shí)(non-ephemeral)端口31000-32000,臨時(shí)(ephemeral)端口33000-35000。所有容器共享宿主機(jī)的IP地址,端口范圍被分配到各個(gè)容器上(使用目的端口和容器ID之間的1:1映射)。通過(guò)網(wǎng)絡(luò)隔離,你可以定義網(wǎng)絡(luò)性能(如帶寬),使得你能夠監(jiān)控容器的網(wǎng)絡(luò)流量。更多細(xì)節(jié),請(qǐng)看MesosCon 2015 Seattle上的演講Per Container Network Monitoring and Isolation in Mesos。
  • 對(duì)于Docker containerizer,請(qǐng)看第二章。

?

?

服務(wù)發(fā)現(xiàn)

盡管Mesos不提供服務(wù)發(fā)現(xiàn)功能,但是有一個(gè)Mesos特定的解決方案,在praxis中也很常用:Mesos-DNS(Pure-Play DNS-based Solutions)。然而,還有其他的解決方案,如traefik。如果你對(duì)于Mesos中的服務(wù)發(fā)現(xiàn)很感興趣,我們的文檔中有一個(gè)專門的章節(jié)介紹它。

?

Hashicorp Nomad

Nomad是HashiCorp開發(fā)的集群調(diào)度器,HashiCorp也開發(fā)了Vagrant。Nomad于2015年9月份引入,主要目的是簡(jiǎn)化性。Nomad易于安裝和使用。據(jù)說(shuō),它的調(diào)度器設(shè)計(jì)受到Google的Omega的影響,比如維護(hù)了集群的全局狀態(tài)、使用優(yōu)化的、高并發(fā)的調(diào)度器。

Nomad的架構(gòu)是基于agent的,它有一個(gè)單獨(dú)的二進(jìn)制文件,可以承擔(dān)不同的角色,支持滾動(dòng)升級(jí)(rolling upgrade)和draining nodes(為了重新平衡)。Nomad使用了一致性協(xié)議(強(qiáng)一致性)來(lái)實(shí)現(xiàn)所有的狀態(tài)復(fù)制和調(diào)度,使用gossip協(xié)議來(lái)管理服務(wù)器地址,從而實(shí)現(xiàn)集群自動(dòng)化(automatic clustering)和多區(qū)域聯(lián)合(multiregion federation)。從圖5-9可以看到,Nomad agent正在啟動(dòng)。

?

?


圖 5-9

Jobs定義為HCL格式(HashiCorp-proprietary format)或JSON格式。Nomad提供了命令行接口和HTTP API,來(lái)和服務(wù)器進(jìn)程進(jìn)行交互。

接下來(lái),我假設(shè)你已經(jīng)熟悉了Nomad和它的術(shù)語(yǔ),否則我不建議你讀這一節(jié)。如果你不熟悉的話,我建議你讀一下Nomad: A Distributed, Optimistically Concurrent Schedule: Armon Dadgar, HashiCorp(這是HashiCorp的CTO Armon Dadgar對(duì)于Nomad的介紹)和Nomad的文檔

?

網(wǎng)絡(luò)

Nomad中有幾個(gè)所謂的任務(wù)驅(qū)動(dòng)(task drivers),從通用的Java可執(zhí)行程序到qemu和Docker。在之后的討論中,我們將會(huì)專注后者。

在寫這篇文章的時(shí)候,Nomad要求Docker的版本為1.8.2,并使用端口綁定技術(shù),將容器中運(yùn)行的服務(wù)暴露在宿主機(jī)網(wǎng)卡接口的端口空間中。Nomad提供了自動(dòng)的和手動(dòng)的映射方案,綁定Docker容器的TCP和UDP協(xié)議端口。

關(guān)于網(wǎng)絡(luò)選項(xiàng)的更多細(xì)節(jié),例如端口映射(mapping ports)和標(biāo)簽(labels),我建議你讀一下該文章

?

服務(wù)發(fā)現(xiàn)

v0.2中,Nomad提供了基于Consul的服務(wù)發(fā)現(xiàn)機(jī)制,請(qǐng)參考相關(guān)文檔。其中包含了健康檢查(health checks),并假設(shè)運(yùn)行在Nomad中的任務(wù)能夠與Consul agent通信(使用bridge模式網(wǎng)絡(luò)),這是一個(gè)挑戰(zhàn)。

?

我應(yīng)該用哪個(gè)呢?

以下內(nèi)容當(dāng)然只是我的一個(gè)建議。這是基于我的經(jīng)驗(yàn),自然地,我也偏向于我正在使用的東西。可能有各種原因(包括政治上的原因)導(dǎo)致你選擇一個(gè)特定的技術(shù)。

從純粹的可擴(kuò)展性的角度來(lái)看,這些選項(xiàng)有以下特點(diǎn):

?

?


對(duì)于少量的節(jié)點(diǎn)來(lái)說(shuō),自然是無(wú)所謂的:根據(jù)你的偏好和經(jīng)驗(yàn),選擇以上四個(gè)選項(xiàng)中的任意一個(gè)都可以。但是請(qǐng)記住,管理大規(guī)模的容器是很困難的

?

  • Docker Swarm可以管理1000個(gè)節(jié)點(diǎn),請(qǐng)參考HackerNews和Docker的這篇博客。
  • Kubernetes 1.0據(jù)說(shuō)可以擴(kuò)展至100個(gè)節(jié)點(diǎn),并在持續(xù)改進(jìn)中,以達(dá)到和Apache Mesos同樣的可擴(kuò)展性。
  • Apache Mesos可以管理最多50000個(gè)節(jié)點(diǎn)。
  • 到目前為止,還沒(méi)有資料表明Nomad可以管理多少個(gè)節(jié)點(diǎn)。


從工作負(fù)載的角度來(lái)看,這些選項(xiàng)有以下特點(diǎn):

?

?



非容器化(Non-containerized)意味著你可以運(yùn)行任何Linux Shell中可以運(yùn)行的程序,例如bash或Python腳本、Java程序等。容器化(containerized)以為你需要生成一個(gè)Docker鏡像。考慮到有狀態(tài)服務(wù),當(dāng)今應(yīng)用中的很大一部分需要一些調(diào)整。如果你想更多地學(xué)習(xí)編排工具,請(qǐng)參考:

?

  • Docker Clustering Tools Compared: Kubernetes vs Docker Swarm
  • O'Reilly Radar的Swarm v. Fleet v. Kubernetes v. Mesos


為了完整性,我想介紹這個(gè)領(lǐng)域的一個(gè)新成員Firmament,這是一個(gè)非常不錯(cuò)的項(xiàng)目。這個(gè)項(xiàng)目的開發(fā)者們也是Google的Omega和Borg的貢獻(xiàn)者,這個(gè)新的調(diào)度器將任務(wù)和機(jī)器組成了一個(gè)流網(wǎng)絡(luò),并運(yùn)行最小成本優(yōu)化(minimum-cost optimization)。特別有趣的一點(diǎn)是,Firmament不僅可以單獨(dú)使用,也可以與Kubernetes和Mesos整合。

?

?

容器的一天

當(dāng)選擇使用哪種容器編排方案時(shí),你需要考慮容器的整個(gè)生命流程。

?


圖 5-10

Docker容器典型的生命周期包括以下幾個(gè)階段:

?

階段1: dev

容器鏡像(你的服務(wù)和應(yīng)用)從一個(gè)開發(fā)環(huán)境中開始它的生命流程,通常是從一名開發(fā)者的筆記本開始的。你可以使用生產(chǎn)環(huán)境中運(yùn)行的服務(wù)和應(yīng)用的特性請(qǐng)求(feature requests)作為輸入。

?

階段2: CI/CD

然后,容器需要經(jīng)歷持續(xù)集成和持續(xù)發(fā)布(continuous integration and continous delivery),包括單元測(cè)試、整合測(cè)試和冒煙測(cè)試

?

階段3: QA/staging

然后,你可以使用一個(gè)QA環(huán)境(企業(yè)內(nèi)部或云中的集群)和/或staging階段。

?

階段4:prod

最后,容器鏡像是部署到生產(chǎn)環(huán)境中的。你也需要有一個(gè)策略去分發(fā)這些鏡像。不要忘記以canaries的方式進(jìn)行構(gòu)建,并為核心系統(tǒng)(如Apache Mesos)、潛在的高層組件(如Marathon)和你的服務(wù)和應(yīng)用的滾動(dòng)式升級(jí)(rolling upgrade)做計(jì)劃。

在生產(chǎn)環(huán)境中,你會(huì)發(fā)現(xiàn)bugs,并收集相關(guān)指標(biāo),可以用來(lái)改善下一個(gè)迭代(返回到階段1)。

這里討論的大部分系統(tǒng)(Swarm、Kubernetes、Mesos和Nomad)提供了很多指令、協(xié)議和整合點(diǎn)來(lái)覆蓋這些階段。然而,在你選擇任何一個(gè)系統(tǒng)之前,你仍然需要端到端地試用該系統(tǒng)。

?

社區(qū)是很重要的

當(dāng)選擇編排系統(tǒng)時(shí),另一個(gè)你需要考慮的一件方面是背后的社區(qū)。以下是一些指標(biāo):

?

  • 是否由一個(gè)正式的實(shí)體或流程來(lái)管理?例如,Apache軟件基金會(huì)或Linux基金會(huì)。
  • 郵件列表、IRC頻道、bug/issue追蹤器、Git倉(cāng)庫(kù)(補(bǔ)丁或PR的數(shù)量)是否活躍?看一下歷史情況,但是請(qǐng)?zhí)貏e注意活躍度。一個(gè)健康的社區(qū)至少會(huì)在其中一個(gè)領(lǐng)域非常活躍。
  • 該編排工具是否由一個(gè)單一實(shí)體實(shí)際控制?例如,對(duì)于Nomad來(lái)說(shuō),很明顯的是,HashiCorp具有完全控制權(quán)。那么Kubernetes和Mesos呢?
  • 是否有多個(gè)獨(dú)立的提供商提供支持?例如,你可以在多個(gè)不同的環(huán)境中運(yùn)行Kubernetes或Mesos,并從很多商業(yè)或非商業(yè)的組織和個(gè)人得到幫助。


我們已經(jīng)到了本書的結(jié)尾。在容器的網(wǎng)絡(luò)和服務(wù)發(fā)現(xiàn)方面,你已經(jīng)學(xué)習(xí)到了不少知識(shí)。看完本章之后,你已經(jīng)可以選擇和部署容器化應(yīng)用了。如果你希望深入地了解本書中的各個(gè)主體,請(qǐng)查看附錄A,附錄A提供了大量的資源列表。

?

?

?

附錄A 參考

以下這些鏈接,有的包含了背景知識(shí),有的包含了一些高級(jí)內(nèi)容。

?

?

?

網(wǎng)絡(luò)參考

  • Docker Networking
  • Concerning Containers’ Connections: on Docker Networking
  • Unifying Docker Container and VM Networking
  • Exploring LXC Networking
  • Letting Go: Docker Networking and Knowing When Enough Is Enough
  • Networking in Containers and Container Clusters

?

服務(wù)發(fā)現(xiàn)參考

  • Service Discovery on?p24e.io
  • Understanding Modern Service Discovery with Docker
  • Service Discovery in Docker Environments
  • Service Discovery, Mesosphere
  • Docker Service Discovery Using Etcd and HAProxy
  • Service discovery with Docker:?Part 1?and?Part 2
  • Service Discovery with Docker: Docker Links and Beyond

?

其他高級(jí)話題

  • What Makes a Container Cluster?
  • Fail at Scale—Reliability in the Face of Rapid Change
  • Bistro: Scheduling Data-Parallel Jobs Against Live Production Systems
  • Orchestrating Docker Containers with Slack
  • The History of Containers
  • The Comparison and Context of Unikernels and Containers
  • Anatomy of a Container: Namespaces, cgroups & Some Filesystem Magic - LinuxCon


原文鏈接:Docker networking and service discovery(翻譯:夏彬)

《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的Docker网络和服务发现的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

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

国产精品人人爽人人做我的可爱 | 窝窝午夜理论片影院 | 18禁黄网站男男禁片免费观看 | 亚洲国产精品久久人人爱 | 精品欧洲av无码一区二区三区 | 久久久久久亚洲精品a片成人 | 色婷婷av一区二区三区之红樱桃 | aa片在线观看视频在线播放 | 亚洲の无码国产の无码影院 | 中文字幕亚洲情99在线 | 人妻互换免费中文字幕 | 中文字幕 亚洲精品 第1页 | 久久久久久av无码免费看大片 | 成人影院yy111111在线观看 | 7777奇米四色成人眼影 | 色综合天天综合狠狠爱 | 中文字幕无码乱人伦 | 亚洲国产精品一区二区第一页 | 青青久在线视频免费观看 | 午夜精品久久久内射近拍高清 | 久久久中文久久久无码 | 色综合久久88色综合天天 | 国产一区二区三区精品视频 | 日韩人妻少妇一区二区三区 | 成人亚洲精品久久久久软件 | 成人亚洲精品久久久久软件 | 国产精品国产三级国产专播 | 国内精品久久毛片一区二区 | 久久zyz资源站无码中文动漫 | 一二三四社区在线中文视频 | 日韩精品成人一区二区三区 | 国产一区二区三区影院 | 少妇厨房愉情理9仑片视频 | 亚洲理论电影在线观看 | 亚洲精品久久久久avwww潮水 | 狠狠色丁香久久婷婷综合五月 | 精品成在人线av无码免费看 | 18精品久久久无码午夜福利 | 蜜桃av抽搐高潮一区二区 | 日本欧美一区二区三区乱码 | 四十如虎的丰满熟妇啪啪 | 老熟女乱子伦 | 一区二区三区高清视频一 | 无码成人精品区在线观看 | 性开放的女人aaa片 | 在线播放免费人成毛片乱码 | 国产综合色产在线精品 | 亚洲一区二区三区无码久久 | 精品午夜福利在线观看 | 国内精品久久久久久中文字幕 | 国产综合久久久久鬼色 | 亚洲精品一区二区三区在线观看 | 久久国产精品偷任你爽任你 | 麻豆md0077饥渴少妇 | 精品一区二区不卡无码av | 牲欲强的熟妇农村老妇女视频 | 亚洲精品鲁一鲁一区二区三区 | 亚洲人成网站免费播放 | 亚洲色www成人永久网址 | 图片小说视频一区二区 | 一本色道久久综合亚洲精品不卡 | 人人澡人人妻人人爽人人蜜桃 | 99精品国产综合久久久久五月天 | 亚洲日韩一区二区三区 | 丁香啪啪综合成人亚洲 | 国产艳妇av在线观看果冻传媒 | 99久久人妻精品免费一区 | 老熟妇乱子伦牲交视频 | 精品国产一区二区三区四区在线看 | 性色欲情网站iwww九文堂 | 国产人妖乱国产精品人妖 | 日日天干夜夜狠狠爱 | 亚洲成av人片在线观看无码不卡 | 伊人久久大香线蕉av一区二区 | 精品国精品国产自在久国产87 | 大地资源网第二页免费观看 | 国产精品第一国产精品 | 2020久久超碰国产精品最新 | 青青草原综合久久大伊人精品 | 国产精品18久久久久久麻辣 | 中文无码精品a∨在线观看不卡 | 国产亚洲欧美日韩亚洲中文色 | 亚洲一区二区三区偷拍女厕 | 国产精品无码一区二区桃花视频 | 人妻插b视频一区二区三区 | 98国产精品综合一区二区三区 | 亚洲熟妇色xxxxx欧美老妇y | 久久国语露脸国产精品电影 | 国产人妻久久精品二区三区老狼 | 久久久久亚洲精品中文字幕 | 久久精品中文闷骚内射 | 日韩精品无码免费一区二区三区 | 精品人妻av区 | 亚洲色偷偷男人的天堂 | 欧美人与禽猛交狂配 | 欧美日韩一区二区免费视频 | 乌克兰少妇xxxx做受 | 精品无码成人片一区二区98 | 又黄又爽又色的视频 | 熟妇人妻中文av无码 | 亚洲精品久久久久中文第一幕 | 国产精品怡红院永久免费 | 成人无码视频免费播放 | 欧美激情一区二区三区成人 | 牲交欧美兽交欧美 | 国产在线精品一区二区高清不卡 | 理论片87福利理论电影 | 国产精品久久久av久久久 | 日本熟妇乱子伦xxxx | 内射欧美老妇wbb | 色五月五月丁香亚洲综合网 | 好爽又高潮了毛片免费下载 | 宝宝好涨水快流出来免费视频 | 国产无套粉嫩白浆在线 | 国产精品人人爽人人做我的可爱 | 国产乱码精品一品二品 | 一本色道久久综合狠狠躁 | 永久免费观看国产裸体美女 | 精品国产精品久久一区免费式 | 欧美日韩人成综合在线播放 | 国产内射老熟女aaaa | 一本无码人妻在中文字幕免费 | 黑人粗大猛烈进出高潮视频 | 东京热无码av男人的天堂 | 999久久久国产精品消防器材 | 中文字幕无码乱人伦 | 网友自拍区视频精品 | 最新国产乱人伦偷精品免费网站 | 亚洲精品无码人妻无码 | 久久无码中文字幕免费影院蜜桃 | 亚洲精品久久久久久久久久久 | www成人国产高清内射 | 99久久精品国产一区二区蜜芽 | 少妇被黑人到高潮喷出白浆 | 亚洲天堂2017无码 | 色综合久久88色综合天天 | 色婷婷久久一区二区三区麻豆 | 精品无码国产自产拍在线观看蜜 | 欧美人与善在线com | 未满小14洗澡无码视频网站 | 国产精品久久国产三级国 | 极品尤物被啪到呻吟喷水 | 亚洲精品综合一区二区三区在线 | 久久久精品国产sm最大网站 | 久久久久久九九精品久 | 久青草影院在线观看国产 | 成人精品天堂一区二区三区 | 亚洲熟妇色xxxxx欧美老妇 | 成熟人妻av无码专区 | 亚洲国产成人a精品不卡在线 | 天海翼激烈高潮到腰振不止 | 色老头在线一区二区三区 | 思思久久99热只有频精品66 | 99国产欧美久久久精品 | 熟女体下毛毛黑森林 | 精品成人av一区二区三区 | а√资源新版在线天堂 | 久久久精品成人免费观看 | 无码人妻av免费一区二区三区 | 欧洲美熟女乱又伦 | 成人精品视频一区二区 | 久久久久久久女国产乱让韩 | 麻豆精品国产精华精华液好用吗 | 乌克兰少妇xxxx做受 | 久激情内射婷内射蜜桃人妖 | 日韩av激情在线观看 | 日本丰满护士爆乳xxxx | 成人欧美一区二区三区黑人免费 | 美女张开腿让人桶 | 67194成是人免费无码 | 久久久成人毛片无码 | 内射爽无广熟女亚洲 | 午夜性刺激在线视频免费 | 久久久国产精品无码免费专区 | 3d动漫精品啪啪一区二区中 | 高清国产亚洲精品自在久久 | 男人的天堂av网站 | 人妻无码αv中文字幕久久琪琪布 | 久久亚洲中文字幕精品一区 | 欧美老人巨大xxxx做受 | 久久久久成人精品免费播放动漫 | 亚洲国产av美女网站 | 荫蒂被男人添的好舒服爽免费视频 | 无码中文字幕色专区 | 伊在人天堂亚洲香蕉精品区 | 中文字幕无码免费久久99 | 国产成人精品久久亚洲高清不卡 | 久久久久久久人妻无码中文字幕爆 | 夜夜高潮次次欢爽av女 | 午夜男女很黄的视频 | 水蜜桃色314在线观看 | 亚洲色欲久久久综合网东京热 | 亚洲娇小与黑人巨大交 | 中国女人内谢69xxxx | 内射老妇bbwx0c0ck | 成在人线av无码免费 | 精品国产国产综合精品 | 国产成人人人97超碰超爽8 | 欧美精品无码一区二区三区 | 国产午夜福利100集发布 | 国产精品久久精品三级 | 欧美兽交xxxx×视频 | 中文毛片无遮挡高清免费 | 久激情内射婷内射蜜桃人妖 | 人妻互换免费中文字幕 | 国产莉萝无码av在线播放 | 美女毛片一区二区三区四区 | 国产成人午夜福利在线播放 | 无码人妻久久一区二区三区不卡 | 色综合久久网 | 狠狠色噜噜狠狠狠狠7777米奇 | 国产偷抇久久精品a片69 | 水蜜桃av无码 | 中文精品无码中文字幕无码专区 | 丰满人妻精品国产99aⅴ | 小泽玛莉亚一区二区视频在线 | 久久国语露脸国产精品电影 | 麻豆蜜桃av蜜臀av色欲av | 伦伦影院午夜理论片 | 蜜臀av在线播放 久久综合激激的五月天 | 亚洲区小说区激情区图片区 | 伊人久久大香线蕉亚洲 | 九月婷婷人人澡人人添人人爽 | 国产精品香蕉在线观看 | 2020久久香蕉国产线看观看 | 香蕉久久久久久av成人 | 精品国产福利一区二区 | 激情内射亚州一区二区三区爱妻 | 漂亮人妻洗澡被公强 日日躁 | 亚洲а∨天堂久久精品2021 | 水蜜桃av无码 | 日本饥渴人妻欲求不满 | 久久婷婷五月综合色国产香蕉 | www一区二区www免费 | 国产高清不卡无码视频 | 亚洲精品无码人妻无码 | 亚洲一区二区三区无码久久 | 中文字幕无码av波多野吉衣 | 久久精品国产亚洲精品 | 又湿又紧又大又爽a视频国产 | 狠狠色欧美亚洲狠狠色www | 日韩人妻无码一区二区三区久久99 | 精品 日韩 国产 欧美 视频 | 中文无码伦av中文字幕 | 国产97人人超碰caoprom | 中文字幕人妻无码一区二区三区 | 精品少妇爆乳无码av无码专区 | 国产后入清纯学生妹 | 水蜜桃亚洲一二三四在线 | 国产亚洲视频中文字幕97精品 | 97资源共享在线视频 | 最近中文2019字幕第二页 | √天堂资源地址中文在线 | 亚洲成熟女人毛毛耸耸多 | 亚洲成av人片在线观看无码不卡 | 18精品久久久无码午夜福利 | 亚洲欧洲日本无在线码 | 无码人妻丰满熟妇区毛片18 | 久久五月精品中文字幕 | 台湾无码一区二区 | 牲欲强的熟妇农村老妇女视频 | 久久国产精品精品国产色婷婷 | 蜜臀aⅴ国产精品久久久国产老师 | 亚洲欧美日韩综合久久久 | 免费观看黄网站 | 一个人免费观看的www视频 | 久久国语露脸国产精品电影 | 欧美35页视频在线观看 | 女人被男人躁得好爽免费视频 | 大乳丰满人妻中文字幕日本 | 5858s亚洲色大成网站www | 夜夜高潮次次欢爽av女 | 2020久久超碰国产精品最新 | 极品尤物被啪到呻吟喷水 | 少妇的肉体aa片免费 | 中文字幕av伊人av无码av | 99久久99久久免费精品蜜桃 | 欧美日韩人成综合在线播放 | 青草青草久热国产精品 | 国产精品自产拍在线观看 | 性开放的女人aaa片 | 狠狠cao日日穞夜夜穞av | 中文字幕人妻无码一区二区三区 | 欧美日韩一区二区免费视频 | 亚洲欧美色中文字幕在线 | 波多野结衣乳巨码无在线观看 | 亚洲乱码日产精品bd | 日日噜噜噜噜夜夜爽亚洲精品 | 欧美老妇交乱视频在线观看 | 日韩欧美中文字幕公布 | 精品成人av一区二区三区 | 国产精品内射视频免费 | 成人女人看片免费视频放人 | 无码国产色欲xxxxx视频 | 2019午夜福利不卡片在线 | 亚洲国产午夜精品理论片 | 中文字幕无码免费久久9一区9 | 欧美zoozzooz性欧美 | 女人被男人躁得好爽免费视频 | 人妻aⅴ无码一区二区三区 | 精品国产一区二区三区四区 | 亚洲精品欧美二区三区中文字幕 | 国产欧美熟妇另类久久久 | 日韩亚洲欧美精品综合 | 丝袜 中出 制服 人妻 美腿 | 国产午夜手机精彩视频 | 欧美老妇交乱视频在线观看 | 亚洲一区二区三区含羞草 | 亚洲中文字幕在线观看 | 欧美丰满熟妇xxxx性ppx人交 | 粗大的内捧猛烈进出视频 | 学生妹亚洲一区二区 | 狠狠色丁香久久婷婷综合五月 | 国产三级久久久精品麻豆三级 | 国产精品无码久久av | 精品夜夜澡人妻无码av蜜桃 | 青青青爽视频在线观看 | 夜精品a片一区二区三区无码白浆 | 亚洲精品一区二区三区在线 | 性欧美videos高清精品 | 日韩人妻无码中文字幕视频 | 久久精品国产99精品亚洲 | 亚洲乱码中文字幕在线 | 内射老妇bbwx0c0ck | 国产成人精品三级麻豆 | 伊人久久大香线蕉av一区二区 | 鲁鲁鲁爽爽爽在线视频观看 | 大地资源网第二页免费观看 | 国产精品99爱免费视频 | 亚洲区欧美区综合区自拍区 | 欧美变态另类xxxx | 波多野结衣高清一区二区三区 | 牲欲强的熟妇农村老妇女 | 偷窥村妇洗澡毛毛多 | 国内揄拍国内精品少妇国语 | 99久久99久久免费精品蜜桃 | 中文无码精品a∨在线观看不卡 | 中文无码成人免费视频在线观看 | 中文字幕无码日韩专区 | 亚洲啪av永久无码精品放毛片 | 色偷偷人人澡人人爽人人模 | 久久精品女人天堂av免费观看 | 荡女精品导航 | 国产欧美精品一区二区三区 | 人妻少妇精品视频专区 | 国产亚洲欧美在线专区 | 狠狠色噜噜狠狠狠狠7777米奇 | 给我免费的视频在线观看 | 免费人成在线观看网站 | 国产综合色产在线精品 | 狠狠亚洲超碰狼人久久 | 在线播放免费人成毛片乱码 | 在线成人www免费观看视频 | 亚洲国产精品无码一区二区三区 | √天堂中文官网8在线 | 国产精品久久久久久亚洲影视内衣 | 国产午夜视频在线观看 | 午夜无码人妻av大片色欲 | 在线a亚洲视频播放在线观看 | 在线观看国产一区二区三区 | 少妇无码吹潮 | 免费观看激色视频网站 | 蜜桃臀无码内射一区二区三区 | 又粗又大又硬毛片免费看 | 国语自产偷拍精品视频偷 | 又湿又紧又大又爽a视频国产 | 最新国产乱人伦偷精品免费网站 | 国产亚洲人成在线播放 | 久久99精品久久久久久动态图 | 久久99精品久久久久婷婷 | 日本一区二区三区免费高清 | 正在播放东北夫妻内射 | 精品人妻中文字幕有码在线 | 国产精品亚洲五月天高清 | 好爽又高潮了毛片免费下载 | 人妻人人添人妻人人爱 | 无码精品国产va在线观看dvd | 老熟妇乱子伦牲交视频 | 欧洲熟妇精品视频 | 成在人线av无码免观看麻豆 | 性做久久久久久久久 | 亚洲精品一区二区三区四区五区 | 精品夜夜澡人妻无码av蜜桃 | 狠狠色欧美亚洲狠狠色www | 国产亚洲精品精品国产亚洲综合 | 久久久久久久久888 | 宝宝好涨水快流出来免费视频 | 激情内射亚州一区二区三区爱妻 | 两性色午夜免费视频 | 国产亚av手机在线观看 | 一区二区三区乱码在线 | 欧洲 | 久久天天躁狠狠躁夜夜免费观看 | 中国女人内谢69xxxx | 久久亚洲日韩精品一区二区三区 | 天天拍夜夜添久久精品 | 中文无码精品a∨在线观看不卡 | 激情内射亚州一区二区三区爱妻 | 日本在线高清不卡免费播放 | 精品久久久中文字幕人妻 | 亚洲精品国产第一综合99久久 | 亚洲小说图区综合在线 | 国产人成高清在线视频99最全资源 | 中文字幕乱妇无码av在线 | 亚洲第一网站男人都懂 | 野狼第一精品社区 | 无码人妻丰满熟妇区毛片18 | 成人试看120秒体验区 | 国产精品久久国产精品99 | 国产亚洲精品久久久久久久久动漫 | 亚洲精品国产品国语在线观看 | 精品乱子伦一区二区三区 | 中文字幕无码免费久久9一区9 | 欧美丰满熟妇xxxx性ppx人交 | 亚洲国产av精品一区二区蜜芽 | 丰满岳乱妇在线观看中字无码 | 无码人妻出轨黑人中文字幕 | 欧美丰满老熟妇xxxxx性 | 九月婷婷人人澡人人添人人爽 | 欧美亚洲日韩国产人成在线播放 | 亚洲s码欧洲m码国产av | 狠狠色欧美亚洲狠狠色www | 日本护士xxxxhd少妇 | 日本成熟视频免费视频 | 久久精品中文字幕一区 | 少妇被粗大的猛进出69影院 | 国产舌乚八伦偷品w中 | 在线成人www免费观看视频 | 久久久av男人的天堂 | 天天摸天天碰天天添 | 国产97在线 | 亚洲 | 日本在线高清不卡免费播放 | 成人精品一区二区三区中文字幕 | 亚洲精品成a人在线观看 | 亚洲国产精品一区二区美利坚 | 中文字幕乱码人妻无码久久 | 国产亚洲精品久久久久久久久动漫 | 久久综合给合久久狠狠狠97色 | 97色伦图片97综合影院 | 国精品人妻无码一区二区三区蜜柚 | 久久精品女人的天堂av | 日日夜夜撸啊撸 | 国产又爽又黄又刺激的视频 | 亚洲精品国产精品乱码视色 | 丝袜人妻一区二区三区 | 日韩欧美中文字幕公布 | 国产乱人偷精品人妻a片 | 久久久中文字幕日本无吗 | 7777奇米四色成人眼影 | 久久久久久亚洲精品a片成人 | 免费人成在线视频无码 | 国产精品香蕉在线观看 | 日韩精品乱码av一区二区 | 久久人人爽人人爽人人片av高清 | 亚洲中文无码av永久不收费 | 久久天天躁狠狠躁夜夜免费观看 | 国产免费久久精品国产传媒 | 亚无码乱人伦一区二区 | 人妻无码久久精品人妻 | 国产精品丝袜黑色高跟鞋 | 久久久久se色偷偷亚洲精品av | 亚洲精品综合一区二区三区在线 | 国产精品美女久久久 | 一个人免费观看的www视频 | 爽爽影院免费观看 | 少妇性俱乐部纵欲狂欢电影 | 女人被男人躁得好爽免费视频 | 88国产精品欧美一区二区三区 | 国产乱人无码伦av在线a | 久久久精品国产sm最大网站 | 暴力强奷在线播放无码 | 成人无码影片精品久久久 | 男女猛烈xx00免费视频试看 | 一本加勒比波多野结衣 | 超碰97人人做人人爱少妇 | 两性色午夜视频免费播放 | 欧美精品无码一区二区三区 | 国产成人无码av一区二区 | 日日碰狠狠躁久久躁蜜桃 | 国产无遮挡吃胸膜奶免费看 | 国产午夜无码精品免费看 | 大乳丰满人妻中文字幕日本 | 成人免费视频视频在线观看 免费 | 欧美zoozzooz性欧美 | 久久精品一区二区三区四区 | 亚洲国产成人a精品不卡在线 | 亚洲日韩一区二区三区 | 日韩无码专区 | 久久精品人人做人人综合 | 免费中文字幕日韩欧美 | 国产在线精品一区二区三区直播 | 免费无码一区二区三区蜜桃大 | 麻豆国产人妻欲求不满 | 国产偷国产偷精品高清尤物 | 妺妺窝人体色www婷婷 | 色一情一乱一伦一区二区三欧美 | 国产亚洲tv在线观看 | 天天拍夜夜添久久精品大 | 小泽玛莉亚一区二区视频在线 | 装睡被陌生人摸出水好爽 | 国产成人无码av片在线观看不卡 | 欧美阿v高清资源不卡在线播放 | 美女扒开屁股让男人桶 | 国产激情无码一区二区app | 国产av无码专区亚洲awww | 无码人妻丰满熟妇区毛片18 | 荫蒂被男人添的好舒服爽免费视频 | 国产偷国产偷精品高清尤物 | 国产成人无码区免费内射一片色欲 | 精品国产乱码久久久久乱码 | 亚洲欧美日韩综合久久久 | 亚洲精品欧美二区三区中文字幕 | 国产成人无码av在线影院 | 亚洲综合另类小说色区 | 麻豆国产人妻欲求不满 | 国产超碰人人爽人人做人人添 | 黑人粗大猛烈进出高潮视频 | 日本免费一区二区三区最新 | 久久精品视频在线看15 | 任你躁国产自任一区二区三区 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 自拍偷自拍亚洲精品10p | 日韩少妇内射免费播放 | 黑人玩弄人妻中文在线 | 国产在线精品一区二区高清不卡 | 欧美freesex黑人又粗又大 | 欧美性生交xxxxx久久久 | 色婷婷香蕉在线一区二区 | 久久久精品成人免费观看 | 精品日本一区二区三区在线观看 | 婷婷丁香五月天综合东京热 | 免费人成网站视频在线观看 | a在线观看免费网站大全 | 美女张开腿让人桶 | 亚洲中文字幕成人无码 | 免费无码午夜福利片69 | 人人妻人人澡人人爽欧美一区九九 | 亚洲人成影院在线无码按摩店 | 久久国产36精品色熟妇 | 99精品国产综合久久久久五月天 | 亚洲一区二区观看播放 | 天海翼激烈高潮到腰振不止 | 国产欧美精品一区二区三区 | 性啪啪chinese东北女人 | 精品久久久无码人妻字幂 | 九月婷婷人人澡人人添人人爽 | 久久久久亚洲精品中文字幕 | 欧美日韩综合一区二区三区 | 亚洲色无码一区二区三区 | 2020久久香蕉国产线看观看 | 久激情内射婷内射蜜桃人妖 | 熟女少妇在线视频播放 | 丁香花在线影院观看在线播放 | 在教室伦流澡到高潮hnp视频 | 乱中年女人伦av三区 | 欧洲美熟女乱又伦 | 国内少妇偷人精品视频免费 | 国产农村妇女aaaaa视频 撕开奶罩揉吮奶头视频 | 国产人妻精品一区二区三区不卡 | 国产三级精品三级男人的天堂 | 人人爽人人澡人人高潮 | 男人和女人高潮免费网站 | 国産精品久久久久久久 | 丰满少妇人妻久久久久久 | av无码久久久久不卡免费网站 | 老熟妇乱子伦牲交视频 | 久久亚洲日韩精品一区二区三区 | 人人妻人人澡人人爽欧美精品 | 欧美精品无码一区二区三区 | 国产一精品一av一免费 | 精品国产福利一区二区 | 鲁大师影院在线观看 | 性啪啪chinese东北女人 | 狠狠色色综合网站 | 久久久国产一区二区三区 | 丰满岳乱妇在线观看中字无码 | 国产午夜福利100集发布 | 久久久精品人妻久久影视 | 午夜精品一区二区三区的区别 | 又大又紧又粉嫩18p少妇 | 2020久久超碰国产精品最新 | 亚洲成在人网站无码天堂 | v一区无码内射国产 | 丰满肥臀大屁股熟妇激情视频 | 国产精品第一区揄拍无码 | 精品人妻av区 | 六月丁香婷婷色狠狠久久 | 最新国产麻豆aⅴ精品无码 | 高潮毛片无遮挡高清免费视频 | 99久久久无码国产aaa精品 | 性欧美大战久久久久久久 | 巨爆乳无码视频在线观看 | 乱中年女人伦av三区 | 高潮毛片无遮挡高清免费视频 | 香港三级日本三级妇三级 | 色偷偷av老熟女 久久精品人妻少妇一区二区三区 | 精品水蜜桃久久久久久久 | 无码任你躁久久久久久久 | 亚洲国产精品美女久久久久 | 亚洲精品一区二区三区四区五区 | 国产av无码专区亚洲a∨毛片 | 一本精品99久久精品77 | 图片区 小说区 区 亚洲五月 | 无码午夜成人1000部免费视频 | 欧美激情综合亚洲一二区 | 亚洲成av人片天堂网无码】 | 国产无遮挡又黄又爽免费视频 | 亚洲自偷自偷在线制服 | 国产精品国产自线拍免费软件 | 无码播放一区二区三区 | 色偷偷av老熟女 久久精品人妻少妇一区二区三区 | 色综合久久久久综合一本到桃花网 | 国内揄拍国内精品人妻 | 一本无码人妻在中文字幕免费 | 性色欲情网站iwww九文堂 | 亚洲一区av无码专区在线观看 | 国产亚洲精品久久久久久久久动漫 | 亚洲综合无码一区二区三区 | 2020久久香蕉国产线看观看 | 亚欧洲精品在线视频免费观看 | 欧美猛少妇色xxxxx | 国产精品国产自线拍免费软件 | 永久免费精品精品永久-夜色 | 色综合视频一区二区三区 | 国内精品久久久久久中文字幕 | 一本久久伊人热热精品中文字幕 | 女人被男人爽到呻吟的视频 | 亚洲色大成网站www国产 | 少妇高潮喷潮久久久影院 | 久久久久亚洲精品男人的天堂 | 77777熟女视频在线观看 а天堂中文在线官网 | 无码av中文字幕免费放 | 亚洲一区二区三区四区 | 欧美成人午夜精品久久久 | 狠狠色丁香久久婷婷综合五月 | 亚洲va欧美va天堂v国产综合 | 永久黄网站色视频免费直播 | 成人欧美一区二区三区黑人免费 | 巨爆乳无码视频在线观看 | 色诱久久久久综合网ywww | 久久久久久久久蜜桃 | 偷窥日本少妇撒尿chinese | 捆绑白丝粉色jk震动捧喷白浆 | 丰满少妇熟乱xxxxx视频 | 国产精品久久国产精品99 | 国产亚洲精品精品国产亚洲综合 | 天海翼激烈高潮到腰振不止 | 一二三四社区在线中文视频 | 欧美成人午夜精品久久久 | 亚洲一区二区三区国产精华液 | 国产精品久久久av久久久 | 国产午夜无码视频在线观看 | 亚洲人成人无码网www国产 | 国产成人无码区免费内射一片色欲 | 精品成人av一区二区三区 | 99久久精品国产一区二区蜜芽 | 亚洲一区二区三区四区 | 天堂亚洲2017在线观看 | 嫩b人妻精品一区二区三区 | 色情久久久av熟女人妻网站 | 国内精品人妻无码久久久影院蜜桃 | 99久久精品日本一区二区免费 | 中文字幕精品av一区二区五区 | 日韩少妇白浆无码系列 | аⅴ资源天堂资源库在线 | 亚洲天堂2017无码 | 小鲜肉自慰网站xnxx | 久久精品人人做人人综合试看 | 国产97人人超碰caoprom | 免费无码的av片在线观看 | 波多野42部无码喷潮在线 | 日本一卡2卡3卡四卡精品网站 | 亚洲爆乳大丰满无码专区 | 国产xxx69麻豆国语对白 | 97夜夜澡人人爽人人喊中国片 | 扒开双腿疯狂进出爽爽爽视频 | 日本乱人伦片中文三区 | 国产精品久久久久无码av色戒 | 无码吃奶揉捏奶头高潮视频 | 精品国产一区二区三区四区在线看 | 99久久久无码国产aaa精品 | 国产成人精品必看 | 亚洲一区二区三区无码久久 | 久久久久久a亚洲欧洲av冫 | 日本一区二区更新不卡 | 性生交片免费无码看人 | 日韩精品乱码av一区二区 | 在线观看免费人成视频 | 中文字幕无码av波多野吉衣 | 国产熟女一区二区三区四区五区 | 精品无码av一区二区三区 | 亚洲综合在线一区二区三区 | 成人精品一区二区三区中文字幕 | 国产精品免费大片 | 国产精品a成v人在线播放 | 久久久久久亚洲精品a片成人 | 夜先锋av资源网站 | 国产精品嫩草久久久久 | 蜜臀av无码人妻精品 | 一个人免费观看的www视频 | 成人无码影片精品久久久 | 精品国产福利一区二区 | 又湿又紧又大又爽a视频国产 | 午夜精品一区二区三区的区别 | av人摸人人人澡人人超碰下载 | 波多野结衣乳巨码无在线观看 | 少妇人妻av毛片在线看 | 欧美国产日韩久久mv | 精品少妇爆乳无码av无码专区 | 色综合天天综合狠狠爱 | 国产无套内射久久久国产 | 国产无遮挡吃胸膜奶免费看 | 国产性生大片免费观看性 | 少妇厨房愉情理9仑片视频 | 日本熟妇人妻xxxxx人hd | 国产欧美精品一区二区三区 | 亚洲一区二区观看播放 | 日本xxxx色视频在线观看免费 | 乱码午夜-极国产极内射 | 国产人妻久久精品二区三区老狼 | 精品 日韩 国产 欧美 视频 | 国产精品久久久久久无码 | 亚洲国产精品毛片av不卡在线 | 三级4级全黄60分钟 | 秋霞成人午夜鲁丝一区二区三区 | 一二三四社区在线中文视频 | 无码人妻精品一区二区三区下载 | 国产精品国产自线拍免费软件 | 色诱久久久久综合网ywww | 欧美丰满少妇xxxx性 | 国产农村妇女aaaaa视频 撕开奶罩揉吮奶头视频 | 亚洲爆乳大丰满无码专区 | 又紧又大又爽精品一区二区 | 亚洲精品国产品国语在线观看 | 婷婷六月久久综合丁香 | 午夜精品久久久内射近拍高清 | 欧美 日韩 人妻 高清 中文 | 人妻无码αv中文字幕久久琪琪布 | 激情内射亚州一区二区三区爱妻 | 国产亚洲美女精品久久久2020 | a国产一区二区免费入口 | 国产无套内射久久久国产 | 性啪啪chinese东北女人 | 午夜时刻免费入口 | 久久综合狠狠综合久久综合88 | 婷婷色婷婷开心五月四房播播 | 强开小婷嫩苞又嫩又紧视频 | 国产国产精品人在线视 | 综合激情五月综合激情五月激情1 | 亚洲国产精品久久久天堂 | 高潮毛片无遮挡高清免费视频 | 成熟妇人a片免费看网站 | 亚洲国产精品成人久久蜜臀 | 精品一二三区久久aaa片 | 国产无套内射久久久国产 | 夜先锋av资源网站 | 久久国语露脸国产精品电影 | 少妇人妻大乳在线视频 | 欧美日韩亚洲国产精品 | 精品厕所偷拍各类美女tp嘘嘘 | 欧美大屁股xxxxhd黑色 | 亚洲国精产品一二二线 | 一个人看的www免费视频在线观看 | 成 人 免费观看网站 | 99久久99久久免费精品蜜桃 | 久久精品无码一区二区三区 | 精品国产一区二区三区四区 | 美女扒开屁股让男人桶 | 亚洲伊人久久精品影院 | 西西人体www44rt大胆高清 | 精品久久久中文字幕人妻 | 波多野结衣乳巨码无在线观看 | 天天躁夜夜躁狠狠是什么心态 | 亚洲另类伦春色综合小说 | 亚洲欧美中文字幕5发布 | 久久久国产精品无码免费专区 | 亚洲男人av天堂午夜在 | 国产97在线 | 亚洲 | 无码人妻少妇伦在线电影 | 亚洲成av人片天堂网无码】 | 精品无人区无码乱码毛片国产 | 久久99精品国产.久久久久 | 奇米综合四色77777久久 东京无码熟妇人妻av在线网址 | 无码av岛国片在线播放 | 亚洲精品一区二区三区在线 | 国产两女互慰高潮视频在线观看 | 国产免费观看黄av片 | 亚洲乱码国产乱码精品精 | 亚洲日韩乱码中文无码蜜桃臀网站 | 精品午夜福利在线观看 | 大肉大捧一进一出好爽视频 | 亚无码乱人伦一区二区 | 无码精品人妻一区二区三区av | 天堂无码人妻精品一区二区三区 | 午夜精品久久久久久久 | 天堂亚洲2017在线观看 | 亚洲一区二区三区 | 日韩无套无码精品 | 成年美女黄网站色大免费全看 | 国产精品无码久久av | www国产亚洲精品久久网站 | 无码乱肉视频免费大全合集 | 中文无码伦av中文字幕 | 久久精品视频在线看15 | 欧洲精品码一区二区三区免费看 | 久久国产精品偷任你爽任你 | 色婷婷欧美在线播放内射 | 日韩精品无码免费一区二区三区 | 亚洲精品成人福利网站 | 丰满少妇熟乱xxxxx视频 | 大地资源中文第3页 | 人妻少妇精品久久 | 黑人巨大精品欧美一区二区 | 亚洲aⅴ无码成人网站国产app | 3d动漫精品啪啪一区二区中 | 国产精品久久久久无码av色戒 | 亚洲国产精品成人久久蜜臀 | 18无码粉嫩小泬无套在线观看 | 久久综合九色综合欧美狠狠 | www国产亚洲精品久久久日本 | 四虎影视成人永久免费观看视频 | 国产卡一卡二卡三 | 国产成人精品久久亚洲高清不卡 | 天堂亚洲免费视频 | 成年女人永久免费看片 | 亚洲精品鲁一鲁一区二区三区 | 波多野结衣一区二区三区av免费 | 波多野结衣一区二区三区av免费 | 亚洲色大成网站www国产 | 国产国语老龄妇女a片 | 无码国模国产在线观看 | 中文字幕乱码中文乱码51精品 | 亚洲成av人综合在线观看 | 国产片av国语在线观看 | 熟女少妇在线视频播放 | 少妇一晚三次一区二区三区 | 成人欧美一区二区三区黑人 | 日韩精品a片一区二区三区妖精 | 欧美丰满老熟妇xxxxx性 | 狠狠色色综合网站 | 男人扒开女人内裤强吻桶进去 | 四虎影视成人永久免费观看视频 | 成人欧美一区二区三区黑人免费 | www国产亚洲精品久久网站 | 日日碰狠狠丁香久燥 | 人人澡人人妻人人爽人人蜜桃 | 俺去俺来也在线www色官网 | 亚洲国产av精品一区二区蜜芽 | 国产精品内射视频免费 | 好屌草这里只有精品 | 999久久久国产精品消防器材 | 东京无码熟妇人妻av在线网址 | 天天摸天天透天天添 | 欧美激情一区二区三区成人 | 日韩成人一区二区三区在线观看 | 国产精品人人爽人人做我的可爱 | 大肉大捧一进一出好爽视频 | 天天做天天爱天天爽综合网 | 成人无码精品一区二区三区 | 日本精品久久久久中文字幕 | 图片区 小说区 区 亚洲五月 | 女人被爽到呻吟gif动态图视看 | 水蜜桃亚洲一二三四在线 | 亚洲经典千人经典日产 | 性欧美疯狂xxxxbbbb | 无码任你躁久久久久久久 | 久久精品国产一区二区三区 | 精品厕所偷拍各类美女tp嘘嘘 | 久久久精品成人免费观看 | 久久人人爽人人爽人人片av高清 | 大地资源中文第3页 | 中文字幕无码免费久久99 | 久久精品人妻少妇一区二区三区 | 精品无人国产偷自产在线 | 国产无遮挡吃胸膜奶免费看 | 亚洲精品国产品国语在线观看 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 亚洲自偷精品视频自拍 | 偷窥日本少妇撒尿chinese | 天天做天天爱天天爽综合网 | 午夜成人1000部免费视频 | 国产黄在线观看免费观看不卡 | 97精品人妻一区二区三区香蕉 | 亚洲区小说区激情区图片区 | 精品午夜福利在线观看 | 亚洲阿v天堂在线 | 国产高清不卡无码视频 | 永久黄网站色视频免费直播 | 国产亚洲美女精品久久久2020 | 国产一区二区三区日韩精品 | 国产一区二区三区精品视频 | 无码av免费一区二区三区试看 | 亚洲国产av美女网站 | 麻豆md0077饥渴少妇 | 精品偷自拍另类在线观看 | 丰满人妻被黑人猛烈进入 | 日本精品少妇一区二区三区 | 亚洲一区二区观看播放 | 色综合久久中文娱乐网 | 极品尤物被啪到呻吟喷水 | 牲欲强的熟妇农村老妇女视频 | 国产av一区二区精品久久凹凸 | 97人妻精品一区二区三区 | 欧美 丝袜 自拍 制服 另类 | 午夜理论片yy44880影院 | 又湿又紧又大又爽a视频国产 | 亚洲区欧美区综合区自拍区 | 一个人免费观看的www视频 | 亚洲の无码国产の无码步美 | 亚洲成av人综合在线观看 | 亚洲精品美女久久久久久久 | 大肉大捧一进一出视频出来呀 | 午夜性刺激在线视频免费 | 成人欧美一区二区三区黑人 | 人妻无码αv中文字幕久久琪琪布 | 亚洲成av人在线观看网址 | 丰腴饱满的极品熟妇 | 六月丁香婷婷色狠狠久久 | 精品国产精品久久一区免费式 | 激情综合激情五月俺也去 | 暴力强奷在线播放无码 | 国产亚洲人成在线播放 | 亚洲国产精品一区二区美利坚 | 久久视频在线观看精品 | 日韩人妻系列无码专区 | 日韩人妻无码中文字幕视频 | 2020久久香蕉国产线看观看 | 日韩精品乱码av一区二区 | 高潮毛片无遮挡高清免费视频 | 中国女人内谢69xxxxxa片 | 日韩av激情在线观看 | 图片小说视频一区二区 | 久久这里只有精品视频9 | 亚洲一区二区三区国产精华液 | 久久亚洲国产成人精品性色 | 粗大的内捧猛烈进出视频 | 水蜜桃色314在线观看 | 日韩在线不卡免费视频一区 | 无码人妻少妇伦在线电影 | 精品厕所偷拍各类美女tp嘘嘘 | 天天av天天av天天透 | 亚洲午夜无码久久 | 少妇久久久久久人妻无码 | 亚洲精品久久久久久一区二区 | 精品无码一区二区三区爱欲 | 国产高清av在线播放 | 18无码粉嫩小泬无套在线观看 | 99精品国产综合久久久久五月天 | 精品人人妻人人澡人人爽人人 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 国产一区二区三区四区五区加勒比 | 波多野结衣av一区二区全免费观看 | 亚洲人成网站免费播放 | 丰满少妇人妻久久久久久 | 久久精品中文字幕大胸 | 人妻与老人中文字幕 | 99国产精品白浆在线观看免费 | 荡女精品导航 | 色婷婷av一区二区三区之红樱桃 | 中文字幕日产无线码一区 | 欧美亚洲日韩国产人成在线播放 | 国产精品手机免费 | 双乳奶水饱满少妇呻吟 | 久久久精品国产sm最大网站 | 丰满人妻精品国产99aⅴ | 久久久成人毛片无码 | 97久久超碰中文字幕 | 久精品国产欧美亚洲色aⅴ大片 | 色婷婷综合中文久久一本 | 撕开奶罩揉吮奶头视频 | 国产熟妇另类久久久久 | 99久久人妻精品免费一区 | 欧美日韩综合一区二区三区 | 国产口爆吞精在线视频 | 99精品无人区乱码1区2区3区 | 国产又爽又猛又粗的视频a片 | 中文字幕乱码人妻二区三区 | 免费国产成人高清在线观看网站 | 97夜夜澡人人爽人人喊中国片 | 国产精品怡红院永久免费 | 曰韩无码二三区中文字幕 | 成人免费视频在线观看 | 久久久中文久久久无码 | 中文字幕人妻丝袜二区 | 日韩精品无码免费一区二区三区 | 99视频精品全部免费免费观看 | 波多野结衣av在线观看 | 国产亚洲欧美日韩亚洲中文色 | 中文字幕无线码 | 午夜男女很黄的视频 | 亚洲国产日韩a在线播放 | 久久久久成人精品免费播放动漫 | 国产精品无套呻吟在线 | 国产欧美亚洲精品a | 蜜桃臀无码内射一区二区三区 | 麻豆成人精品国产免费 | а√资源新版在线天堂 | 亚洲人成网站在线播放942 | 97精品国产97久久久久久免费 | 成人一在线视频日韩国产 | 伊人久久大香线蕉午夜 | 国产精品欧美成人 | 色婷婷香蕉在线一区二区 | 成 人 网 站国产免费观看 | 国产亚洲美女精品久久久2020 | 国产一区二区三区影院 | 色欲久久久天天天综合网精品 | 国产极品美女高潮无套在线观看 | 国产午夜亚洲精品不卡下载 | 国产精品久久久一区二区三区 | 蜜臀av在线观看 在线欧美精品一区二区三区 | 国产九九九九九九九a片 | 欧美性猛交内射兽交老熟妇 | 性生交大片免费看l | 国产精品无码一区二区三区不卡 | 中文字幕无码日韩专区 | 伊人久久大香线焦av综合影院 | 在线精品亚洲一区二区 | 国产精品福利视频导航 | 久久www免费人成人片 | 国产亚洲精品久久久久久国模美 | 学生妹亚洲一区二区 | 免费无码一区二区三区蜜桃大 | 性欧美疯狂xxxxbbbb | 无码毛片视频一区二区本码 | 欧美日韩人成综合在线播放 | 在线а√天堂中文官网 | 久久精品中文字幕一区 | 亚洲综合在线一区二区三区 | 亚洲日韩乱码中文无码蜜桃臀网站 | 131美女爱做视频 | 国产精品美女久久久久av爽李琼 | 日本精品久久久久中文字幕 | 精品午夜福利在线观看 | 女人被男人躁得好爽免费视频 | 国产精品免费大片 | 国产真人无遮挡作爱免费视频 | 国产乱人伦app精品久久 国产在线无码精品电影网 国产国产精品人在线视 | 无码乱肉视频免费大全合集 | 男女下面进入的视频免费午夜 | 精品人妻中文字幕有码在线 | 欧美人与禽猛交狂配 | 亚洲国产精品毛片av不卡在线 | 国产性生大片免费观看性 | 成人动漫在线观看 | 又色又爽又黄的美女裸体网站 | 国产乱人无码伦av在线a | 久久久久久久人妻无码中文字幕爆 | 国产精品嫩草久久久久 | 国产舌乚八伦偷品w中 | 久久综合给合久久狠狠狠97色 | 丰满岳乱妇在线观看中字无码 | 99精品无人区乱码1区2区3区 | 精品久久久中文字幕人妻 | 性生交大片免费看l | 国产乱人伦app精品久久 国产在线无码精品电影网 国产国产精品人在线视 | 国产精品第一区揄拍无码 | 国产一区二区三区精品视频 | 中文字幕人妻无码一区二区三区 | 久久99精品国产.久久久久 | 亚洲高清偷拍一区二区三区 | 国产精品手机免费 | 午夜精品一区二区三区在线观看 | 丰腴饱满的极品熟妇 | 日韩精品无码免费一区二区三区 | 亚洲国产精品毛片av不卡在线 | 国产一区二区三区四区五区加勒比 | 成人试看120秒体验区 | 免费无码肉片在线观看 | 中文字幕乱码亚洲无线三区 | 男女下面进入的视频免费午夜 | 麻豆国产人妻欲求不满 | а√资源新版在线天堂 | 少妇性俱乐部纵欲狂欢电影 | 亚洲精品国偷拍自产在线观看蜜桃 | 欧美亚洲日韩国产人成在线播放 | 亚洲欧美日韩成人高清在线一区 | 精品人妻人人做人人爽夜夜爽 | 1000部啪啪未满十八勿入下载 | 女人高潮内射99精品 | 婷婷六月久久综合丁香 | 国模大胆一区二区三区 | 少妇的肉体aa片免费 | 免费人成在线观看网站 | 人人妻人人澡人人爽精品欧美 | 麻豆成人精品国产免费 | 国产熟女一区二区三区四区五区 | 久久zyz资源站无码中文动漫 | 中文字幕乱码人妻无码久久 | 国产绳艺sm调教室论坛 | 理论片87福利理论电影 | 激情内射日本一区二区三区 | 婷婷六月久久综合丁香 | 少妇激情av一区二区 | 亚洲熟熟妇xxxx | 美女扒开屁股让男人桶 | 少妇久久久久久人妻无码 | 成人无码视频免费播放 | 亚洲 欧美 激情 小说 另类 | 国产三级久久久精品麻豆三级 | 欧美精品一区二区精品久久 | 国产乱人无码伦av在线a | 国产无遮挡吃胸膜奶免费看 | 成人免费视频视频在线观看 免费 | 一个人免费观看的www视频 | 99久久精品日本一区二区免费 | 国产午夜精品一区二区三区嫩草 | 中文字幕无码视频专区 | 人妻少妇精品无码专区二区 | 亚洲国产av美女网站 | 成人无码影片精品久久久 | 亚洲精品中文字幕久久久久 | 日本丰满护士爆乳xxxx | 国产激情综合五月久久 | 中文字幕乱码人妻二区三区 | 国产三级久久久精品麻豆三级 | 内射白嫩少妇超碰 | 丰满人妻被黑人猛烈进入 | 欧美zoozzooz性欧美 | 久久综合给合久久狠狠狠97色 | 国产偷自视频区视频 | 东京无码熟妇人妻av在线网址 | 久久久精品国产sm最大网站 | 国产精品亚洲专区无码不卡 | 国产午夜亚洲精品不卡 | 任你躁在线精品免费 | 国产精品欧美成人 | 亚洲精品一区二区三区大桥未久 | 色综合天天综合狠狠爱 | 欧美丰满熟妇xxxx性ppx人交 | av香港经典三级级 在线 | 欧美色就是色 | 国产精品第一国产精品 | 狠狠色噜噜狠狠狠7777奇米 | 国内综合精品午夜久久资源 | 国产成人一区二区三区在线观看 | 欧美精品在线观看 | 色婷婷香蕉在线一区二区 | 久久五月精品中文字幕 | 久久精品国产一区二区三区 | 国产偷自视频区视频 | 一本大道伊人av久久综合 | 成人无码精品一区二区三区 | 午夜精品久久久久久久 | 亚洲欧美精品伊人久久 | 午夜嘿嘿嘿影院 | 丝袜 中出 制服 人妻 美腿 | 97精品国产97久久久久久免费 | 欧美日韩亚洲国产精品 | 乌克兰少妇xxxx做受 | 国产乱人伦av在线无码 | 日韩精品一区二区av在线 | 国产精品亚洲专区无码不卡 | 影音先锋中文字幕无码 | 精品国产成人一区二区三区 | 日韩人妻无码中文字幕视频 | 亚洲欧美国产精品久久 | 久久精品女人天堂av免费观看 | 十八禁真人啪啪免费网站 | 亚洲成av人在线观看网址 | 国产超级va在线观看视频 | 大屁股大乳丰满人妻 | 九九热爱视频精品 | 欧美人与禽猛交狂配 | 亚洲男女内射在线播放 | 免费无码肉片在线观看 | 亚洲欧洲日本无在线码 | 三上悠亚人妻中文字幕在线 | 无套内谢的新婚少妇国语播放 | 丰满人妻翻云覆雨呻吟视频 | 亚洲中文字幕乱码av波多ji | 一二三四社区在线中文视频 | 久久精品人人做人人综合试看 | 欧美freesex黑人又粗又大 | 又色又爽又黄的美女裸体网站 | 野狼第一精品社区 | 亚洲国产精品久久久久久 | 亚洲国产成人a精品不卡在线 | 中文字幕无码免费久久9一区9 | 人妻少妇精品无码专区二区 | 九月婷婷人人澡人人添人人爽 | 国产免费久久久久久无码 | 撕开奶罩揉吮奶头视频 | 久久久久成人精品免费播放动漫 | 99re在线播放 | 人人妻人人澡人人爽人人精品浪潮 | 97色伦图片97综合影院 | 性啪啪chinese东北女人 | 伊人久久大香线蕉av一区二区 | 久久99精品久久久久久 | 亚洲综合在线一区二区三区 | 国产色视频一区二区三区 | 东京热无码av男人的天堂 | 亚洲国产av精品一区二区蜜芽 | 国产人妻人伦精品 | 日日摸日日碰夜夜爽av | 亚洲精品综合一区二区三区在线 | 在线观看国产午夜福利片 | 性欧美牲交在线视频 | 欧洲极品少妇 | 国产精品美女久久久 | 男女猛烈xx00免费视频试看 | 精品一区二区三区波多野结衣 | 国产精品亚洲综合色区韩国 | 人人妻在人人 | 免费人成网站视频在线观看 | 四十如虎的丰满熟妇啪啪 | 国产成人无码av在线影院 | 久久精品成人欧美大片 | 黑人巨大精品欧美一区二区 | 国产偷自视频区视频 | 蜜桃av抽搐高潮一区二区 | 内射后入在线观看一区 | 300部国产真实乱 | www一区二区www免费 | 一本久久a久久精品vr综合 | 亚洲日韩av一区二区三区四区 | 99久久精品日本一区二区免费 | 久久99精品国产.久久久久 | 国产深夜福利视频在线 | 精品无码成人片一区二区98 | 亚洲精品美女久久久久久久 | 国产情侣作爱视频免费观看 | 精品久久综合1区2区3区激情 | 成熟妇人a片免费看网站 | 国产免费久久精品国产传媒 | 久久久婷婷五月亚洲97号色 | 精品久久久无码人妻字幂 | 人妻无码久久精品人妻 | 99国产精品白浆在线观看免费 | 成人av无码一区二区三区 | 色综合久久中文娱乐网 | 99在线 | 亚洲 | 亚洲日本va午夜在线电影 | 少妇激情av一区二区 | 人妻互换免费中文字幕 | 少妇无码av无码专区在线观看 | 久热国产vs视频在线观看 | 婷婷五月综合激情中文字幕 | 福利一区二区三区视频在线观看 | 欧美老人巨大xxxx做受 | 亚洲欧美国产精品久久 | 欧美第一黄网免费网站 | 亚洲日韩精品欧美一区二区 | 55夜色66夜色国产精品视频 | 精品水蜜桃久久久久久久 | 精品无人国产偷自产在线 | 黑森林福利视频导航 | 国产成人综合色在线观看网站 | 亚洲区欧美区综合区自拍区 | 国产亚洲精品精品国产亚洲综合 | 疯狂三人交性欧美 | 67194成是人免费无码 | 国产真实乱对白精彩久久 | 成人欧美一区二区三区黑人免费 | 国产精品第一国产精品 | 四虎永久在线精品免费网址 | 日本免费一区二区三区最新 | 久久久久成人片免费观看蜜芽 | 欧美日韩一区二区综合 | 久久99精品国产.久久久久 | 亚洲日本va中文字幕 | 亚洲中文字幕在线观看 | 久久久久免费看成人影片 | 国内少妇偷人精品视频免费 | 国产女主播喷水视频在线观看 | 日韩视频 中文字幕 视频一区 | 无码av免费一区二区三区试看 | 精品无码一区二区三区的天堂 | 野狼第一精品社区 | 亚洲aⅴ无码成人网站国产app | 亚洲中文字幕va福利 | 国产精品美女久久久 | 色 综合 欧美 亚洲 国产 | 性开放的女人aaa片 | 久久精品成人欧美大片 | 精品人妻人人做人人爽 | 人人澡人人妻人人爽人人蜜桃 | 成人精品视频一区二区 | 亚洲国产午夜精品理论片 | 国产做国产爱免费视频 | 97夜夜澡人人爽人人喊中国片 | 日日碰狠狠丁香久燥 | 国产区女主播在线观看 | 亚洲国产成人av在线观看 | 亚洲色无码一区二区三区 | 国产av一区二区精品久久凹凸 | 成 人 网 站国产免费观看 | 97夜夜澡人人双人人人喊 | 精品国产aⅴ无码一区二区 | 日本又色又爽又黄的a片18禁 | 亚洲中文字幕va福利 | 正在播放老肥熟妇露脸 | 黑森林福利视频导航 | 日本一卡二卡不卡视频查询 | 一本色道婷婷久久欧美 | 天堂亚洲2017在线观看 | 日日干夜夜干 | 人妻少妇精品视频专区 | 色综合久久久无码中文字幕 | 亚欧洲精品在线视频免费观看 | 久精品国产欧美亚洲色aⅴ大片 | 国产av一区二区精品久久凹凸 | 欧美日本日韩 | 2019午夜福利不卡片在线 | 国产成人无码av一区二区 | 国产特级毛片aaaaaa高潮流水 | 97人妻精品一区二区三区 | 无码吃奶揉捏奶头高潮视频 | 一个人免费观看的www视频 | 国产午夜无码视频在线观看 | 九九综合va免费看 | 国产色视频一区二区三区 | 亚洲精品一区二区三区在线 | 亚洲a无码综合a国产av中文 | 亚洲色偷偷偷综合网 | 中国女人内谢69xxxx | 亚洲小说春色综合另类 | 亚洲国产av美女网站 | 国产内射老熟女aaaa | 人人妻人人澡人人爽精品欧美 | av人摸人人人澡人人超碰下载 | 亚洲午夜福利在线观看 | 老司机亚洲精品影院 | 国产在线精品一区二区高清不卡 | 国产精品视频免费播放 | 国产特级毛片aaaaaaa高清 | 久久精品中文闷骚内射 | 四虎永久在线精品免费网址 | 捆绑白丝粉色jk震动捧喷白浆 | 欧洲精品码一区二区三区免费看 | 亚洲人成网站在线播放942 | 高清国产亚洲精品自在久久 | ass日本丰满熟妇pics | 亚洲色成人中文字幕网站 | 日本爽爽爽爽爽爽在线观看免 | 欧美高清在线精品一区 | 国产精品久久国产精品99 | 377p欧洲日本亚洲大胆 | 99精品视频在线观看免费 | 少妇太爽了在线观看 | 欧美日韩在线亚洲综合国产人 | 人妻尝试又大又粗久久 | 国产精品人人妻人人爽 | 亚洲成av人在线观看网址 | 国产精品永久免费视频 | 国产在线aaa片一区二区99 | 日韩人妻少妇一区二区三区 | 永久黄网站色视频免费直播 | 国产精品久免费的黄网站 | 精品国产一区二区三区四区在线看 | 亚洲人成影院在线无码按摩店 | 国产成人午夜福利在线播放 | 在线观看国产午夜福利片 | 中文字幕无码免费久久99 | 欧美人与牲动交xxxx | 老头边吃奶边弄进去呻吟 | 成人精品一区二区三区中文字幕 | 野狼第一精品社区 | 亚洲自偷自拍另类第1页 | 国产凸凹视频一区二区 | 日日天干夜夜狠狠爱 | 欧美性生交活xxxxxdddd | 欧美日韩综合一区二区三区 | 国产精品久久久一区二区三区 | 亚洲无人区午夜福利码高清完整版 | 少妇人妻av毛片在线看 | 国产综合色产在线精品 | 久久午夜无码鲁丝片午夜精品 | 国产人妖乱国产精品人妖 | 3d动漫精品啪啪一区二区中 | 性欧美疯狂xxxxbbbb | 亚洲精品久久久久中文第一幕 | 亚洲理论电影在线观看 | 中文字幕av无码一区二区三区电影 | 一区二区传媒有限公司 | 九月婷婷人人澡人人添人人爽 | 亚洲成a人一区二区三区 | 亚洲 高清 成人 动漫 | 中文字幕人成乱码熟女app | 亚洲 a v无 码免 费 成 人 a v | 在线观看欧美一区二区三区 | 少妇一晚三次一区二区三区 | 国产97人人超碰caoprom | 久久人妻内射无码一区三区 | 网友自拍区视频精品 | 精品久久久久香蕉网 | 成人亚洲精品久久久久软件 | 无码av免费一区二区三区试看 | 亚洲国产欧美国产综合一区 | 色婷婷欧美在线播放内射 | 在线亚洲高清揄拍自拍一品区 | 久久精品中文字幕大胸 | 国产精品无码一区二区桃花视频 | 国产猛烈高潮尖叫视频免费 | 亚洲精品一区三区三区在线观看 | 日日干夜夜干 | 小sao货水好多真紧h无码视频 | 内射爽无广熟女亚洲 | 色婷婷欧美在线播放内射 | 亚洲成a人片在线观看无码 | 亚洲人成网站免费播放 | 俺去俺来也在线www色官网 | 久久久久成人片免费观看蜜芽 | 中文字幕无码日韩欧毛 | 欧美35页视频在线观看 | 内射老妇bbwx0c0ck | 精品国产一区二区三区av 性色 | 狠狠综合久久久久综合网 | 国产精品亚洲а∨无码播放麻豆 | 波多野42部无码喷潮在线 | 99久久久无码国产精品免费 | 国产成人精品久久亚洲高清不卡 | 亚洲国产日韩a在线播放 | 在线a亚洲视频播放在线观看 | 麻豆精品国产精华精华液好用吗 | 色婷婷av一区二区三区之红樱桃 | а天堂中文在线官网 | 日日天干夜夜狠狠爱 | 欧美高清在线精品一区 | 亚洲中文字幕无码一久久区 | 欧洲精品码一区二区三区免费看 | 免费男性肉肉影院 | 精品国产一区二区三区av 性色 | 成人性做爰aaa片免费看不忠 | 丰满人妻一区二区三区免费视频 | 成人欧美一区二区三区黑人 | 亚洲精品鲁一鲁一区二区三区 | 久久国产精品偷任你爽任你 | 少妇久久久久久人妻无码 | 国产成人无码a区在线观看视频app | 国色天香社区在线视频 | 天天av天天av天天透 | 欧美35页视频在线观看 | 国产精品无码一区二区桃花视频 | 国产极品美女高潮无套在线观看 | 一区二区三区乱码在线 | 欧洲 | 国产精品久久久久无码av色戒 | 国产特级毛片aaaaaa高潮流水 | 免费观看激色视频网站 | 久热国产vs视频在线观看 | 人妻熟女一区 | 国产人妻久久精品二区三区老狼 | 亚洲区欧美区综合区自拍区 | 亚洲va欧美va天堂v国产综合 | 亚洲人成影院在线无码按摩店 | 国产色精品久久人妻 | 国产一区二区三区精品视频 | 欧美成人高清在线播放 | 亚洲精品欧美二区三区中文字幕 | 国产香蕉尹人视频在线 | 国产人妻精品一区二区三区 | 男人的天堂av网站 | 亚洲一区二区三区 | 亚洲国产av精品一区二区蜜芽 | 无码人妻av免费一区二区三区 | 国产精品福利视频导航 | 日本成熟视频免费视频 | 亚洲日韩av一区二区三区中文 | 久久久www成人免费毛片 | 日韩精品无码免费一区二区三区 | 免费无码午夜福利片69 | 国产精品亚洲а∨无码播放麻豆 | 国产精品二区一区二区aⅴ污介绍 | 久久婷婷五月综合色国产香蕉 | 久久综合网欧美色妞网 | 久久精品99久久香蕉国产色戒 | 亚洲欧美中文字幕5发布 | 无码国产色欲xxxxx视频 | 好屌草这里只有精品 | 风流少妇按摩来高潮 | 狠狠色欧美亚洲狠狠色www | 精品国产aⅴ无码一区二区 | 色五月五月丁香亚洲综合网 | 国产又粗又硬又大爽黄老大爷视 | 婷婷五月综合激情中文字幕 | 久久99精品国产麻豆 | 国产精品亚洲综合色区韩国 | 2020最新国产自产精品 | 国产做国产爱免费视频 | 在线观看免费人成视频 | 99精品无人区乱码1区2区3区 | 香蕉久久久久久av成人 | 精品偷自拍另类在线观看 | 国内老熟妇对白xxxxhd | 精品久久久久久人妻无码中文字幕 | 99久久久国产精品无码免费 | 四虎国产精品一区二区 | 国产亚洲精品久久久久久国模美 | 国产精品理论片在线观看 | 亚洲自偷自偷在线制服 | 又粗又大又硬又长又爽 | 精品国产青草久久久久福利 | 国产综合久久久久鬼色 | 在线а√天堂中文官网 | 一本色道久久综合亚洲精品不卡 | 国产成人午夜福利在线播放 | 黑森林福利视频导航 | 欧美自拍另类欧美综合图片区 | 亚洲国产精品无码一区二区三区 | 国产精品怡红院永久免费 | 久久久国产精品无码免费专区 | 精品成人av一区二区三区 | 国产精品无码久久av | 黑人大群体交免费视频 | 欧美日韩久久久精品a片 | 日日鲁鲁鲁夜夜爽爽狠狠 | 国产 精品 自在自线 | 欧美国产日韩亚洲中文 | 国产又粗又硬又大爽黄老大爷视 | 秋霞成人午夜鲁丝一区二区三区 | 久久99精品国产麻豆蜜芽 | 综合人妻久久一区二区精品 | 国产高清不卡无码视频 | 亚洲成av人影院在线观看 | 任你躁在线精品免费 | 澳门永久av免费网站 | 乱码午夜-极国产极内射 | 波多野结衣av在线观看 | 亚洲一区二区三区在线观看网站 | 亚洲热妇无码av在线播放 | 中文字幕无码视频专区 | 日本饥渴人妻欲求不满 | 成人一在线视频日韩国产 | 久久久中文字幕日本无吗 | 亚洲综合色区中文字幕 | 久热国产vs视频在线观看 | 国语精品一区二区三区 | 久久 国产 尿 小便 嘘嘘 | 88国产精品欧美一区二区三区 | 亚洲熟妇色xxxxx欧美老妇 | 久久久久成人片免费观看蜜芽 | 精品久久久无码中文字幕 | 色综合久久88色综合天天 | 亚洲色在线无码国产精品不卡 | 99精品国产综合久久久久五月天 | 国产偷抇久久精品a片69 | 黑人粗大猛烈进出高潮视频 | 亚洲成a人片在线观看无码3d | 熟女俱乐部五十路六十路av | 久久久av男人的天堂 | 中文字幕无码热在线视频 | 乱人伦人妻中文字幕无码久久网 | 国产猛烈高潮尖叫视频免费 | 精品国偷自产在线视频 | 奇米影视7777久久精品 | 四虎国产精品一区二区 | 亚洲国产精品久久久天堂 | 国产精品igao视频网 | 狠狠色噜噜狠狠狠7777奇米 | √天堂中文官网8在线 | 人人妻人人澡人人爽欧美精品 | 亚洲国产精品无码久久久久高潮 | 青草青草久热国产精品 | 国产精品欧美成人 | 在线亚洲高清揄拍自拍一品区 | 欧美黑人乱大交 | 风流少妇按摩来高潮 | 国产精品亚洲五月天高清 | 亚洲欧美日韩综合久久久 | 国产另类ts人妖一区二区 | 欧美日韩一区二区免费视频 | 中文亚洲成a人片在线观看 | aⅴ在线视频男人的天堂 | 日韩人妻无码中文字幕视频 | 国产高潮视频在线观看 | 乱人伦人妻中文字幕无码久久网 | 天下第一社区视频www日本 | 国产人妻人伦精品 | 成人免费视频视频在线观看 免费 | 狠狠cao日日穞夜夜穞av | 国产又爽又黄又刺激的视频 | 欧美性猛交内射兽交老熟妇 | 久久午夜无码鲁丝片午夜精品 | 一二三四社区在线中文视频 | 中文字幕精品av一区二区五区 | 免费人成在线视频无码 | 久久国产精品二国产精品 | 99re在线播放 | 狠狠cao日日穞夜夜穞av | 国产区女主播在线观看 | 爱做久久久久久 | 亚洲午夜福利在线观看 | 乌克兰少妇性做爰 | 久久久中文久久久无码 | 色婷婷香蕉在线一区二区 | 两性色午夜免费视频 | 日本大香伊一区二区三区 | 丝袜人妻一区二区三区 | 中文字幕人成乱码熟女app | 成人免费视频视频在线观看 免费 | 亚洲精品无码人妻无码 | 成人三级无码视频在线观看 | 国内揄拍国内精品人妻 | 成人aaa片一区国产精品 | 好爽又高潮了毛片免费下载 | 久久人妻内射无码一区三区 | 狠狠噜狠狠狠狠丁香五月 | 欧美日本免费一区二区三区 | 亚洲中文无码av永久不收费 | 老熟女重囗味hdxx69 | 青青久在线视频免费观看 | 四虎影视成人永久免费观看视频 | 99在线 | 亚洲 | 欧美freesex黑人又粗又大 | 久久国语露脸国产精品电影 | 欧美人与善在线com | 99精品无人区乱码1区2区3区 | 国产香蕉尹人综合在线观看 | 扒开双腿吃奶呻吟做受视频 | 97资源共享在线视频 | 青青青爽视频在线观看 | 久久综合给合久久狠狠狠97色 | 人妻与老人中文字幕 | 日本熟妇浓毛 | 国产精品嫩草久久久久 | 亚洲精品中文字幕久久久久 | 97夜夜澡人人双人人人喊 | 性欧美疯狂xxxxbbbb | 奇米影视7777久久精品人人爽 | 亚洲熟妇色xxxxx亚洲 | 300部国产真实乱 | 无码av免费一区二区三区试看 | 性欧美videos高清精品 | 亚洲中文字幕va福利 | 国产激情综合五月久久 | 日本爽爽爽爽爽爽在线观看免 | 久久久国产一区二区三区 | 男女超爽视频免费播放 | 色婷婷香蕉在线一区二区 | 国产特级毛片aaaaaaa高清 | 无码人妻丰满熟妇区毛片18 | 国产成人综合色在线观看网站 | www成人国产高清内射 | 亚洲乱码日产精品bd | 天天av天天av天天透 | 国产69精品久久久久app下载 | 国产舌乚八伦偷品w中 | 97资源共享在线视频 | 一区二区传媒有限公司 | 又湿又紧又大又爽a视频国产 | 亚洲一区av无码专区在线观看 | 好屌草这里只有精品 | 中文字幕乱码人妻二区三区 | 欧美激情一区二区三区成人 | 老太婆性杂交欧美肥老太 | 久久亚洲a片com人成 | 无码免费一区二区三区 | 7777奇米四色成人眼影 | 午夜精品一区二区三区的区别 | 狠狠色噜噜狠狠狠7777奇米 | 男人和女人高潮免费网站 | 无码av最新清无码专区吞精 | 荫蒂被男人添的好舒服爽免费视频 | 99久久99久久免费精品蜜桃 | 红桃av一区二区三区在线无码av | 久久国语露脸国产精品电影 | 国产艳妇av在线观看果冻传媒 | 国产又粗又硬又大爽黄老大爷视 | 久久综合九色综合欧美狠狠 | 自拍偷自拍亚洲精品被多人伦好爽 | 女人被爽到呻吟gif动态图视看 | 夜夜影院未满十八勿进 | 国产在线aaa片一区二区99 | 无码人妻精品一区二区三区不卡 | 激情内射日本一区二区三区 | 兔费看少妇性l交大片免费 | 国产精品二区一区二区aⅴ污介绍 | 国产精品亚洲一区二区三区喷水 | 色综合久久久久综合一本到桃花网 | 无码任你躁久久久久久久 | 午夜性刺激在线视频免费 | 午夜精品一区二区三区的区别 | 欧美午夜特黄aaaaaa片 | 欧美老妇交乱视频在线观看 | 国产av一区二区精品久久凹凸 | 久久久成人毛片无码 |