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

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

生活随笔

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

编程问答

docker修改镜像的存储位置_云原生存储详解:容器存储与 K8s 存储卷(内含赠书福利)...

發(fā)布時(shí)間:2023/12/10 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 docker修改镜像的存储位置_云原生存储详解:容器存储与 K8s 存储卷(内含赠书福利)... 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

作者 | 闞俊寶 ?阿里巴巴技術(shù)專家

參與文末留言互動(dòng),即有機(jī)會(huì)獲得贈(zèng)書(shū)福利!

導(dǎo)讀:云原生存儲(chǔ)詳解系列文章將從云原生存儲(chǔ)服務(wù)的概念、特點(diǎn)、需求、原理、使用及案例等方面,和大家一起探討云原生存儲(chǔ)技術(shù)新的機(jī)遇與挑戰(zhàn)。本文為該系列文章的第二篇,會(huì)對(duì)容器存儲(chǔ)的相關(guān)概念進(jìn)行講述,歡迎大家在留言區(qū)參與討論。

相關(guān)文章推薦:

云原生存儲(chǔ)詳解:云原生應(yīng)用的基石

云原生存儲(chǔ)詳解:容器存儲(chǔ)與 K8s 存儲(chǔ)卷

云原生存儲(chǔ)的兩個(gè)關(guān)鍵領(lǐng)域:

  • Docker 存儲(chǔ)卷:容器服務(wù)在單節(jié)點(diǎn)的存儲(chǔ)組織形式,關(guān)注數(shù)據(jù)存儲(chǔ)、容器運(yùn)行時(shí)的相關(guān)技術(shù);

  • K8s 存儲(chǔ)卷:關(guān)注容器集群的存儲(chǔ)編排,從應(yīng)用使用存儲(chǔ)的角度關(guān)注存儲(chǔ)服務(wù)。

Docker 存儲(chǔ)

容器服務(wù)之所以如此流行,一大優(yōu)勢(shì)即來(lái)自于運(yùn)行容器時(shí)容器鏡像的組織形式。容器通過(guò)復(fù)用容器鏡像的技術(shù),實(shí)現(xiàn)在相同節(jié)點(diǎn)上多個(gè)容器共享一個(gè)鏡像資源(更細(xì)一點(diǎn)說(shuō)是共享某一個(gè)鏡像層),避免了每次啟動(dòng)容器時(shí)都拷貝、加載鏡像文件,這種方式既節(jié)省了主機(jī)的存儲(chǔ)空間,又提高了容器啟動(dòng)效率。

1. 容器讀寫(xiě)層

為了提高節(jié)點(diǎn)存儲(chǔ)的使用效率,容器不光在不同運(yùn)行的容器之間共享鏡像資源,而且還實(shí)現(xiàn)了在不同鏡像之間共享數(shù)據(jù)。共享鏡像數(shù)據(jù)的實(shí)現(xiàn)原理:鏡像是分層組合而成的,即一個(gè)完整的鏡像會(huì)包含多個(gè)數(shù)據(jù)層,每層數(shù)據(jù)相互疊加、覆蓋組成了最終的完整鏡像。

為了實(shí)現(xiàn)多個(gè)容器間共享鏡像數(shù)據(jù),容器鏡像每一層都是只讀的。而通過(guò)實(shí)踐我們得知,使用鏡像啟動(dòng)一個(gè)容器的時(shí)候,其實(shí)是可以在容器里隨意讀寫(xiě)的,這是如何實(shí)現(xiàn)的呢?

容器使用鏡像時(shí),在多個(gè)鏡像分層的最上面還添加了一個(gè)讀寫(xiě)層。每一個(gè)容器在運(yùn)行時(shí),都會(huì)基于當(dāng)前鏡像在其最上層掛載一個(gè)讀寫(xiě)層,用戶針對(duì)容器的所有操作都在讀寫(xiě)層中完成。一旦容器銷(xiāo)毀,這個(gè)讀寫(xiě)層也隨之銷(xiāo)毀。

如上圖所示例子,一個(gè)節(jié)點(diǎn)上共有 3 個(gè)容器,分別基于 2 個(gè)鏡像運(yùn)行。

鏡像存儲(chǔ)層說(shuō)明如下:

該節(jié)點(diǎn)上共包含 6 個(gè)鏡像層:Layer 1~6。

  • 鏡像 1 由:Layer 1、3、4、5 組成;

  • 鏡像 2 由:Layer 2、3、5、6 組成。

所以兩個(gè)鏡像共享了 Layer 3、5 兩個(gè)鏡像層;

容器存儲(chǔ)說(shuō)明:

  • 容器 1:使用鏡像 1 啟動(dòng)

  • 容器 2:使用鏡像 1 啟動(dòng)

  • 容器 3:使用鏡像 2 啟動(dòng)

容器 1 和容器 2 共享鏡像 1,且每個(gè)容器有自己的可寫(xiě)層;

容器 1(2)和容器 3 共享鏡像 2 個(gè)層(Layer3、5);

通過(guò)上述例子可以看到,通過(guò)容器鏡像分層實(shí)現(xiàn)數(shù)據(jù)共享可以大幅減少容器服務(wù)對(duì)主機(jī)存儲(chǔ)的資源需求。

上面給出了容器讀寫(xiě)層結(jié)構(gòu),而讀寫(xiě)的原則:

對(duì)于讀:容器由這么多層的數(shù)據(jù)組合而成,當(dāng)不同層次的數(shù)據(jù)重復(fù)時(shí),讀取的原則是上層數(shù)據(jù)覆蓋下層數(shù)據(jù);

對(duì)于寫(xiě):容器修改某個(gè)文件時(shí),都是在最上層的讀寫(xiě)層進(jìn)行。主要實(shí)現(xiàn)技術(shù)有:寫(xiě)時(shí)復(fù)制、用時(shí)配置。

1)寫(xiě)時(shí)復(fù)制

寫(xiě)時(shí)復(fù)制(CoW:copy-on-write),表示只在需要寫(xiě)時(shí)才去復(fù)制,是針對(duì)已有文件的修改場(chǎng)景。CoW 技術(shù)可以讓所有的容器共享 image 的文件系統(tǒng),所有數(shù)據(jù)都從 image 中讀取,只有當(dāng)要對(duì)文件進(jìn)行寫(xiě)操作時(shí),才從 image 里把要寫(xiě)的文件復(fù)制到最上面的讀寫(xiě)層進(jìn)行修改。所以無(wú)論有多少個(gè)容器共享同一個(gè) image,所做的寫(xiě)操作都是對(duì)從 image 中復(fù)制后在復(fù)本上進(jìn)行,并不會(huì)修改 image 的源文件,且多個(gè)容器操作同一個(gè)文件,會(huì)在每個(gè)容器的文件系統(tǒng)里生成一個(gè)復(fù)本,每個(gè)容器修改的都是自己的復(fù)本,相互隔離,相互不影響。

2)用時(shí)配置

用時(shí)分配:在鏡像中原本沒(méi)有某個(gè)文件的場(chǎng)景,只有在要新寫(xiě)入一個(gè)文件時(shí)才分配空間,這樣可以提高存儲(chǔ)資源的利用率。比如啟動(dòng)一個(gè)容器,并不會(huì)為這個(gè)容器預(yù)分配一些磁盤(pán)空間,而是當(dāng)有新文件寫(xiě)入時(shí),才按需分配新空間。

2. 存儲(chǔ)驅(qū)動(dòng)

存儲(chǔ)驅(qū)動(dòng)是指如何對(duì)容器的各層數(shù)據(jù)進(jìn)行管理,已達(dá)到上述需要實(shí)現(xiàn)共享、可讀寫(xiě)的效果。即:容器存儲(chǔ)驅(qū)動(dòng)實(shí)現(xiàn)了容器讀寫(xiě)層數(shù)據(jù)的存儲(chǔ)和管理。常見(jiàn)的存儲(chǔ)驅(qū)動(dòng):

  • AUFS

  • OverlayFS

  • Devicemapper

  • Btrfs

  • ZFS

以 AUFS 為例,我們來(lái)講述一下存儲(chǔ)驅(qū)動(dòng)的工作原理:

AUFS 是一種聯(lián)合文件系統(tǒng)(UFS),是文件級(jí)的存儲(chǔ)驅(qū)動(dòng)。

AUFS 是一個(gè)能透明疊加一個(gè)或多個(gè)現(xiàn)有文件系統(tǒng)的層狀文件系統(tǒng),把多層文件系統(tǒng)合并成單層表示。即:支持將不同目錄掛載到同一個(gè)虛擬文件系統(tǒng)下的文件系統(tǒng)。

可以一層一層地疊加修改文件,其底層都是只讀的,只有最上層的文件系統(tǒng)是可寫(xiě)的。

當(dāng)需要修改一個(gè)文件時(shí),AUFS 創(chuàng)建該文件的一個(gè)副本,使用 CoW 將文件從只讀層復(fù)制到可寫(xiě)層進(jìn)行修改,結(jié)果也保存在可寫(xiě)層。

在 Docker 中,底下的只讀層就是 image,可寫(xiě)層就是 Container 運(yùn)行時(shí)。

其他各種存儲(chǔ)驅(qū)動(dòng)這里不再細(xì)講,有興趣的同學(xué)可以到網(wǎng)上查詢資料。

3. Docker 數(shù)據(jù)卷介紹

容器中的應(yīng)用讀寫(xiě)數(shù)據(jù)都是發(fā)生在容器的讀寫(xiě)層,鏡像層+讀寫(xiě)層映射為容器內(nèi)部文件系統(tǒng)、負(fù)責(zé)容器內(nèi)部存儲(chǔ)的底層架構(gòu)。當(dāng)我們需要容器內(nèi)部應(yīng)用和外部存儲(chǔ)進(jìn)行交互時(shí),需要一個(gè)類似于計(jì)算機(jī) U 盤(pán)一樣的外置存儲(chǔ),容器數(shù)據(jù)卷即提供了這樣的功能。

