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

初探幾種常用的 Kubernetes 多集群方案

系統(tǒng) Linux 開源
Kubernetes 從 1.8 版本起就聲稱單集群最多可支持 5000 個節(jié)點和 15 萬個 Pod,實際上應該很少有公司會部署如此龐大的一個單集群,很多情況下因為各種各樣的原因我們可能會部署多個集群,但是又想將它們統(tǒng)一起來管理,這時候就需要用到集群聯(lián)邦(Federation)。

圖片

集群聯(lián)邦的一些典型應用場景:

  • 高可用:在多個集群上部署應用,可以最大限度地減少集群故障帶來的影響
  • 避免廠商鎖定:可以將應用負載分布在多個廠商的集群上并在有需要時直接遷移到其它廠商
  • 故障隔離:擁有多個小集群可能比單個大集群更利于故障隔離

Federation v1

最早的多集群項目,由 K8s 社區(qū)提出和維護。

Federation v1 在 K8s v1.3 左右就已經(jīng)著手設計(Design Proposal),并在后面幾個版本中發(fā)布了相關的組件與命令行工具(kubefed),用于幫助使用者快速建立聯(lián)邦集群,并在 v1.6 時,進入了 Beta 階段;但 Federation v1 在進入 Beta 后,就沒有更進一步的發(fā)展,由于靈活性和 API 成熟度的問題,在 K8s v1.11 左右正式被棄用。

圖片

v1 的基本架構如上圖,主要有三個組件:

  • Federation API Server:類似 K8s API Server,對外提供統(tǒng)一的資源管理入口,但只允許使用 Adapter 拓展支持的 K8s 資源
  • Controller Manager:提供多個集群間資源調度及狀態(tài)同步,類似 kube-controller-manager
  • Etcd:儲存 Federation 的資源

在 v1 版本中我們要創(chuàng)建一個聯(lián)邦資源的大致步驟如下:把聯(lián)邦的所有配置信息都寫到資源對象 annotations 里,整個創(chuàng)建流程與 K8s 類似,將資源創(chuàng)建到 Federation API Server,之后 Federation Controller Manager 會根據(jù) annotations 里面的配置將該資源創(chuàng)建到各子集群;下面是一個 ReplicaSet 的示例:

圖片

這種架構帶來的主要問題有兩個:

  • 不夠靈活,每當創(chuàng)建一種新資源都要新增 Adapter(提交代碼再發(fā)版);并且對象會攜帶許多 Federation 專屬的 Annotation
  • 缺少獨立的 API 對象版本控制,例如 Deployment 在 Kubernetes 中是 GA,但在 Federation v1 中只是 Beta

Federation v2

有了 v1 版本的經(jīng)驗和教訓之后,社區(qū)提出了新的集群聯(lián)邦架構:Federation v2;Federation 項目的演進也可以參考 Kubernetes Federation Evolution 這篇文章。

v2 版本利用 CRD 實現(xiàn)了整體功能,通過定義多種自定義資源(CR),從而省掉了 v1 中的 API Server;v2 版本由兩個組件構成:

  • admission-webhook 提供了準入控制
  • controller-manager 處理自定義資源以及協(xié)調不同集群間的狀態(tài)

在 v2 版本中要創(chuàng)建一個聯(lián)邦資源的大致流程如下:

圖片

將 Federated Resource 創(chuàng)建到 Host 集群的 API Server 中,之后 controller-manager 會介入將相應資源分發(fā)到不同的集群,分發(fā)的規(guī)則等都寫在了這個 Federated Resource 對象里面。

在邏輯上,F(xiàn)ederation v2 分為兩個大部分:configuration(配置)和 propagation(分發(fā));configuration 主要包含兩個配置:Cluster Configuration 和 Type Configuration。

Cluster Configuration

用來保存被聯(lián)邦托管的集群的 API 認證信息,可通過 ??kubefedctl join/unjoin?? 來加入/刪除集群,當成功加入時,會建立一個 ??KubeFedCluster?? CR 來存儲集群相關信息,如 API Endpoint、CA Bundle 和 Token 等。后續(xù) controller-manager 會使用這些信息來訪問不同 Kubernetes 集群。