另一方面:容器本身的存儲(chǔ)數(shù)據(jù)都是臨時(shí)存儲(chǔ),在容器銷(xiāo)毀的時(shí)候數(shù)據(jù)會(huì)一起刪除。而通過(guò)數(shù)據(jù)卷將外部存儲(chǔ)掛載到容器文件系統(tǒng),應(yīng)用可以引用外部數(shù)據(jù),也可以將自己產(chǎn)出的數(shù)據(jù)持久化到數(shù)據(jù)卷中,所以容器數(shù)據(jù)卷是容器進(jìn)行數(shù)據(jù)持久化的實(shí)現(xiàn)方式。

容器存儲(chǔ)組成:只讀層(容器鏡像)?+?讀寫(xiě)層?+?外置存儲(chǔ)(數(shù)據(jù)卷)

容器數(shù)據(jù)卷從作用范圍可以分為:單機(jī)數(shù)據(jù)卷 和 集群數(shù)據(jù)卷。單機(jī)數(shù)據(jù)卷即為容器服務(wù)在一個(gè)節(jié)點(diǎn)上的數(shù)據(jù)卷掛載能力,docker volume 是單機(jī)數(shù)據(jù)卷的代表實(shí)現(xiàn);集群數(shù)據(jù)卷則關(guān)注的是集群級(jí)別的數(shù)據(jù)卷編排能力,K8s 數(shù)據(jù)卷則是集群數(shù)據(jù)卷的主要應(yīng)用方式。

Docker Volume 是一個(gè)可供多個(gè)容器使用的目錄,它繞過(guò) UFS,包含以下特性:

  • 數(shù)據(jù)卷可以在容器之間共享和重用;

  • 相比通過(guò)存儲(chǔ)驅(qū)動(dòng)實(shí)現(xiàn)的可寫(xiě)層,數(shù)據(jù)卷讀寫(xiě)是直接對(duì)外置存儲(chǔ)進(jìn)行讀寫(xiě),效率更高;

  • 對(duì)數(shù)據(jù)卷的更新是對(duì)外置存儲(chǔ)讀寫(xiě),不會(huì)影響鏡像和容器讀寫(xiě)層;

  • 數(shù)據(jù)卷可以一直存在,直到?jīng)]有容器使用。

1)Docker 數(shù)據(jù)卷類型

Bind:將主機(jī)目錄/文件直接掛載到容器內(nèi)部。

  • 需要使用主機(jī)的上的絕對(duì)路徑,且可以自動(dòng)創(chuàng)建主機(jī)目錄;

  • 容器可以修改掛載目錄下的任何文件,是應(yīng)用更具有便捷性,但也帶來(lái)了安全隱患。

Volume:使用第三方數(shù)據(jù)卷的時(shí)候使用這種方式。

  • Volume 命令行指令:docker volume (create/rm);

  • 是 Docker 提供的功能,所以在非 docker 環(huán)境下無(wú)法使用;

  • 分為命名數(shù)據(jù)卷和匿名數(shù)據(jù)卷,其實(shí)現(xiàn)是一致的,區(qū)別是匿名數(shù)據(jù)卷的名字為隨機(jī)碼;

  • 支持?jǐn)?shù)據(jù)卷驅(qū)動(dòng)擴(kuò)展,實(shí)現(xiàn)更多外部存儲(chǔ)類型的接入。

Tmpfs:非持久化的卷類型,存儲(chǔ)在內(nèi)存中。

數(shù)據(jù)易丟失。

2)Bind 掛載方式語(yǔ)法

-v: src:dst:opts 只支持單機(jī)版。

  • Src:表示卷映射源,主機(jī)目錄或文件,需要是絕對(duì)地址;

  • Dst:容器內(nèi)目標(biāo)掛載地址;

  • Opts:可選,掛載屬性:ro, consistent, delegated, cached, z, Z;

  • Consistent, delegated, cached:為 mac 系統(tǒng)配置共享傳播屬性;

  • Z、z:配置主機(jī)目錄的 selinux label。

示例:

$?docker?run?-d?--name?devtest?-v?/home:/data:ro,rslave?nginx
$?docker?run?-d?--name?devtest?--mount?type=bind,source=/home,target=/data,readonly,bind-propagation=rslave?nginx
$?docker?run?-d?--name?devtest?-v?/home:/data:z?nginx

3)Volume 掛載方式語(yǔ)法

-v: src:dst:opts 只支持單機(jī)版。

  • Src:表示卷映射源,數(shù)據(jù)卷名、空

  • Dst:容器內(nèi)目標(biāo)目錄

  • Opts:可選,掛載屬性:ro(只讀)

示例:

$?docker?run?-d?--name?devtest?-v?myvol:/app:ro?nginx
$?docker?run?-d?--name?devtest?--mount?source=myvol2,target=/app,readonly?nginx

4. Docker 數(shù)據(jù)卷使用

Docker 數(shù)據(jù)卷使用方式:

1)Volume 類型

  • 匿名數(shù)據(jù)卷:docker run –d -v /data3 nginx;

  • 會(huì)在主機(jī)上默認(rèn)創(chuàng)建目錄:/var/lib/docker/volumes/{volume-id}/_data 進(jìn)行映射;

  • 命名數(shù)據(jù)卷:docker run –d -v nas1:/data3 nginx;

  • 如果當(dāng)前找不到 nas1 卷,會(huì)創(chuàng)建一個(gè)默認(rèn)類型(local)的卷。

2)Bind 方式

docker run -d -v /test:/data nginx

如果主機(jī)上沒(méi)有/test目錄,則默認(rèn)創(chuàng)建此目錄。

3)數(shù)據(jù)卷容器

數(shù)據(jù)卷容器是一個(gè)運(yùn)行中的容器,其他容器可以繼承此容器中的掛載數(shù)據(jù)卷,則此容器的所有掛載都會(huì)在引用容器中體現(xiàn)。

docker run -d --volumes-from nginx1 -v /test1:/data1 nginx

繼承所有來(lái)自配置容器的數(shù)據(jù)卷,并包含自己定義的卷。

4)數(shù)據(jù)卷的掛載傳播

Docker volume 支持掛載傳播的配置:Propagation。

  • Private:掛載不傳播,源目錄和目標(biāo)目錄中的掛載都不會(huì)在另一方體現(xiàn);

  • Shared:掛載會(huì)在源和目的之間傳播;

  • Slave:源對(duì)象的掛載可以傳播到目的對(duì)象,反之不行;

  • Rprivate:遞歸 Private,默認(rèn)方式;

  • Rshared:遞歸 Shared;

  • Rslave:遞歸 Slave。

示例:

$?docker?run?–d?-v?/home:/data:shared?nginx
表示:主機(jī)/home下面掛載的目錄,在容器/data下面可用,反之可行;
$?docker?run?–d?-v?/home:/data:slave?nginx
表示:主機(jī)/home下面掛載的目錄,在容器/data下面可用,反之不行;

5)數(shù)據(jù)卷掛載的可見(jiàn)性

Volume 掛載可見(jiàn)性:

  • 本地空目錄、鏡像空目錄:無(wú)特殊處理;

  • 本地空目錄、鏡像非空目錄:鏡像目錄的內(nèi)容拷貝到主機(jī);(是拷貝,不是映射;即使容器刪除內(nèi)容也會(huì)保存);

  • 本地非空目錄、鏡像空目錄:本地目錄內(nèi)容映射到容器;

  • 本地非空目錄、鏡像非空目錄:本地目錄內(nèi)容映射到容器,容器目錄的內(nèi)容被隱藏。

Bind 掛載可見(jiàn)性:以主機(jī)目錄為準(zhǔn)。

  • 本地空目錄、鏡像空目錄:無(wú)特殊處理;

  • 本地空目錄、鏡像非空目錄:容器目錄變成空;

  • 本地非空目錄、鏡像空目錄:本地目錄內(nèi)容映射到容器;

  • 本地非空目錄、鏡像非空目錄:本地目錄內(nèi)容映射到容器,容器目錄的內(nèi)容被隱藏。

5. Docker 數(shù)據(jù)卷插件

Docker 數(shù)據(jù)卷實(shí)現(xiàn)了將容器外部存儲(chǔ)掛載到容器文件系統(tǒng)的方式。為了擴(kuò)展容器對(duì)外部存儲(chǔ)類型的需求,docker 提出了通過(guò)存儲(chǔ)插件的方式掛載不同類型的存儲(chǔ)服務(wù)。擴(kuò)展插件統(tǒng)稱為 Volume Driver,可以為每種存儲(chǔ)類型開(kāi)發(fā)一種存儲(chǔ)插件。

  • 單個(gè)節(jié)點(diǎn)上可以部署多個(gè)存儲(chǔ)插件;

  • 一個(gè)存儲(chǔ)插件負(fù)責(zé)一種存儲(chǔ)類型的掛載服務(wù)。

Docker Daemon 與 Volume driver 通信方式有:

  • Sock 文件:linux 下放在 /run/docker/plugins 目錄下

  • Spec 文件:/etc/docker/plugins/convoy.spec 定義

  • Json 文件:/usr/lib/docker/plugins/infinit.json 定義

實(shí)現(xiàn)接口:

Create, Remove, Mount, Path, Umount, Get, List, Capabilities;

使用示例:

$?docker?volume?create?--driver?nas?-o?diskid=""?-o?host="10.46.225.247"?-o?path=”/nas1"?-o?mode=""?--name?nas1

Docker Volume Driver 適用在單機(jī)容器環(huán)境或者 swarm 平臺(tái)進(jìn)行數(shù)據(jù)卷管理,隨著 K8s 的流行其使用場(chǎng)景已經(jīng)越來(lái)越少,關(guān)于 VolumeDriver 的詳細(xì)介紹這里不在細(xì)講。

有興趣可以參考:https://docs.docker.com/engine/extend/plugins_volume/

K8s 存儲(chǔ)卷

1. 基礎(chǔ)概念

根據(jù)之前的描述,為了實(shí)現(xiàn)容器數(shù)據(jù)的持久化我們需要使用數(shù)據(jù)卷的功能,在 K8s 編排系統(tǒng)中如何為運(yùn)行的負(fù)載(Pod)定義存儲(chǔ)呢?K8s 是一個(gè)容器編排系統(tǒng),其關(guān)注的是容器應(yīng)用在整個(gè)集群的管理和部署形式,所以在考慮 K8s 應(yīng)用存儲(chǔ)的時(shí)候就需要從集群角度考慮。K8s 存儲(chǔ)卷定義了在 K8s 系統(tǒng)中應(yīng)用與存儲(chǔ)的關(guān)聯(lián)關(guān)系。其包含以下概念:

1)Volume 數(shù)據(jù)卷

數(shù)據(jù)卷定義了外置存儲(chǔ)的細(xì)節(jié),并內(nèi)嵌到 Pod 中作為 Pod 的一部分。其實(shí)質(zhì)是外置存儲(chǔ)在 K8s 系統(tǒng)的一個(gè)記錄對(duì)象,當(dāng)負(fù)載需要使用外置存儲(chǔ)的時(shí)候,從數(shù)據(jù)卷中查到相關(guān)信息并進(jìn)行存儲(chǔ)掛載操作。

  • 生命周期和 Pod 一致,即 pod 被刪除的時(shí)候數(shù)據(jù)卷也一起消失(注意不是數(shù)據(jù)刪除);

  • 存儲(chǔ)細(xì)節(jié)定義在編排模板中,應(yīng)用編排感知存儲(chǔ)細(xì)節(jié);

  • 一個(gè)負(fù)載(Pod)中可以同時(shí)定義多個(gè) volume,可以是相同類型或不同類型的存儲(chǔ);

  • Pod 的每個(gè) container 可以引用一個(gè)或多個(gè) volume,不同 container 可以同時(shí)使用相同 volume。

K8S Volume 常用類型:

  • 本地存儲(chǔ):如 HostPath、emptyDir,這些存儲(chǔ)卷的特點(diǎn)是,數(shù)據(jù)保存在集群的特定節(jié)點(diǎn)上,并且不能隨著應(yīng)用飄逸,節(jié)點(diǎn)宕機(jī)時(shí)數(shù)據(jù)即不再可用;

  • 網(wǎng)絡(luò)存儲(chǔ):Ceph、Glusterfs、NFS、Iscsi 等類型,這些存儲(chǔ)卷的特點(diǎn)是數(shù)據(jù)不在集群的某個(gè)節(jié)點(diǎn)上,而是在遠(yuǎn)端的存儲(chǔ)服務(wù)上,使用存儲(chǔ)卷時(shí)需要將存儲(chǔ)服務(wù)掛載到本地使用;

  • Secret/ConfigMap:這些存儲(chǔ)卷類型,其數(shù)據(jù)是集群的一些對(duì)象信息,并不屬于某個(gè)節(jié)點(diǎn),使用時(shí)將對(duì)象數(shù)據(jù)以卷的形式掛載到節(jié)點(diǎn)上供應(yīng)用使用;

  • CSI/Flexvolume:這是兩種數(shù)據(jù)卷擴(kuò)容方式,可以理解為抽象的數(shù)據(jù)卷類型。每種擴(kuò)展方式都可再細(xì)化成不同的存儲(chǔ)類型;

  • PVC:一種數(shù)據(jù)卷定義方式,將數(shù)據(jù)卷抽象成一個(gè)獨(dú)立于 pod 的對(duì)象,這個(gè)對(duì)象定義(關(guān)聯(lián))的存儲(chǔ)信息即存儲(chǔ)卷對(duì)應(yīng)的真正存儲(chǔ)信息,供 K8s 負(fù)載掛載使用。

一些 volume 模板示例如下:

volumes:
??-?name:?hostpath
????hostPath:
??????path:?/data
??????type:?Directory
---
??volumes:
??-?name:?disk-ssd
????persistentVolumeClaim:
??????claimName:?disk-ssd-web-0
??-?name:?default-token-krggw
????secret:
??????defaultMode:?420
??????secretName:?default-token-krggw
---
??volumes:
????-?name:?"oss1"
??????flexVolume:
????????driver:?"alicloud/oss"
????????options:
??????????bucket:?"docker"
??????????url:?"oss-cn-hangzhou.aliyuncs.com"

2)PVC 和 PV

  • K8s 存儲(chǔ)卷是一個(gè)集群級(jí)別的概念,其對(duì)象作用范圍是整個(gè) K8s 集群,而不是而一個(gè)節(jié)點(diǎn);

  • K8s 存儲(chǔ)卷包含一些對(duì)象(PVC、PV、SC),這些對(duì)象和應(yīng)用負(fù)載(Pod)是獨(dú)立,通過(guò)編排模板進(jìn)行關(guān)聯(lián);

  • K8s 存儲(chǔ)卷可以有自己的獨(dú)立生命周期,不依附于 Pod。

PVC 是 PersistentVolumeClaim 的縮寫(xiě),譯為存儲(chǔ)聲明;PVC 是在 K8s 中一種抽象的存儲(chǔ)卷類型,代表了某個(gè)具體類型存儲(chǔ)的數(shù)據(jù)卷表達(dá)。其設(shè)計(jì)意圖是:存儲(chǔ)與應(yīng)用編排分離,將存儲(chǔ)細(xì)節(jié)抽象出來(lái)并實(shí)現(xiàn)存儲(chǔ)的編排(存儲(chǔ)卷)。這樣 K8s 中存儲(chǔ)卷對(duì)象獨(dú)立于應(yīng)用編排而單獨(dú)存在,在編排層面使應(yīng)用和存儲(chǔ)解耦。

PV 是 PersistentVolume 的縮寫(xiě),譯為持久化存儲(chǔ)卷;PV 在 K8s 中代表一個(gè)具體存儲(chǔ)類型的卷,其對(duì)象中定義了具體存儲(chǔ)類型和卷參數(shù)。即目標(biāo)存儲(chǔ)服務(wù)所有相關(guān)的信息都保存在 PV 中,K8s 引用 PV 中的存儲(chǔ)信息執(zhí)行掛載操作。

應(yīng)用負(fù)載、PVC、PV 的關(guān)聯(lián)關(guān)系為:

從實(shí)現(xiàn)上看,只要有了 PV 既可以實(shí)現(xiàn)存儲(chǔ)和應(yīng)用的編排分離,也能實(shí)現(xiàn)數(shù)據(jù)卷的掛載,為何要用 PVC + PV 兩個(gè)對(duì)象呢?

K8s 這樣設(shè)計(jì)是從應(yīng)用角度對(duì)存儲(chǔ)卷進(jìn)行二次抽象;由于 PV 描述的是對(duì)具體存儲(chǔ)類型,需要定義詳細(xì)的存儲(chǔ)信息,而應(yīng)用層用戶在消費(fèi)存儲(chǔ)服務(wù)的時(shí)候往往不希望對(duì)底層細(xì)節(jié)知道的太多,讓?xiě)?yīng)用編排層面來(lái)定義具體的存儲(chǔ)服務(wù)不夠友好。這時(shí)對(duì)存儲(chǔ)服務(wù)再次進(jìn)行抽象,只把用戶關(guān)系的參數(shù)提煉出來(lái),用 PVC 來(lái)抽象更底層的 PV。所以 PVC、PV 關(guān)注的對(duì)象不一樣,PVC 關(guān)注用戶對(duì)存儲(chǔ)需求,給用戶提供統(tǒng)一的存儲(chǔ)定義方式;而 PV 關(guān)注的是存儲(chǔ)細(xì)節(jié),可以定義具體存儲(chǔ)類型、存儲(chǔ)掛載使用的詳細(xì)參數(shù)等。

使用時(shí)應(yīng)用層會(huì)聲明一個(gè)對(duì)存儲(chǔ)的需求(PVC),而 K8s 會(huì)通過(guò)最佳匹配的方式選擇一個(gè)滿足 PVC 需求的 PV,并與之綁定。所以從職責(zé)上 PVC 是應(yīng)用所需要的存儲(chǔ)對(duì)象,屬于應(yīng)用作用域(和應(yīng)用處于一個(gè)名詞空間);PV 是存儲(chǔ)平面的存儲(chǔ)對(duì)象,屬于整個(gè)存儲(chǔ)域(不屬于某個(gè)名詞空間);

下面給出 PVC、PV 的一些屬性:

  • PVC 和 PV 總是成對(duì)出現(xiàn)的,PVC 必須與 PV 綁定后才能被應(yīng)用(Pod)消費(fèi);

  • PVC 和 PV 是一一綁定關(guān)系,不存在一個(gè) PV 被多個(gè) PVC 綁定,或者一個(gè) PVC 綁定多個(gè) PV 的情況;

  • PVC 是應(yīng)用層面的存儲(chǔ)概念,是屬于具體的名詞空間的;

  • PV 是存儲(chǔ)層面的存儲(chǔ)概念,是集群級(jí)別的,不屬于某個(gè)名詞空間;PV 常由專門(mén)的存儲(chǔ)運(yùn)維人員負(fù)責(zé)管理;

  • 消費(fèi)關(guān)系上:Pod 消費(fèi) PVC,PVC 消費(fèi) PV,而 PV 定義了具體的存儲(chǔ)介質(zhì)。

3)PVC 詳細(xì)定義

PVC 定義的模板如下:

apiVersion:?v1
kind:?PersistentVolumeClaim
metadata:
??name:?disk-ssd-web-0
spec:
??accessModes:
??-?ReadWriteOnce
??resources:
????requests:
??????storage:?20Gi
??storageClassName:?alicloud-disk-available
??volumeMode:?Filesystem

PVC 定義的存儲(chǔ)接口包括:存儲(chǔ)的讀寫(xiě)模式、資源容量、卷模式等;主要參數(shù)說(shuō)明如下:

accessModes:存儲(chǔ)卷的訪問(wèn)模式,支持:ReadWriteOnce、ReadWriteMany、ReadOnlyMany 三種模式。

  • ReadWriteOnce 表示 pvc 只能同時(shí)被一個(gè) pod 以讀寫(xiě)方式消費(fèi);

  • ReadWriteMany 可以同時(shí)被多個(gè) pod 以讀寫(xiě)方式消費(fèi);

  • ReadOnlyMany 表示可以同時(shí)被多個(gè) pod 以只讀方式消費(fèi)。