apiVersion: core.kubefed.io/v1beta1
kind: KubeFedCluster
metadata:
creationTimestamp: "2019-10-24T08:05:38Z"
generation: 1
name: cluster1
namespace: kube-federation-system
resourceVersion: "647452"
selfLink: /apis/core.kubefed.io/v1beta1/namespaces/kube-federation-system/kubefedclusters/cluster1
uid: 4c5eb57f-5ed4-4cec-89f3-cfc062492ae0
spec:
apiEndpoint: https://172.16.200.1:6443
caBundle: LS....Qo=
secretRef:
name: cluster1-shb2x
status:
conditions:
- lastProbeTime: "2019-10-28T06:25:58Z"
lastTransitionTime: "2019-10-28T05:13:47Z"
message: /healthz responded with ok
reason: ClusterReady
status: "True"
type: Ready
region: ""

圖片

Type Configuration

定義了哪些 Kubernetes API 資源要被用于聯(lián)邦管理;比如說想將 ??ConfigMap?? 資源通過聯(lián)邦機制建立在不同集群上時,就必須先在 Host 集群中,通過 CRD 建立新資源 ??FederatedConfigMap??,接著再建立名稱為 ??configmaps?? 的 Type configuration(??FederatedTypeConfig??)資源,然后描述 ??ConfigMap?? 要被 ??FederatedConfigMap?? 所管理,這樣 Kubefed controller-manager 才能知道如何建立 Federated 資源,一個示例如下:

apiVersion: core.kubefed.k8s.io/v1beta1
kind: FederatedTypeConfig
metadata:
name: configmaps
namespace: kube-federation-system
spec:
federatedType:
group: types.kubefed.k8s.io
kind: FederatedConfigMap
pluralName: federatedconfigmaps
scope: Namespaced
version: v1beta1
propagation: Enabled
targetType:
kind: ConfigMap
pluralName: configmaps
scope: Namespaced
version: v1

Federated Resource CRD

其中還有一個關鍵的
CRD:Federated Resource,如果想新增一種要被聯(lián)邦托管的資源的話,就需要建立一個新的 FederatedXX 的
CRD,用來描述對應資源的結構和分發(fā)策略(需要被分發(fā)到哪些集群上);Federated Resource CRD 主要包括三部分:

  • Templates 用于描述被聯(lián)邦的資源
  • Placement 用來描述將被部署的集群,若沒有配置,則不會分發(fā)到任何集群中
  • Overrides 允許對部分集群的部分資源進行覆寫

一個示例如下:

apiVersion: types.kubefed.k8s.io/v1beta1
kind: FederatedDeployment
metadata:
name: test-deployment
namespace: test-namespace
spec:
template: # 定義 Deployment 的所有內容,可理解成 Deployment 與 Pod 之間的關聯(lián)。
metadata:
labels:
app: nginx
spec:
...
placement:
clusters:
- name: cluster2
- name: cluster1
overrides:
- clusterName: cluster2
clusterOverrides:
- path: spec.replicas
value: 5

這些 FederatedXX CRD 可以通過 ??kubefedctl enable <target kubernetes API type>?? 來創(chuàng)建,也可以自己生成/編寫對應的 CRD 再創(chuàng)建。

結合上面介紹了的 Cluster Configuration、Type Configuration 和 Federated Resource CRD,再來看 v2 版本的整體架構和相關概念就清晰很多了:

圖片

Scheduling

Kubefed 目前只能做到一些簡單的集群間調度,即手工指定,對于手工指定的調度方式主要分為兩部分,一是直接在資源中制定目的集群,二是通過 ??ReplicaSchedulingPreference?? 進行比例分配。

直接在資源中指定可以通過 ??clusters?? 指定一個 ??cluster?? 列表,或者通過 ??clusterSelector?? 來根據(jù)集群標簽選擇集群,不過有兩點要注意:

  • 如果??clusters?? 字段被指定,??clusterSelector?? 將會被忽略
  • 被選擇的集群是平等的,該資源會在每個被選中的集群中部署一個無差別副本
spec:
placement:
clusters:
- name: cluster2
- name: cluster1
clusterSelector:
matchLabels:
foo: bar

如果需要在多個集群間進行區(qū)別調度的話就需要引入 ??ReplicaSchedulingPreference?? 進行按比例的調度了:

apiVersion: scheduling.kubefed.io/v1alpha1
kind: ReplicaSchedulingPreference
metadata:
name: test-deployment
namespace: test-ns
spec:
targetKind: FederatedDeployment
totalReplicas: 9
clusters:
A:
minReplicas: 4
maxReplicas: 6
weight: 1
B:
minReplicas: 4
maxReplicas: 8
weight: 2