注意:這里定義的訪問(wèn)模式只是編排層面的聲明,具體應(yīng)用在讀寫(xiě)存儲(chǔ)文件的時(shí)候是否可讀可寫(xiě),需要具體的存儲(chǔ)插件實(shí)現(xiàn)確定。

storage:定義此 PVC 對(duì)象期望提供的存儲(chǔ)容量,同樣此處的數(shù)據(jù)大小也只是編排聲明的值,具體存儲(chǔ)容量要看底層存儲(chǔ)服務(wù)類型。

volumeMode:表示存儲(chǔ)卷掛載模式,支持 FileSystem、Block 兩種模式;

FileSystem:將數(shù)據(jù)卷掛載成文件系統(tǒng)的方式供應(yīng)用使用;

Block:將數(shù)據(jù)卷掛載成塊設(shè)備的形式供應(yīng)用使用。

4)PV 詳細(xì)定義

下面為云盤(pán)數(shù)據(jù)卷 PV 對(duì)象的編排示例:

apiVersion:?v1
kind:?PersistentVolume
metadata:
??labels:
????failure-domain.beta.kubernetes.io/region:?cn-shenzhen
????failure-domain.beta.kubernetes.io/zone:?cn-shenzhen-e
??name:?d-wz9g2j5qbo37r2lamkg4
spec:
??accessModes:
??-?ReadWriteOnce
??capacity:
????storage:?30Gi
??flexVolume:
????driver:?alicloud/disk
????fsType:?ext4
????options:
??????VolumeId:?d-wz9g2j5qbo37r2lamkg4
??persistentVolumeReclaimPolicy:?Delete
??storageClassName:?alicloud-disk-available
??volumeMode:?Filesystem
  • accessModes:存儲(chǔ)卷的訪問(wèn)模式,支持:ReadWriteOnce、ReadWriteMany、ReadOnlyMany 三種模式;具體含義同 PVC 字段;

  • capacity:定義存儲(chǔ)卷容量;

  • persistentVolumeReclaimPolicy:定義回收策略,即刪除 pvc 的時(shí)候如何處理 PV;支持 Delete、Retain 兩種類型,動(dòng)態(tài)數(shù)據(jù)卷部分會(huì)詳細(xì)說(shuō)明此參數(shù);

  • storageClassName:表示存儲(chǔ)卷的使用的存儲(chǔ)類名字,動(dòng)態(tài)數(shù)據(jù)卷部分會(huì)詳細(xì)說(shuō)明此參數(shù);

  • volumeMode:同 PVC 中的 volumeMode 定義;

  • Flexvolume:此字段表示具體的存儲(chǔ)類型,這里 Flexvolume 為一種抽象的存儲(chǔ)類型,并在 flexvolume 的子配置項(xiàng)中定義了具體的存儲(chǔ)類型、存儲(chǔ)參數(shù)。

5)PVC/PV 綁定

PVC 只有綁定了 PV 之后才能被 Pod 使用,而 PVC 綁定 PV 的過(guò)程即是消費(fèi) PV 的過(guò)程,這個(gè)過(guò)程是有一定規(guī)則的,下面規(guī)則都滿足的 PV 才能被 PVC 綁定:

  • VolumeMode:被消費(fèi) PV 的 VolumeMode 需要和 PVC 一致;

  • AccessMode:被消費(fèi) PV 的 AccessMode 需要和 PVC 一致;

  • StorageClassName:如果 PVC 定義了此參數(shù),PV 必須有相關(guān)的參數(shù)定義才能進(jìn)行綁定;

  • LabelSelector:通過(guò) label 匹配的方式從 PV 列表中選擇合適的 PV 綁定;

  • storage:被消費(fèi) PV 的 capacity 必須大于或者等于 PVC 的存儲(chǔ)容量需求才能被綁定。

滿足上述所有需要的 PV 才可以被 PVC 綁定。

如果同時(shí)有多個(gè) PV 滿足需求,則需要從 PV 中選擇一個(gè)更合適的進(jìn)行綁定;通常選擇容量最小的,如果容量最小的也有多個(gè),則隨機(jī)選擇。

如果沒(méi)有滿足上述需求的 PV 存儲(chǔ),則 PVC 會(huì)處于 Pending 狀態(tài),等待有合適的 PV 出現(xiàn)了再進(jìn)行綁定。

2. 靜態(tài)、動(dòng)態(tài)存儲(chǔ)卷

從上面的討論我們了解到,PVC 是針對(duì)應(yīng)用服務(wù)對(duì)存儲(chǔ)的二次抽象,具有簡(jiǎn)潔的存儲(chǔ)定義接口。而 PV 是具有繁瑣存儲(chǔ)細(xì)節(jié)的存儲(chǔ)抽象,一般有專門(mén)的集群管理人員定義、維護(hù)。

根據(jù) PV 的創(chuàng)建方式可以將存儲(chǔ)卷分為動(dòng)態(tài)存儲(chǔ)和靜態(tài)存儲(chǔ)卷:

  • 靜態(tài)存儲(chǔ)卷:由管理員創(chuàng)建的 PV

  • 動(dòng)態(tài)存儲(chǔ)卷:由 Provisioner 插件創(chuàng)建的 PV

1)靜態(tài)存儲(chǔ)卷

一般先由集群管理員分析集群中存儲(chǔ)需求,并預(yù)先分配一些存儲(chǔ)介質(zhì),同時(shí)創(chuàng)建對(duì)應(yīng)的 PV 對(duì)象,創(chuàng)建好的 PV 對(duì)象等待 PVC 來(lái)消費(fèi)。如果負(fù)載中定義了 PVC 需求,K8s 會(huì)通過(guò)相關(guān)規(guī)則實(shí)現(xiàn) PVC 和匹配的 PV 進(jìn)行綁定,這樣就實(shí)現(xiàn)了應(yīng)用對(duì)存儲(chǔ)服務(wù)的訪問(wèn)能力。

2)動(dòng)態(tài)存儲(chǔ)卷

由集群管理員配置好后端的存儲(chǔ)池,并創(chuàng)建相應(yīng)的模板(storageclass),等到有 PVC 需要消費(fèi) PV 的時(shí)候,根據(jù) PVC 定義的需求,并參考 storageclass 的存儲(chǔ)細(xì)節(jié),由 Provisioner 插件動(dòng)態(tài)創(chuàng)建一個(gè) PV。

兩種卷的比較:

  • 動(dòng)態(tài)存儲(chǔ)卷和靜態(tài)存儲(chǔ)卷最終的效果都是:Pod -> PVC -> PV 的使用鏈路,且對(duì)象的具體模板定義都是一致的;

  • 動(dòng)態(tài)存儲(chǔ)卷和靜態(tài)存儲(chǔ)卷區(qū)別是:動(dòng)態(tài)卷是插件自動(dòng)創(chuàng)建 PV,而靜態(tài)卷是集群管理員手動(dòng)創(chuàng)建 PV。

提供動(dòng)態(tài)存儲(chǔ)卷的優(yōu)勢(shì):

  • 動(dòng)態(tài)卷讓 K8s 實(shí)現(xiàn)了 PV 的自動(dòng)化生命周期管理,PV 的創(chuàng)建、刪除都通過(guò) Provisioner 完成;

  • 自動(dòng)化創(chuàng)建 PV 對(duì)象,減少了配置復(fù)雜度和系統(tǒng)管理員的工作量;

  • 動(dòng)態(tài)卷可以實(shí)現(xiàn) PVC 對(duì)存儲(chǔ)的需求容量和 Provision 出來(lái)的 PV 容量一致,實(shí)現(xiàn)存儲(chǔ)容量規(guī)劃最優(yōu)。

3)動(dòng)態(tài)卷的實(shí)現(xiàn)流程

當(dāng)用戶聲明一個(gè) PVC 時(shí),如果在 PVC 中添加了 StorageClassName 字段,其意圖為:當(dāng) PVC 在集群中找不到匹配的 PV 時(shí),會(huì)根據(jù) StorageClassName 的定義觸發(fā)相應(yīng)的 Provisioner 插件創(chuàng)建合適的 PV 供綁定,即創(chuàng)建動(dòng)態(tài)數(shù)據(jù)卷;動(dòng)態(tài)數(shù)據(jù)卷時(shí)由 Provisioner 插件創(chuàng)建的,并通過(guò) StorageClassName 與 PVC 進(jìn)行關(guān)聯(lián)。

StorageClass 可譯為存儲(chǔ)類,表示為一個(gè)創(chuàng)建 PV 存儲(chǔ)卷的模板;在 PVC 觸發(fā)自動(dòng)創(chuàng)建PV的過(guò)程中,即使用 StorageClass 對(duì)象中的內(nèi)容進(jìn)行創(chuàng)建。其內(nèi)容包括:目標(biāo) Provisioner 名字,創(chuàng)建 PV 的詳細(xì)參數(shù),回收模式等配置。

StorageClasss 模板定義如下:

apiVersion:?storage.k8s.io/v1
kind:?StorageClass
metadata:
??name:?alicloud-disk-topology
parameters:
??type:?cloud_ssd
provisioner:?diskplugin.csi.alibabacloud.com
reclaimPolicy:?Delete
allowVolumeExpansion:?true
volumeBindingMode:?WaitForFirstConsumer
  • provisioner:為一個(gè)注冊(cè)插件的名字,此插件實(shí)現(xiàn)了創(chuàng)建 PV 的功能;一個(gè) StorageClass 只能定義一個(gè)Provisioner;

  • parameters:表示創(chuàng)建數(shù)據(jù)卷的具體參數(shù);例如這里表示創(chuàng)建一個(gè) SSD 類型的云盤(pán);

  • reclaimPolicy:用來(lái)指定創(chuàng)建 PV 的 persistentVolumeReclaimPolicy 字段值,支持 Delete/Retain;Delete 表示動(dòng)態(tài)創(chuàng)建的 PV,在銷(xiāo)毀的時(shí)候也會(huì)自動(dòng)銷(xiāo)毀;Retain 表示動(dòng)態(tài)創(chuàng)建的 PV,不會(huì)自動(dòng)銷(xiāo)毀,而是由管理員來(lái)處理;

  • allowVolumeExpansion:定義由此存儲(chǔ)類創(chuàng)建的 PV 是否運(yùn)行動(dòng)態(tài)擴(kuò)容,默認(rèn)為 false;是否能動(dòng)態(tài)擴(kuò)容是有底層存儲(chǔ)插件來(lái)實(shí)現(xiàn)的,這里只是一個(gè)開(kāi)關(guān);

  • volumeBindingMode:表示動(dòng)態(tài)創(chuàng)建 PV 的時(shí)間,支持 Immediate/WaitForFirstConsumer;分別表示立即創(chuàng)建和延遲創(chuàng)建。

用戶創(chuàng)建一個(gè) PVC 聲明時(shí),會(huì)在集群尋找合適的 PV 進(jìn)行綁定,如果沒(méi)有合適的 PV 與之綁定,則觸發(fā)下面流程:

  • Volume Provisioner 會(huì) watch 到這個(gè) PVC 的存在,若這個(gè) PVC 定義了 StorageClassName,且 StorageClass 對(duì)象中定義的 Provisioner 插件是自己,Provisioner 會(huì)觸發(fā)創(chuàng)建 PV 的流程;

  • Provisioner 根據(jù) PVC 定義的參數(shù)(Size、VolumeMode、AccessModes)以及 StorageClass 定義的參數(shù)(ReclaimPolicy、Parameters)執(zhí)行 PV 創(chuàng)建;

  • Provisioner 會(huì)在存儲(chǔ)介質(zhì)端創(chuàng)建數(shù)據(jù)卷(通過(guò) API 調(diào)用,或者其他方式),完成后會(huì)創(chuàng)建 PV 對(duì)象;

  • PV 創(chuàng)建完成后,實(shí)現(xiàn)與 PVC 的綁定;以滿足后續(xù)的 Pod 啟動(dòng)流程。

4)延遲綁定動(dòng)態(tài)數(shù)據(jù)卷

某種存儲(chǔ)(阿里云云盤(pán))在掛載屬性上有所限制,只能將相同可用區(qū)的數(shù)據(jù)卷和 Node 節(jié)點(diǎn)進(jìn)行掛載,不在同一個(gè)可用區(qū)不可以掛載。這種類型的存儲(chǔ)卷通常遇到如下問(wèn)題:

  • 創(chuàng)建了 A 可用區(qū)的數(shù)據(jù)卷,但是 A 可用區(qū)的節(jié)點(diǎn)資源已經(jīng)耗光,導(dǎo)致 Pod 啟動(dòng)無(wú)法完成掛載;

  • 集群管理員在規(guī)劃 PVC、PV 的時(shí)候不能確定在哪些可用區(qū)創(chuàng)建多個(gè) PV 來(lái)備用。

StorageClass 中的 volumeBindingMode 字段正是用來(lái)解決此問(wèn)題,如果將 volumeBindingMode 配置為 WaitForFirstConsumer 值,則表示 Provisioner 在收到 PVC Pending 的時(shí)候不會(huì)立即進(jìn)行數(shù)據(jù)卷創(chuàng)建,而是等待這個(gè) PVC 被 Pod 消費(fèi)的時(shí)候才執(zhí)行創(chuàng)建流程。

其實(shí)現(xiàn)原理是:

  • Provisioner 在收到 PVC Pending 狀態(tài)的時(shí)候不會(huì)立即進(jìn)行數(shù)據(jù)卷創(chuàng)建,而是等待這個(gè) PVC 被 Pod 消費(fèi);

  • 如果有 Pod 消費(fèi)此 PVC,調(diào)度器發(fā)現(xiàn) PVC 是延遲綁定,則 pv 繼續(xù)完成調(diào)度功能(后續(xù)會(huì)詳細(xì)講解存儲(chǔ)調(diào)度);且調(diào)度器會(huì)將調(diào)度結(jié)果 patch 到 PVC 的 metadata 中;

  • 當(dāng) Provisioner 發(fā)現(xiàn) PVC 中寫(xiě)入了調(diào)度信息時(shí),會(huì)根據(jù)調(diào)度信息獲取創(chuàng)建目標(biāo)數(shù)據(jù)卷的位置信息(zone、Node),并觸發(fā) PV 的創(chuàng)建流程。

通過(guò)上述流程可見(jiàn):延遲綁定會(huì)先讓?xiě)?yīng)用負(fù)載進(jìn)行調(diào)度(確定有充足的資源供 pod 使用),然后再觸發(fā)動(dòng)態(tài)卷的創(chuàng)建流程,這樣就避免了數(shù)據(jù)卷所在可用區(qū)沒(méi)有資源的問(wèn)題,也避免了存儲(chǔ)預(yù)規(guī)劃的不準(zhǔn)確性問(wèn)題。

在多可用區(qū)集群環(huán)境中,更推薦使用延遲綁定的動(dòng)態(tài)卷方案,目前阿里云 ACK 集群已經(jīng)支持上述配置方案。

3. 使用示例

下面給出一個(gè) pod 消費(fèi) PVC、PV 的例子:

apiVersion:?v1
kind:?PersistentVolumeClaim
metadata:
??name:?nas-pvc
spec:
??accessModes:
??-?ReadWriteOnce
??resources:
????requests:
??????storage:?50Gi
??selector:
????matchLabels:
??????alicloud-pvname:?nas-csi-pv
---
apiVersion:?v1
kind:?PersistentVolume
metadata:
??name:?nas-csi-pv
??labels:
????alicloud-pvname:?nas-csi-pv
spec:
??capacity:
????storage:?50Gi
??accessModes:
????-?ReadWriteOnce
??persistentVolumeReclaimPolicy:?Retain
??flexVolume:
????driver:?"alicloud/nas"
????options:
??????server:?"***-42ad.cn-shenzhen.extreme.nas.aliyuncs.com"
??????path:?"/share/nas"
---
apiVersion:?apps/v1
kind:?Deployment
metadata:
??name:?deployment-nas
??labels:
????app:?nginx
spec:
??selector:
????matchLabels:
??????app:?nginx
??template:
????metadata:
??????labels:
????????app:?nginx
????spec:
??????containers:
??????-?name:?nginx1
????????image:?nginx:1.8
??????-?name:?nginx2
????????image:?nginx:1.7.9
????????volumeMounts:
??????????-?name:?nas-pvc
????????????mountPath:?"/data"
??????volumes:
????????-?name:?nas-pvc
??????????persistentVolumeClaim:
????????????claimName:?nas-pvc

模板解析:

  • 此應(yīng)用為 Deployment 方式編排的一個(gè) Nginx 服務(wù),每個(gè) pod 包含 2 個(gè)容器:nginx1、nginx2;

  • 模板中定義了 Volumes 字段,說(shuō)明期望掛載數(shù)據(jù)卷給應(yīng)用使用,此例中使用了 PVC 這種數(shù)據(jù)卷定義方式;

  • 應(yīng)用內(nèi)部:將數(shù)據(jù)卷 nas-pvc 掛載到 nginx2容器的 /data 目錄上;nginx1 容器并沒(méi)有掛載;

  • PVC(nas-pvc)定義為一個(gè)不小于 50G 容量、讀寫(xiě)方式為 ReadWriteOnce 的存儲(chǔ)卷需求,且對(duì) PV 有 Label 設(shè)置的需求;

  • PV(nas-csi-pv)定義為一個(gè)容量為 50G、讀寫(xiě)方式為 ReadWriteOnce、回收模式為 Retain、類型為 Flexvolume 抽象類型的存儲(chǔ)卷,且具有 Label 配置;

根據(jù) PVC、PV 綁定的邏輯,此 PV 符合 PVC 消費(fèi)要求,則 PVC 會(huì)和此 PV 進(jìn)行綁定,并供 pod 掛載使用。

總結(jié)

此篇文章較為詳細(xì)的講述了容器存儲(chǔ)的整體面貌,包括單機(jī)范圍的 Docker 數(shù)據(jù)卷、和集群式的 K8s 數(shù)據(jù)卷;K8s 數(shù)據(jù)卷更多關(guān)注的時(shí)候集群級(jí)別的存儲(chǔ)編排能力,同時(shí)也在節(jié)點(diǎn)上實(shí)現(xiàn)了具體的數(shù)據(jù)卷掛載流程。K8s 為了實(shí)現(xiàn)上述復(fù)雜的存儲(chǔ)卷編排能力,其實(shí)現(xiàn)架構(gòu)也較為復(fù)雜,下節(jié)內(nèi)容我們將為您介紹 K8s 的存儲(chǔ)架構(gòu)和實(shí)現(xiàn)流程。

-?贈(zèng)書(shū)福利?-

6 月 22 日 12:00 前在留言區(qū)歡迎大家討論交流你對(duì)于容器存儲(chǔ)的疑惑,精選留言點(diǎn)贊第 1 名即可免費(fèi)獲得此書(shū)!

總結(jié)

以上是生活随笔為你收集整理的docker修改镜像的存储位置_云原生存储详解:容器存储与 K8s 存储卷(内含赠书福利)...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

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