??totalReplicas?? 定義了總副本數(shù),??clusters?? 描述不同集群的最大/最小副本以及權重。

目前 ReplicaSchedulingPreference 只支持 deployments 和 replicasets 兩種資源。

Karmada

Karmada 是由華為開源的多云容器編排項目,這個項目是 Kubernetes Federation v1 和 v2 的延續(xù),一些基本概念繼承自這兩個版本。

圖片

Karmada 主要有三個組件:

  • Karmada API Server:本質就是一個普通的 K8s API Server,綁定了一個單獨的 etcd 來存儲那些要被聯(lián)邦托管的資源
  • Karmada Controller Manager:多個 controller 的集合,監(jiān)聽 Karmada API Server 中的對象并與成員集群 API server 進行通信
  • Karmada Scheduler:提供高級的多集群調度策略

和 Federation v1 類似,我們下發(fā)一個資源也是要寫入到 Karmada 自己的 API Server 中,之前 controller-manager 根據(jù)一些 policy 把資源下發(fā)到各個集群中;不過這個 API Server 是 K8s 原生的,所以支持任何資源,不會出現(xiàn)之前 Federation v1 版本中的問題,然后聯(lián)邦托管資源的分發(fā)策略也是由一個單獨的 CRD 來控制的,也不需要配置 v2 中的 Federated Resource CRD 和 Type Configure。

Karmada 的一些基本概念:

  • 資源模板(Resource Template):Karmada 使用 K8s 原生 API 定義作為資源模板,便于快速對接 K8s 生態(tài)工具鏈
  • 分發(fā)策略(Propagaion Policy):Karmada 提供獨立的策略 API,用來配置資源分發(fā)策略
  • 差異化策略(Override Policy):Karmada 提供獨立的差異化 API,用來配置與集群相關的差異化配置,比如配置不同集群使用不同的鏡像

圖片

Cluster

Cluster 資源記錄的內容和 Federation v2 類似,就是訪問被納管集群的一些必要信息:API Endpoint、CA Bundle 和訪問 Token。

spec:
apiEndpoint: https://172.31.165.66:55428
secretRef:
name: member1
namespace: karmada-cluster
syncMode: Push

但是有一個不一樣的點是,Karmada 的 ??Cluster?? 資源有兩種 sync 模式:??Push?? 和 ??Pull??;??Push?? 就是最普通、最常見的方式,host 集群的 Karmada 組件會負責同步并更新這類集群的狀態(tài);??Pull?? 模式的 member 集群上會運行一個 ??karmada-agent?? 組件,這個組件會負責收集自己的狀態(tài)并且更新 host 集群的相應的 ??Cluster?? 資源狀態(tài)。

Propagaion Policy

在 Karmada 中分發(fā)資源到 member 集群需要配置這個單獨 ??PropagationPolicy?? CR;以下面的 nginx 應用為例,首先是 Resource Template,這個就是普通的 K8s ??Deployment??:

apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx
labels:
app: nginx
spec:
replicas: 2
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- image: nginx
name: nginx

之后配置一個 ??PropagationPolicy?? 來控制這個 nginx ??Deployment?? 資源的分發(fā)策略即可,在下面的示例中,會將 nginx 應用按 1:1 的權重比分發(fā)到 member1 和 member2 集群中:

apiVersion: policy.karmada.io/v1alpha1
kind: PropagationPolicy
metadata:
name: nginx-propagation
spec:
resourceSelectors:
- apiVersion: apps/v1
kind: Deployment
name: nginx
placement:
clusterAffinity:
clusterNames:
- member1
- member2
replicaScheduling:
replicaDivisionPreference: Weighted
replicaSchedulingType: Divided
weightPreference:
staticWeightList:
- targetCluster:
clusterNames:
- member1
weight: 1
- targetCluster:
clusterNames:
- member2
weight: 1

在 Karmada API Server 中創(chuàng)建這兩個資源后,可以通過 Karmada API Server 查詢到該資源的狀態(tài):

$ kubectl get deploy
NAME READY UP-TO-DATE AVAILABLE AGE
nginx 2/2 2 2 51s