91精品视频免费看 | 91桃色在线播放 | 久草在线手机观看 | 成人动图| 国产黄大片在线观看 | 精品人人人| 亚洲高清av在线 | 日韩一区二区三区观看 | 最近中文字幕免费 | 日韩欧美电影在线 | 亚洲天堂网视频在线观看 | 高清不卡一区二区在线 | 激情小说网站亚洲综合网 | 日本成人免费在线观看 | 成年性视频 | 日本视频精品 | 国产精品一区免费观看 | 国产视频在线免费观看 | 久久美女高清视频 | 激情综合网天天干 | 国产99久久久国产精品 | 欧美成年黄网站色视频 | 国产91精品看黄网站 | 国产精品麻豆三级一区视频 | 国产视频2区 | 色爱区综合激月婷婷 | 欧美91av| 综合色影院 | 亚洲综合在线五月 | 免费网站黄 | 久久99在线观看 | 天天摸天天舔天天操 | 在线你懂 | 丝袜+亚洲+另类+欧美+变态 | 国产精品色视频 | 99精品视频在线 | 四虎在线免费观看视频 | 中文字幕中文字幕中文字幕 | 亚洲视频资源在线 | 亚洲天堂自拍视频 | 国产网站色| 人人看人人艹 | 成人作爱视频 | 五月天综合激情网 | 波多野结衣资源 | 久久理论电影网 | 国产亚洲精品日韩在线tv黄 | 欧美aa一级片 | 国产高清视频色在线www | 99国产精品一区 | 手机av电影在线观看 | av经典在线| 日本三级全黄少妇三2023 | 中文字幕你懂的 | 在线观看一区二区视频 | 黄色日本免费 | 欧美一级乱黄 | 欧美日韩视频精品 | 99国内精品| av在线a | 最近中文字幕完整视频高清1 | 国产精品久久一区二区三区不卡 | 亚洲精品国产自产拍在线观看 | 91网在线看 | 欧美在线观看禁18 | 亚洲天天| 99中文视频在线 | 国产一级黄色av | 天天射色综合 | 97色婷婷成人综合在线观看 | 国产美女精品在线 | 九九热在线视频 | 亚洲黄色三级 | 午夜天天操 | 欧美日韩不卡一区二区三区 | 一级久久久 | 在线韩国电影免费观影完整版 | 国产精品毛片一区视频 | 国产一二区精品 | 欧美日本不卡视频 | 在线日韩视频 | 久久精品国产精品亚洲精品 | 成人av一级片| 91福利社在线观看 | 99视频精品全国免费 | 亚洲国产理论片 | 国产日韩中文字幕在线 | 久久美女高清视频 | 天天操夜夜操夜夜操 | 中文字幕高清有码 | 欧美久久久一区二区三区 | 成人久久18免费网站图片 | 久久精品视频免费播放 | 在线看毛片网站 | 天堂在线成人 | 国产黄色片久久 | 成人午夜影院在线观看 | 99久久精品无码一区二区毛片 | 色午夜| 粉嫩一区二区三区粉嫩91 | 这里只有精品视频在线观看 | 色吊丝av中文字幕 | 日韩a在线看 | 欧美一二三视频 | 五月天婷亚洲天综合网精品偷 | 天天爽夜夜爽精品视频婷婷 | 国产精品日韩在线观看 | 丁香久久久 | 久久久精品网 | 人人插人人艹 | 九九热中文字幕 | 国产亚洲一区二区在线观看 | 一区二区三区福利 | 国产精品99久久久久久久久 | 亚洲 欧美 成人 | 久色免费视频 | 欧美精品久久久久久久久久 | 色婷婷久久一区二区 | av解说在线| 欧美黄污视频 | 日韩久久精品一区二区三区 | 国产99免费 | www.色午夜 | 国产伦精品一区二区三区照片91 | 99免费在线 | 天天天天综合 | 999国内精品永久免费视频 | 国语精品免费视频 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 免费麻豆视频 | 久久久久国产一区二区三区 | 91精品麻豆| 欧美精品久久天天躁 | 国内精品久久天天躁人人爽 | 日韩高清一二区 | 91日韩在线视频 | 亚洲黄色在线免费观看 | 国产小视频网站 | 手机av在线不卡 | 在线观看免费版高清版 | 制服丝袜在线91 | 美女视频免费一区二区 | 亚洲人成免费网站 | 精品专区 | 国产在线国偷精品产拍 | 免费91在线观看 | 亚洲欧洲国产精品 | 国产亚洲精品久久久久久久久久 | 91视频久久久久 | 国色天香第二季 | 这里只有精彩视频 | 亚洲黄色小说网址 | 中文字幕免费观看 | 97超级碰碰碰视频在线观看 | 可以免费看av | 中文字幕免费高清在线观看 | 国产一级在线观看 | 国产护士hd高朝护士1 | 日本一区二区三区视频在线播放 | 狠狠色伊人亚洲综合网站色 | 99热只有精品在线观看 | 久久久久久久久久久久国产精品 | 91精品在线观看视频 | 国产999精品 | 国产麻豆精品95视频 | 国产成人一区二区三区久久精品 | 国产精品色婷婷视频 | 国产精品一区二区三区免费看 | 久久国产网 | 亚洲黄色免费在线 | 天天操福利视频 | 狠狠干2018| www操操| 奇米四色影狠狠爱7777 | 欧美一级高清片 | 久久美女免费视频 | 久久久网页 | 国产精品久久久区三区天天噜 | 国产1级视频| 亚洲激情视频 | 日韩免费高清在线 | 久久国产一区二区三区 | 久久精品一级片 | 亚洲在线a| 久久久精品久久日韩一区综合 | 亚洲精品在线看 | 五月天久久久久 | 最新亚洲视频 | 国产高清免费视频 | 国产日产精品一区二区三区四区 | 91麻豆免费看 | 最新中文字幕 | 久久成人一区 | 中文字幕美女免费在线 | 成人黄色小说视频 | 私人av| 成人av资源 | 精品福利网站 | 久久深夜 | 一区二区三区四区五区六区 | 97超视频在线观看 | 国产成人久久精品一区二区三区 | 亚洲国产精品99久久久久久久久 | 国产黄免费在线观看 | 草久久久 | 91麻豆精品91久久久久同性 | 伊人六月 | 看av在线 | 国产视频手机在线 | 一区二区三区免费播放 | 国产成人精品久久亚洲高清不卡 | 精品国产一区二 | 久久爽久久爽久久av东京爽 | 欧美性色综合 | 午夜精品一区二区三区在线 | 美女在线免费观看视频 | 视频91在线 | 在线国产视频一区 | 中文字幕一区二区在线播放 | 免费看污网站 | 人人看97 | 亚洲精品视频网站在线观看 | 在线观看亚洲电影 | 五月天视频网站 | 国产盗摄精品一区二区 | 97国产精品久久 | 又黄又爽又无遮挡的视频 | 日韩a在线播放 | 国产精品一区二区三区在线看 | 国产99久久久久久免费看 | 国产视频精选在线 | 成人小视频在线免费观看 | 国产网红在线观看 | 四虎视频 | 成人黄色在线观看视频 | 7777精品伊人久久久大香线蕉 | 欧美日韩国产在线观看 | 日韩欧美极品 | 国产免费一区二区三区最新 | 国产二区精品 | 国产精品久久久久久久久久免费 | 日韩免费视频观看 | 91色在线观看 | 日日爱999| 四虎成人精品永久免费av | 亚洲精品国产精品国自产 | 国产精品久久久久亚洲影视 | 午夜久久美女 | 天天爽天天爽天天爽 | 亚洲成年片 | 18国产精品福利片久久婷 | 日韩中文字幕在线观看 | 丁香婷婷激情国产高清秒播 | 黄色在线成人 | 日韩中文字幕免费看 | 色婷婷久久久综合中文字幕 | 伊人手机在线 | 国产精品久久久久av | 亚洲精品免费在线视频 | 亚洲精品视频在线观看视频 | 日韩激情免费视频 | 99久久精品国产亚洲 | 国产精品v欧美精品v日韩 | 亚洲 欧美 日韩 综合 | 伊人成人精品 | 婷婷丁香六月 | 91精品国产电影 | 亚洲片在线观看 | 久久精品国产第一区二区三区 | 黄色在线免费观看网址 | 亚洲精品五月 | 精品国产99 | 亚洲丝袜一区二区 | 97超碰中文 | 韩国av免费观看 | 久久精品美女 | 五月婷婷六月丁香 | 丁香婷婷综合网 | 国产一区二区久久 | 日韩欧美黄色网址 | 日韩欧美在线一区 | 狠狠色丁香久久婷婷综合五月 | 91av中文 | 日韩精品久久久久久久电影竹菊 | 久久五月婷婷综合 | zzijzzij亚洲成熟少妇 | 在线视频你懂得 | 久久人人爽人人爽人人片av软件 | 国产午夜精品一区二区三区嫩草 | 欧美一二三区在线观看 | av中文字幕剧情 | 97人人添人澡人人爽超碰动图 | 国产视频1 | 亚洲人毛片 | 欧美日韩在线观看一区二区 | 久久久久亚洲精品成人网小说 | 久久国产精品色av免费看 | 91在线永久 | 欧美一二三四在线 | 国产九色91 | 96久久久 | 狠狠狠色丁香婷婷综合久久五月 | 91久久国产自产拍夜夜嗨 | 探花视频免费观看高清视频 | 中文国产在线观看 | 精品国产精品久久一区免费式 | 中文av网 | 韩国一区二区三区视频 | 国产又黄又爽又猛视频日本 | 91爱爱免费观看 | 久草网免费 | 最近中文字幕高清字幕在线视频 | 国产亚洲视频中文字幕视频 | 欧美日韩高清 | 欧美亚洲一级片 | 一区二区三区国 | 四虎影视成人精品 | av成人在线观看 | 国产免费大片 | 91色九色 | 激情欧美一区二区三区免费看 | 日日骑| 国产成人精品午夜在线播放 | 欧美日韩成人一区 | 色丁香色婷婷 | 一区二区欧美日韩 | 一本一道久久a久久精品蜜桃 | 亚洲午夜精品久久久久久久久久久久 | 日韩精品你懂的 | 在线中文字幕网站 | 国偷自产中文字幕亚洲手机在线 | 人人澡人人爱 | 深爱激情av| 播五月综合| 福利一区在线 | 日韩精品不卡在线 | 精品国产伦一区二区三区观看说明 | 黄色av网站在线观看 | 麻豆一级视频 | 欧美日韩亚洲第一 | 亚洲精品国产精品99久久 | 在线导航av | 国产精品久久一区二区三区, | 国产一区二区三区视频在线 | 国产中文字幕久久 | 婷婷伊人综合亚洲综合网 | 国产一级大片在线观看 | 高清一区二区三区 | 国产精品久久毛片 | 亚洲激情影院 | av高清一区 | 在线观看免费成人av | 2019中文字幕网站 | 狠狠躁日日躁狂躁夜夜躁 | 日本在线视频网址 | 97精品久久人人爽人人爽 | 黄色毛片在线看 | 蜜臀久久99精品久久久无需会员 | 久久国产露脸精品国产 | 国产精品18p | 久久精品网址 | 懂色av懂色av粉嫩av分享吧 | av在线播放一区二区三区 | 亚洲成a人片在线www | 欧美色就是色 | 国产伦理一区 | 国产成人一区二区三区 | 国产亚洲精品美女 | 国产精品美女久久 | 狠狠色丁香久久婷婷综合五月 | 欧美日韩一区二区三区免费视频 | 成人免费网站在线观看 | 久久激情婷婷 | 久久免费成人网 | 欧美少妇的秘密 | 中文字幕视频播放 | 国内精自线一二区永久 | 久久99国产精品视频 | 少妇av片 | 久久黄色美女 | 91精品免费在线观看 | 日韩精品在线免费播放 | 欧美国产91| 天天看天天操 | 超碰在线1 | 日韩成人免费在线观看 | 天天天天天天干 | 午夜视频在线观看一区二区 | 久久久国产精品一区二区中文 | 国产精品theporn | 亚洲人成人在线 | 日韩视频免费 | 成人a在线观看高清电影 | 亚洲欧美日韩在线看 | 992tv在线| 在线播放 日韩专区 | 久久精品中文字幕免费mv | 91伊人久久大香线蕉蜜芽人口 | 91视频电影 | 国产一级黄色片免费看 | 美女亚洲精品 | 日韩中文幕 | 欧美激情第一区 | 日本中文字幕电影在线免费观看 | 精品国产伦一区二区三区观看体验 | 91传媒视频在线观看 | 久久久影院一区二区三区 | 日日夜夜精品免费观看 | 狠狠狠色狠狠色综合 | 午夜视频在线观看一区 | 97超碰国产精品 | av天天澡天天爽天天av | 天天干天天操天天射 | 国产日韩在线一区 | 久久99精品国产99久久 | 91影视成人 | 99免费国产 | 亚洲成人家庭影院 | 欧洲一区二区在线观看 | 亚洲女裸体| 国内精品久久久久久久久久清纯 | 成人在线观看日韩 | 欧美日韩xxxxx | 成全在线视频免费观看 | 99精品免费久久久久久久久日本 | 91精品免费 | 天天干一干 | 婷婷综合| 国产成人精品网站 | 亚洲视频免费在线观看 | 福利久久 | 国产清纯在线 | 婷婷国产在线观看 | 免费观看的黄色片 | 日韩av女优视频 | 国产91在| 久久久国产精品麻豆 | 日韩在线中文字幕 | 97超级碰碰碰视频在线观看 | 最新的av网站 | 成人中心免费视频 | 久久综合九色综合欧美狠狠 | 麻豆国产在线播放 | 欧美伦理一区二区 | 天天色天天上天天操 | 国产免费久久av | 久久性生活片 | 色婷婷啪啪免费在线电影观看 | 精品99久久久久久 | 婷婷av电影| 精品在线你懂的 | 国产精品久久一区二区无卡 | 国产精品乱码在线 | 黄色91免费观看 | 国产在线观看一区 | 91视频在线| 国产精品美女久久久久久网站 | 国产精品麻豆99久久久久久 | 91中文字幕一区 | 色天天综合网 | 久久99国产综合精品免费 | 亚洲精品一区二区三区四区高清 | 亚洲精品美女在线 | 亚洲精品视频播放 | 欧美另类人妖 | 日韩中文久久 | 日韩在线视频网 | 在线观看黄色大片 | 国产精品一区在线观看你懂的 | 欧美日韩视频在线一区 | 精品欧美乱码久久久久久 | 欧美美女激情18p | 国产九色视频在线观看 | 国产精品一二三 | 麻豆精品国产传媒 | 在线电影a| 午夜视频不卡 | 久久久在线免费观看 | 色香蕉网 | 国产精品成人aaaaa网站 | 丁香婷五月 | 久草www| 色美女在线 | 国产一区二区在线免费播放 | 亚洲天堂香蕉 | 天天躁天天躁天天躁婷 | www.888.av| 九九天堂 | 激情五月婷婷综合 | 黄色小网站免费看 | 成人久久影院 | 69国产精品视频免费观看 | 黄色软件视频网站 | 有码一区二区三区 | 免费看久久| ww视频在线观看 | 国产 日韩 欧美 中文 在线播放 | 亚洲精品影视 | 欧洲色综合 | 久久久久免费精品国产小说色大师 | 波多野结衣精品 | 中文字幕成人在线 | 日韩在线观看网站 | 国产小视频福利在线 | 天天天在线综合网 | 久久99国产精品久久 | 欧美日韩视频在线观看一区二区 | 天天搞天天干天天色 | 蜜臀久久99精品久久久无需会员 | 亚洲精品视频观看 | 中文字幕一区在线观看视频 | 久久久久久久久久电影 | 黄p网站在线观看 | 成人h动漫精品一区二 | 国产中文字幕91 | 97涩涩视频 | 久久免费a | 午夜黄网| 欧美日韩一区二区三区不卡 | 午夜免费福利片 | 国产字幕av| 国产一区私人高清影院 | 国产高清综合 | 免费人人干 | 草久久精品 | 久99久在线| 久久tv视频 | 日韩欧美在线国产 | 正在播放亚洲精品 | 五月综合网站 | 欧美精品久久久久久久 | 热久久这里只有精品 | 91麻豆精品国产91久久久久久久久 | 懂色av一区二区三区蜜臀 | 久久久久久久久久久久影院 | 日韩理论 | 免费在线91 | 亚洲精品影视在线观看 | 日韩免费观看高清 | 欧美精彩视频在线观看 | 国产在线黄色 | 国产一级在线免费观看 | 亚洲精品视 | 久久久久久国产精品免费 | 99视频精品免费观看, | 黄色小说免费观看 | 五月婷婷开心中文字幕 | 丝袜+亚洲+另类+欧美+变态 | 不卡国产在线 | 久久视频在线看 | 在线视频久 | 麻豆成人网 | 国产亚洲精品久久久久久网站 | 成人国产电影在线观看 | 久久免费a | 亚洲精品免费视频 | 亚洲理论在线观看 | 狠狠操操 | av片在线观看 | 国产黄色特级片 | 精品久久毛片 | 超碰国产在线播放 | 日本成人黄色片 | 91大神一区二区三区 | 国产日韩欧美综合在线 | 视频91在线 | 日韩欧美在线免费 | 天天干一干| 日本黄色免费在线观看 | 欧洲精品码一区二区三区免费看 | 超碰人人草人人 | 国产亚洲综合性久久久影院 | 激情综合中文娱乐网 | 最新色站| 久草视频观看 | 欧美精品乱码久久久久久 | 中文字幕制服丝袜av久久 | 免费国产黄线在线观看视频 | 丰满少妇一级 | 日韩av视屏 | 久久久久在线视频 | 在线观看岛国 | 日韩精品一区二区三区电影 | 九月婷婷人人澡人人添人人爽 | 天天干天天做天天操 | 国产精品美女久久久久久免费 | 国产精品白丝jk白祙 | 色在线免费观看 | 91精品国产三级a在线观看 | 国产一级免费视频 | 日日日天天天 | 草久久精品 | 久久99婷婷 | 国产91探花 | 国产老太婆免费交性大片 | 成人午夜免费福利 | 天天插伊人 | 欧美人交a欧美精品 | 国产成人黄色 | 嫩草av在线 | 日韩高清免费在线观看 | 97影视| 91丝袜美腿 | 青春草视频在线播放 | 天天激情 | 99国产在线观看 | 国产视频久久久 | 天天干天天操天天爱 | 国产精品久久久久久婷婷天堂 | 少妇bbr搡bbb搡bbb | 精品国产一区二区三区久久久蜜月 | 激情综合站 | 欧美另类xxxx | 欧美精品视 | 日韩精品免费一区二区在线观看 | 国产精品精品国产婷婷这里av | 日韩专区中文字幕 | 九九精品毛片 | 国产精品成人一区二区 | 美女久久99 | 在线观看视频在线观看 | 在线黄色国产电影 | 国产视频一区二区在线 | 黄色美女免费网站 | 亚洲一级片在线看 | 久久免费国产视频 | 91九色精品国产 | 天天操天天操天天爽 | 精品久久久久久国产偷窥 | 色丁香久久 | 一级淫片在线观看 | 久久不卡日韩美女 | 99久久日韩精品免费热麻豆美女 | 97在线免费 | 国产精品久久久久久久午夜片 | 九九久久在线看 | 欧美a级一区二区 | 久久成人免费视频 | 精品99在线观看 | 国产视频欧美视频 | 国产黄色片一级三级 | 欧美精品久久久久性色 | 四虎成人免费观看 | 国内精品久久天天躁人人爽 | 亚洲欧美日韩国产一区二区三区 | 高清不卡一区二区三区 | 国产色道 | 色老板在线视频 | 中文字幕亚洲精品在线观看 | 天堂av色婷婷一区二区三区 | 亚洲激情综合网 | 亚洲精品av在线 | 亚洲不卡在线 | 91精品国自产在线观看欧美 | 日韩啪啪小视频 | 国产精品一区二区三区在线看 | 久久亚洲在线 | 91精品久久久久久久久久入口 | 天天插天天 | 日本性xxxxx 亚洲精品午夜久久久 | 成人黄色一级视频 | .国产精品成人自产拍在线观看6 | av免费看电影 | 视频三区在线 | 久久久免费播放 | 欧美乱码精品一区 | 波多野结衣动态图 | 欧美性大战 | 黄色av免费看 | 亚洲激情久久 | 美女视频a美女大全免费下载蜜臀 | 99精品视频在线观看播放 | 欧美国产高清 | 玖玖精品在线 | 日韩精品第一区 | 99九九99九九九视频精品 | 国产高清在线免费 | 懂色av懂色av粉嫩av分享吧 | av中文字幕网 | 成人在线视频论坛 | 国产成人黄色 | 午夜精品久久久久久久99婷婷 | 欧美三级在线播放 | 国产精品99久久久久久武松影视 | 欧美analxxxx | 国产生活一级片 | 久久国产免费看 | 国产一区欧美在线 | 五月激情丁香婷婷 | 91精品在线免费视频 | 亚洲免费av网站 | 国产夫妻性生活自拍 | 日日久视频 | 久久久影片| 免费av网站观看 | 99色视频在线 | 五月天色网站 | 99免费在线 | 日韩成人在线一区二区 | 日韩电影一区二区三区在线观看 | 久久色网站 | 97精品超碰一区二区三区 | 成人久久18免费网站图片 | 天天综合网 天天 | 亚洲欧美偷拍另类 | 九九久久久久久久久激情 | 天天曰| 精品久久久久久久久亚洲 | 九色视频网 | 91麻豆操 | 国产日韩在线观看一区 | 91麻豆文化传媒在线观看 | 久久久亚洲影院 | 四虎成人精品永久免费av | 免费在线观看av的网站 | 手机av电影在线观看 | 国产在线 一区二区三区 | 1024手机在线看 | 亚洲国产精品传媒在线观看 | 91麻豆国产 | 欧美黑人xxxx猛性大交 | 精品在线二区 | 久久在线影院 | 一区二区三区精品久久久 | 麻豆超碰| 黄色三级视频片 | 一区二区精品在线视频 | 日韩va亚洲va欧美va久久 | 国产黄色a | 久久久久国产成人免费精品免费 | av在线之家电影网站 | 亚洲自拍偷拍色图 | www五月天com| 成人黄色毛片视频 | 97精品超碰一区二区三区 | 7777xxxx| 丁香花在线视频观看免费 | 99精品视频在线观看播放 | 天天操操操操操 | 黄色性av | 国产免费高清视频 | 一区中文字幕在线观看 | 久久国内精品视频 | 中文字幕在线一区二区三区 | 久久综合五月天 | 久久综合狠狠 | av中文字幕在线观看网站 | 日韩a级黄色 | 国产91免费观看 | 成人97视频 | 国内精品久久久久影院一蜜桃 | 在线观看免费一级片 | 91在线视频观看免费 | 欧美 亚洲 另类 激情 另类 | 精品伦理一区二区三区 | 亚洲精欧美一区二区精品 | 国产精品一区在线播放 | 中文在线最新版天堂 | 日韩视频一区二区三区在线播放免费观看 | h视频日本 | 91视频免费观看 | www.99久久.com | 日日夜夜爱| 日本精品一区二区三区在线播放视频 | 欧美成人精品三级在线观看播放 | 成人av在线看 | 97视频网站| 国产欧美精品一区二区三区 | 香蕉影视 | 亚洲欧美成人在线 | 一区二区三区在线电影 | 黄免费在线观看 | 日韩高清一二三区 | 狠狠撸电影 | 久久久久久久久久影院 | 国产不卡免费av | 91av小视频 | 亚洲91中文字幕无线码三区 | 国产一区二区不卡视频 | 天天干天天看 | av天天在线观看 | 欧美日韩综合在线观看 | jizzjizzjizz亚洲 | 亚洲女人天堂成人av在线 | 国产尤物在线观看 | 久久久国际精品 | 久久av影院| 国产伦精品一区二区三区照片91 | 天天av在线播放 | 日日操网 | 色吊丝在线永久观看最新版本 | 国产精品一区二区av影院萌芽 | 黄色a大片 | 91精品国产一区二区三区 | 韩国av一区二区三区在线观看 | 久草在线资源观看 | 超碰公开在线 | 久久调教视频 | 91在线观看黄 | 伊甸园永久入口www 99热 精品在线 | 国产对白av | 国产精品一区二区三区观看 | 玖玖玖影院 | 久久亚洲私人国产精品va | 亚洲黄色激情小说 | 在线日本v二区不卡 | 欧美日韩aaaa| 国产精品久久99 | 99久久夜色精品国产亚洲 | 美女久久网站 | 福利视频一区二区 | 欧美做受高潮1 | 精品国产综合区久久久久久 | 麻豆精品在线视频 | 久久国产精品第一页 | 97超碰超碰久久福利超碰 | 黄色大全免费网站 | 久久久激情网 | 在线播放视频一区 | 欧美激情另类文学 | 成人精品99 | 欧美成年黄网站色视频 | 天天摸日日摸人人看 | 99精品国产一区二区三区不卡 | 久久精品牌麻豆国产大山 | 亚洲不卡在线 | 午夜美女av | 免费视频91 | 欧美最新另类人妖 | 在线观看va | 中文字幕国产精品 | 久久不卡日韩美女 | 免费在线观看日韩欧美 | 中文字幕资源网在线观看 | 欧美精品亚洲精品 | 国产麻豆视频免费观看 | 久久精品1区2区 | 五月天狠狠操 | 国产免费视频一区二区裸体 | 天天操天天干天天摸 | 91九色视频在线播放 | 欧美久久久久 | 天天操天天添 | 亚洲精品美女久久久久网站 | 亚洲视频免费在线 | 日本 在线 视频 中文 有码 | 91香蕉视频好色先生 | 国产成人一区二区在线观看 | 久久久影院一区二区三区 | 亚洲欧美成人综合 | 亚洲精品在线一区二区三区 | 日本黄色大片免费看 | 天天操夜夜曰 | 日本成人a | 人人干干人人 | 亚洲天堂网视频 | 亚洲免费婷婷 | 日韩在线中文字幕 | 999色视频 | 超碰精品在线 | 久久精品国亚洲 | 黄色大片日本 | 国产女人18毛片水真多18精品 | 麻豆国产精品视频 | 国产精品成人a免费观看 | 国产精品一区二区麻豆 | 99久久精品无码一区二区毛片 | 91片黄在线观看动漫 | 美女视频是黄的免费观看 | 伊人狠狠色 | 亚洲国产天堂av | 最近中文国产在线视频 | 中文字幕在线观看日本 | 免费在线观看中文字幕 | 久久免费99精品久久久久久 | 国产精品免费在线视频 | 五月激情丁香 | 五月花丁香婷婷 | 碰天天操天天 | 91黄色在线观看 | 日韩在线视频一区 | 国产精品s色 | 天堂av在线免费观看 | 最新av网址大全 | 亚洲精品中文字幕在线 | 国产成人三级在线观看 | 亚洲精品乱码白浆高清久久久久久 | 国产中文字幕在线免费观看 | 国产亚洲人| 看污网站 | 97视频免费观看2区 亚洲视屏 | 在线观看免费91 | 亚洲少妇自拍 | 97精品久久| 狠狠干婷婷色 | 丰满少妇对白在线偷拍 | 一区二区三区在线观看中文字幕 | 91精品国产99久久久久久久 | 在线免费视频 你懂得 | 69精品视频 | 婷婷精品在线视频 | 日韩成片 | 99re视频在线观看 | 亚洲97在线 | 天天色天天操天天爽 | 天天草综合 | 精品国产免费观看 | 精品国产乱码 | 久久国产一区二区三区 | 99免费观看视频 | 日韩精品一区在线播放 | 嫩草伊人久久精品少妇av | 久久国产精品免费观看 | 一级黄色片网站 | 黄色毛片一级片 | 日本精品视频在线观看 | 天天艹天天 | 91亚洲夫妻 | 国产精品美女久久久久久久久 | 91视频免费播放 | 丁香九月婷婷 | 91久久国产露脸精品国产闺蜜 | 日韩在线观看视频免费 | 国产精品久久99精品毛片三a | 午夜av在线 | 免费网站在线 | 国产精品高清免费在线观看 | 国产在线播放一区二区三区 | 97超碰国产精品 | 久久免费视频8 | 在线亚洲观看 | 久久九九久久九九 | 天天综合五月天 | 国产不卡毛片 | 香蕉视频国产在线 | 国产在线色视频 | 成人黄在线观看 | 日韩资源在线 | 中文字幕在线播放一区二区 | 五月丁香 | 九七视频在线观看 | 久久精品久久99 | 久久人人爽爽人人爽人人片av | 免费www视频 | 欧美激情精品久久久久久免费印度 | www.夜夜| 亚洲六月丁香色婷婷综合久久 | 欧美一级免费片 | 国产精品欧美一区二区 | 天天色播| 日韩电影在线观看中文字幕 | 亚洲成av人片在线观看香蕉 | 国产中文字幕视频在线观看 | 黄色aa久久 | 欧美一性一交一乱 | 日韩天堂网 | 欧美国产不卡 | 毛片www| 久久色在线观看 | 久久96国产精品久久99软件 | 欧美一级黄色视屏 | 97国产情侣爱久久免费观看 | 99精品美女| 91视频传媒 | 亚洲免费在线观看视频 | 伊人久久影视 | 久久免费在线观看 | 久久99国产精品久久 | 国产夫妻av在线 | 久久综合久久综合这里只有精品 | 日韩av黄| 亚洲成人欧美 | 亚洲乱码在线 | 亚洲精品一区二区三区四区高清 | 玖玖在线免费视频 | 美女视频黄是免费的 | 国产黄色精品网站 | 免费在线观看视频一区 | 欧美日韩高清在线一区 | 亚洲免费国产 | 亚洲久久视频 | 国产精品美女久久久久久 | 最新av在线播放 | 国产精品毛片久久久久久 | 国产黄色精品网站 | 国产精品v a免费视频 | 日日骑 | 亚洲一级电影视频 | 国产精品毛片一区二区在线看 | 性色av免费看 | 国产综合片 | 欧美性网站| 国产欧美精品在线观看 | 国产亚洲成人网 | 天堂在线一区 | av动图| 久久超碰99| 91精品免费 |