但是注意,這并不代表應用運行在 Karmada API Server 所在的集群上,實際上這個集群上沒有任何工作負載,只是存儲了這些 Resource Template,實際的工作負載都運行在上面 ??PropagationPolicy?? 配置的 member1 和 member2 集群中,切換到 member1/member2 集群中可以看到:

$ kubectl get deploy
NAME READY UP-TO-DATE AVAILABLE AGE
nginx 1/1 1 1 6m26s

$ kubectl get pod
NAME READY STATUS RESTARTS AGE
nginx-6799fc88d8-7cgfz 1/1 Running 0 6m29s

分發(fā)策略除了上面最普通的指定集群名稱外也支持 ??LabelSelector??、??FieldSelector?? 和 ??ExcludeClusters??,如果這幾個篩選項都設置了,那只有全部條件都滿足的集群才會被篩選出來;除了集群親和性,還支持 ??SpreadConstraints??:對集群動態(tài)分組,按 ??region??、??zone?? 和 ??provider?? 等分組,可以將應用只分發(fā)到某類集群中。

針對有 ??replicas?? 的資源(比如原生的 ??Deployment?? 和 ??StatefulSet??),支持在分發(fā)資源到不同集群的時候按要求更新這個副本數(shù),比如 member1 集群上的 nginx 應用我希望有 2 個副本,member2 上的只希望有 1 個副本;策略有很多,首先是 ??ReplicaSchedulingType??,有兩個可選值:

  • ??Duplicated??:每個候選成員集群的副本數(shù)都是一樣的,從原本資源那里面復制過來的,和不設置??ReplicaSchedulingStrategy?? 的效果是一樣的
  • ??Divided??:根據(jù)有效的候選成員集群的數(shù)量,將副本分成若干部分,每個集群的副本數(shù)由??ReplicaDivisionPreference?? 決定

而這個 ??ReplicaDivisionPreference?? 又有兩個可選值:

  • ??Aggregated??:在考慮集群可用資源的情況下,將這些副本調度到盡量少的集群上,如果一個集群就能容納所有副本,那只會調度到這一個集群上,其它集群上也會存在相應的資源,不過副本數(shù)是 0
  • ??Weighted??:根據(jù)??WeightPreference?? 來劃分副本數(shù),這個??WeightPreference?? 就很簡單了,直接指定每個集群的權重是多少

完整和詳細的結構可以參考 ??Placement?? 的 API 定義。

Override Policy

Override Policy 就很簡單了,通過增加 ??OverridePolicy?? 這個 CR 來配置不同集群的差異化配置,直接看一個例子:

apiVersion: policy.karmada.io/v1alpha1
kind: OverridePolicy
metadata:
name: example-override
namespace: default
spec:
resourceSelectors:
- apiVersion: apps/v1
kind: Deployment
name: nginx
targetCluster:
clusterNames:
- member1
labelSelector:
matchLabels:
failuredomain.kubernetes.io/region: dc1
overriders:
plaintext:
- path: /spec/template/spec/containers/0/image
operator: replace
value: 'dc-1.registry.io/nginx:1.17.0-alpine'
- path: /metadata/annotations
operator: add
value:
foo: bar

 參考鏈接

  • https://blog.ihypo.net/15716465002689.html
  • https://blog.ihypo.net/15718231244282.html
  • https://jimmysong.io/kubernetes-handbook/practice/federation.html
  • https://support.huaweicloud.com/productdesc-mcp/mcp_productdesc_0001.html
責任編輯:龐桂玉 來源: 奇妙的Linux世界
相關推薦

2022-01-12 11:55:43

Kubernetes多集群Linux

2022-06-27 19:16:12

KubernetesK8s 集群

2022-07-24 21:11:19

KubernetesLinux

2021-02-18 09:28:32

Kubernetes開源SaaS

2021-12-24 10:47:49

Kubernetes容器化微服務

2021-12-26 18:23:10

Kubernetes集群命令

2023-11-01 07:55:44

K8sKubernetes

2022-05-24 09:00:00

云計算Kubernetes安全

2021-02-07 08:00:00

Kubernetes集群云原生

2022-07-18 14:45:22

Kubernetes暴露方案

2021-12-30 07:42:13

Kubernetes集群架構

2021-06-25 15:53:25

Kubernetes程序技巧

2021-12-29 17:24:16

Kubernetes集群事件

2021-04-14 09:33:58

Kubernetes通信網(wǎng)絡模型

2021-11-22 16:21:28

Kubernetes 運維開源

2023-11-02 09:00:00

Kubernetes集群

2022-05-12 14:25:44

Kubernetesvcluster

2025-02-18 16:27:01

2022-04-15 09:30:00

Kubernetes云計算多云

2021-08-31 07:00:26

Kubernetes Clusternet開源
點贊
收藏

51CTO技術棧公眾號

久久久久亚洲av成人片| 亚洲精品成人无码毛片| 免费黄网站在线| 粉嫩绯色av一区二区在线观看| 69久久夜色精品国产69| 18精品爽国产三级网站| eeuss国产一区二区三区四区| 五月激情丁香一区二区三区| 亚洲欧美日韩不卡一区二区三区| 亚洲欧美高清视频| 秋霞电影网一区二区| 欧美国产在线电影| 亚洲女人毛茸茸高潮| 大型av综合网站| 欧美四级电影网| 99久久国产综合精品五月天喷水| 成人资源www网在线最新版| 国产成a人亚洲精品| 国产精品黄色av| 久久免费精彩视频| 久久一区二区三区喷水| 日韩精品在线私人| 国产av一区二区三区传媒| 国产69精品久久久久9999人| 精品成人av一区| 日本xxxxx18| 91.xxx.高清在线| 久久蜜臀精品av| 狠狠色综合色区| av在线免费在线观看| 免费一区二区视频| 国产成人中文字幕| 成人精品在线看| 国产中文一区| 久久中文字幕视频| 亚洲人与黑人屁股眼交| 欧美在线免费看视频| 精品中文视频在线| 国产福利短视频| 中文字幕一区日韩精品| 91麻豆精品国产91久久久久久久久| 免费av网址在线| 蜜桃视频m3u8在线观看| 亚洲一区二区中文在线| 国产又爽又黄ai换脸| av男人的天堂在线| 日本一二三四高清不卡| 色一情一区二区三区四区 | 美女被啪啪一区二区| 亚洲精品网站在线| 国产高清精品久久久久| 51午夜精品| 高h调教冰块play男男双性文| 国产一区二区不卡老阿姨| 成人欧美一区二区三区在线| 97视频免费在线| 激情小说亚洲一区| 亚洲free性xxxx护士白浆| 国产av无码专区亚洲av| 国产成人av电影免费在线观看| av一区二区三区免费| 国产综合在线播放| 91在线视频18| 日韩aⅴ视频一区二区三区| 久青青在线观看视频国产| 国产日韩欧美制服另类| 亚洲欧洲一区二区福利| 超碰在线caoporen| 亚洲一区二区av在线| 亚洲熟妇国产熟妇肥婆| 欧美18av| 欧美日韩国产综合视频在线观看 | 日本成人手机在线| 亚洲成人激情图| 爱爱的免费视频| 成人情趣视频网站| 久久国产视频网站| www.99re7.com| 老鸭窝亚洲一区二区三区| 国产精品高精视频免费| 精品人妻久久久久一区二区三区| 成人爱爱电影网址| 亚洲精品国产精品国自产| av免费在线免费| 好吊成人免视频| 五月激情婷婷在线| 99久热这里只有精品视频免费观看| 日韩精品免费在线视频| av在线播放中文字幕| 国产精品豆花视频| 国产精国产精品| 亚洲AV无码精品色毛片浪潮| 久久尤物电影视频在线观看| 一区二区三区欧美成人| av中文字幕在线看| 精品视频一区三区九区| 国产人妻黑人一区二区三区| 成人在线丰满少妇av| 久久久久久国产精品| 91黑人精品一区二区三区| 国产乱码精品一区二区三区av | 亚洲自拍偷拍在线| 日本成人一区二区三区| 亚洲欧美国产三级| 黄色国产小视频| 国产乱论精品| 久久国产精品网站| 小泽玛利亚一区二区三区视频| 懂色av中文一区二区三区| 日韩亚洲视频| 中文在线а√天堂| 日韩欧美一级片| 欧美成人久久久免费播放| 国产日韩欧美| 99re在线国产| 毛片在线播放a| 色噜噜狠狠色综合欧洲selulu| www.555国产精品免费| 91精品综合| 国产一区二区在线播放| 你懂得网站在线| 福利一区视频在线观看| 91传媒理伦片在线观看| 欧美日本一区| 91免费人成网站在线观看18| 国产精品一二三区视频| 精品福利樱桃av导航| 少妇丰满尤物大尺度写真| 久久免费大视频| 琪琪第一精品导航| 亚洲 美腿 欧美 偷拍| 夜色激情一区二区| 一级做a爱视频| 99精品电影| 国产精品视频播放| jyzzz在线观看视频| 在线日韩一区二区| 久久久久亚洲av成人无码电影| 国产一级一区二区| 另类小说综合网| 欧美一级大黄| 亚洲人精品午夜在线观看| 久久久精品免费看| 久久综合999| 人妻无码视频一区二区三区| 精品视频黄色| 国产精品久久久久久久久久久久久久 | 中文字幕视频在线免费欧美日韩综合在线看 | 国产精品一区在线观看| xxxcom在线观看| 亚洲国产欧美一区| 久久精品国产成人av| 91蝌蚪国产九色| 大香煮伊手机一区| 成人综合一区| 91久久精品日日躁夜夜躁国产| 在线观看免费高清完整| 日韩一区二区在线看片| 18精品爽视频在线观看| 91啪亚洲精品| 99热一区二区| 欧美激情综合色综合啪啪| 成人午夜影院在线观看| 亚洲精品mv| 国产亚洲欧美视频| 国产日本精品视频| 亚洲成人精品一区| 久久婷婷五月综合| 激情深爱一区二区| 国产人妻777人伦精品hd| 亚洲小说图片| 成人有码在线视频| av资源一区| 中文字幕欧美日韩va免费视频| 国产又爽又黄又嫩又猛又粗| 亚洲一区二区欧美| 日本乱子伦xxxx| 国产精品亚洲专一区二区三区 | 亚洲精品乱码久久久久久金桔影视| 日韩中文字幕在线观看视频| 国产精品国产自产拍在线| 亚洲综合123| 欧美中文字幕| 黄色网络在线观看| 亚欧洲精品视频在线观看| 国产精品一区久久久| av资源中文在线天堂| 最近中文字幕2019免费| 殴美一级特黄aaaaaa| 欧美午夜电影在线播放| 国产网址在线观看| 中文字幕av一区二区三区| 69亚洲乱人伦| 精品一区二区在线视频| 欧美精品色婷婷五月综合| 天天天综合网| 日韩影院一区| 欧美韩一区二区| 91亚洲精品在线观看| 卡通欧美亚洲| 欧美激情精品久久久久久蜜臀| av女优在线| 亚洲免费伊人电影在线观看av| 国产三级精品在线观看| 欧美优质美女网站| 亚洲欧美综合另类| 一区二区三区av电影| 免费看一级黄色| 国产日韩欧美一区二区三区乱码| 久久久久国产免费| 韩国成人福利片在线播放| 欧美三级午夜理伦三级| 伊人影院久久| 蜜桃视频成人在线观看| sdde在线播放一区二区| 蜜桃导航-精品导航| 国产一区二区三区不卡av| 91美女福利视频高清| 欧美性片在线观看| 国产91精品久久久久久久| 蜜臀av国内免费精品久久久夜夜| www.久久撸.com| 成人免费高清在线播放| 亚洲免费高清视频| 五月婷婷在线播放| 欧美精品一区视频| 噜噜噜久久,亚洲精品国产品| 欧美二区三区91| 亚洲一级片免费看| 欧美色综合天天久久综合精品| 久久久成人免费视频| 欧美日韩色婷婷| 国产精品午夜影院| 欧美日韩亚洲网| 黑人精品无码一区二区三区AV| 欧美视频13p| 欧美 日韩 精品| 欧美午夜精品久久久久久浪潮 | 黄视频在线免费看| 久久久伊人欧美| 鲁鲁在线中文| 欧美一级免费看| 高清不卡av| 国产精品黄色影片导航在线观看| 亚洲四虎影院| 国产精品久久一区| 欧美韩国日本| 91系列在线播放| 66精品视频在线观看| 国产成人成网站在线播放青青 | 国产一区二区三区高清播放| 一级黄色高清视频| 国产99精品视频| 国产激情视频网站| 久久精品夜色噜噜亚洲a∨| 国产一区二区三区精品在线| 欧美国产日本韩| 亚洲天堂一级片| 亚洲综合成人在线| 国产成人免费观看视频| 色综合激情五月| 97精品人妻一区二区三区香蕉 | 国产精品一区二区在线| 麻豆久久一区| 精品欧美国产| 热久久天天拍国产| 日本国产中文字幕| 中文精品视频| 91香蕉视频污版| 国产精品影视在线观看| 国产精品无码专区| 国产精品毛片高清在线完整版| 免费在线观看一级片| 激情久久av一区av二区av三区| 国产一卡二卡三卡| 欧美一级片在线| 四虎影视在线播放| www国产精品com| 九色porny丨首页入口在线| 国产精品久久久久久久久久ktv| 粉嫩一区二区三区在线观看| 九九久久99| 97精品中文字幕| 99热自拍偷拍| 久久99最新地址| 中文成人无字幕乱码精品区| 国产精品卡一卡二| 国产午夜福利精品| 欧美日韩国产不卡| 天天射,天天干| 色七七影院综合| 一区二区乱码| 亚洲xxxx做受欧美| 成人高清av| av免费观看大全| 麻豆传媒一区二区三区| 中文字幕乱码一区| 亚洲日本中文字幕区| 久久永久免费视频| 亚洲第一偷拍网| 黄网站app在线观看| 日本欧美在线视频| av成人app永久免费| 亚洲一卡二卡三卡四卡无卡网站在线看| 欧美午夜一区二区福利视频| 色www免费视频| 久久久久久久久97黄色工厂| 日韩av黄色片| 日韩一二三区视频| 日本成人在线播放| 国产精品激情自拍| 日韩三级av| 丝袜人妻一区二区三区| 国产精品一品二品| 中文天堂资源在线| 日韩欧美极品在线观看| 日韩中文字幕观看| 欧美国产中文字幕| 试看120秒一区二区三区| 亚洲欧美成人一区| 日韩**一区毛片| 一级片视频免费看| 在线影院国内精品| 韩国中文字幕2020精品| 奇米4444一区二区三区| 日韩欧美ww| 人妻少妇被粗大爽9797pw| 不卡在线视频中文字幕| 久久婷婷国产麻豆91| 日韩欧美国产午夜精品| 国产成人l区| 91色精品视频在线| 91精品国产乱码久久久久久| 亚洲 欧美 另类人妖| 国产精品每日更新在线播放网址| 波多野结衣电车| 一本一道久久a久久精品逆3p| 黄色综合网址| 色综合视频二区偷拍在线| 日本伊人精品一区二区三区观看方式| 一二三不卡视频| 色又黄又爽网站www久久| 激情视频在线观看免费| 日韩av观看网址| 精品久久中文| 亚洲午夜精品一区| 亚洲色图制服丝袜| www夜片内射视频日韩精品成人| 欧美激情欧美狂野欧美精品| 国产精品18hdxxxⅹ在线| 国产精品国产亚洲精品看不卡| 93久久精品日日躁夜夜躁欧美 | 欧美情侣在线播放| 最新国产在线拍揄自揄视频| 国产视频一区二区不卡| 亚洲欧美日韩综合国产aⅴ| 欧美性受xxxx黑人| 欧美老女人第四色| 青青草原国产在线| 久久久亚洲综合网站| 日本不卡免费在线视频| 懂色av粉嫩av蜜臀av一区二区三区| 欧美精品在线观看播放| 亚洲丝袜一区| 精品日本一区二区| 麻豆精品在线播放| 69av视频在线| 精品在线观看国产| 色狠狠一区二区三区| 久久艹国产精品| 久久久国产精品午夜一区ai换脸| 一区二区三区www污污污网站| 九九精品视频在线观看| 视频福利一区| 色www免费视频| 亚洲国产一区视频| 国产福利在线视频| 999精品视频一区二区三区| 国产精品久久777777毛茸茸| 亚洲综合久久av一区二区三区| 精品久久久三级丝袜| 外国成人直播| 精品一二三四五区| 国产欧美一区二区三区鸳鸯浴| 国产高清在线免费| 国产97人人超碰caoprom| 亚洲欧美色图| 国产真实乱人偷精品人妻| 欧美白人最猛性xxxxx69交| 欧美成人黑人| www.国产在线播放| 国产精品色噜噜| 亚洲欧美日本在线观看| 亚洲一区二区久久久久久久 | 红桃视频 国产| 欧美网站在线观看| 日韩伦理电影网站| 亚洲欧美日本国产有色| 久久亚洲影视婷婷| 精品人妻一区二区三区四区不卡|