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

vivo大規模 Kubernetes 集群自動化運維實踐

運維
本文將分享我們開發的Kubernetes-Operator,采用K8s的聲明式API設計,可以讓集群管理員和Kubernetes-Operator的CR資源進行交互,以簡化、降低任務風險性。只需要一個集群管理員就可以維護成千上萬個k8s節點。

作者 | vivo 互聯網服務器團隊-Zhang Rong

一、背景

隨著vivo業務遷移到k8s的增長,我們需要將k8s部署到多個數據中心。如何高效、可靠的在數據中心管理多個大規模的k8s集群是我們面臨的關鍵挑戰。kubernetes的節點需要對os、docker、etcd、k8s、cni和網絡插件的安裝和配置,維護這些依賴關系繁瑣又容易出錯。

以前集群的部署和擴縮容主要通過ansible編排任務,黑屏化操作、配置集群的inventory和vars執行ansible playbook。集群運維的主要困難點如下:

  • 需要人工黑屏化集群運維操作,存在操作失誤和集群配置差異。
  • 部署腳本工具沒有具體的版本控制,不利于集群的升級和配置變更。
  • 部署腳本上線需要花費大量的時間驗證,沒有具體的測試用例和CI驗證。
  • ansible任務沒有拆分為模塊化安裝,應該化整為零。具體到k8s、etcd、addons的等角色的模塊化管理,可以單獨執行ansible任務。
  • 主要是通過二進制部署,需要自己維護一套集群管理體系。部署流程繁瑣,效率較低。
  • 組件的參數管理比較混亂,通過命令行指定參數。k8s的組件最多有100以上的參數配置。每個大版本的迭代都在變化。

本文將分享我們開發的Kubernetes-Operator,采用K8s的聲明式API設計,可以讓集群管理員和Kubernetes-Operator的CR資源進行交互,以簡化、降低任務風險性。只需要一個集群管理員就可以維護成千上萬個k8s節點。

二、集群部署實踐

2.1 集群部署介紹

主要基于ansible定義的OS、docker、etcd、k8s和addons等集群部署任務。

主要流程如下:

  1. Bootstrap OS
  2. Preinstall step
  3. Install Docker
  4. Install etcd
  5. Install Kubernetes Master
  6. Install Kubernetes node
  7. Configure network plugin
  8. Install Addons
  9. Postinstall setup

上面看到是集群一鍵部署關鍵流程。當在多個數據中心部署完k8s集群后,比如集群組件的安全漏洞、新功能的上線、組件的升級等對線上集群進行變更時,需要小心謹慎的去處理。我們做到了化整為零,對單個模塊去處理。避免全量的去執行ansible腳本,增加維護的難度。針對如docker、etcd、k8s、network-plugin和addons的模塊化管理和運維,需提供單獨的ansible腳本入口,更加精細的運維操作,覆蓋到集群大部分的生命周期管理。同時kubernetes-operator的api設計的時候可以方便選擇對應操作yml去執行操作。

集群部署優化操作如下:

(1)k8s的組件參數管理通過

ConmponentConfig[1]提供的API去標識配置文件。

  • 【可維護性】當組件參數超過50個以上時配置變得難以管理。
  • 【可升級性】對于升級,版本化配置的參數更容易管理。因為社區一個大版本的參數沒有變化。
  • 【可編程性】可以對組件(JSON/YAML)對象的模板進行修補。如果你啟用動態kubelet配置選項,修改參數會自動生效,不需要重啟服務。
  • 【可配置性】許多類型的配置不能表示為key-value形式。

(2)計劃切換到kubeadm部署

  • 使用kubeadm對k8s集群的生命周期管理,減少自身維護集群的成本。
  • 使用kubeadm的證書管理,如證書上傳到secret里減少證書在主機拷貝的時間消耗和重新生成證書功能等。
  • 使用kubeadm的kubeconfig生成admin kubeconfig文件。
  • kubeadm其它功能如image管理、配置中心upload-config、自動給控制節點打標簽和污點等。
  • 安裝coredns和kube-proxy addons。

(3)ansible使用規范

  • 使用ansible自帶模塊處理部署邏輯。
  • 避免使用hostvars。
  • 避免使用delegate_to。
  • 啟用–limit 模式。
  • 等等。

2.2 CI 矩陣測試

部署出來的集群,需要進行大量的場景測試和模擬。保證線上環境變更的可靠性和穩定性。

CI矩陣部分測試案例如下。

(1)語法測試:

  • ansible-lint
  • shellcheck
  • yamllint
  • syntax-check
  • pep8

(2)集群部署測試:

  • 部署集群
  • 擴縮容控制節點、計算節點、etcd
  • 升級集群
  • etcd、docker、k8s和addons參數變更等

(3)性能和功能測試:

  • 檢查kube-apiserver是否正常工作
  • 檢查節點之間網絡是否正常
  • 檢查計算節點是否正常
  • k8s e2e測試
  • k8s conformance 測試
  • 其他測試

這里利用了GitLab、gitlab-runner[2]、ansible和kubevirt[3]等開源軟件構建了CI流程。

詳細的部署步驟如下:

  1. 在k8s集群部署gitlab-runner,并對接GitLab倉庫。
  2. 在k8s集群部署Containerized-Data-Importer (CDI)[4]組件,用于創建pvc的存儲虛擬機的映像文件。
  3. 在k8s集群部署kubevirt,用于創建虛擬機。
  4. 在代碼倉庫編寫gitlab-ci.yaml[5], 規劃集群測試矩陣。

如上圖所示,當開發人員在GitLab提交PR時會觸發一系列操作。這里主要展示了創建虛擬機和集群部署。其實在我們的集群還部署了語法檢查和性能測試gitlab-runner,通過這些gitlab-runner創建CI的job去執行CI流程。

具體CI流程如下:

  1. 開發人員提交PR。
  2. 觸發CI自動進行ansible語法檢查。
  3. 執行ansible腳本去創建namespace,pvc和kubevirt的虛擬機模板,最終虛擬機在k8s上運行。這里主要用到ansible的k8s模塊[6]去管理這些資源的創建和銷毀。
  4. 調用ansible腳本去部署k8s集群。
  5. 集群部署完進行功能驗證和性能測試等。
  6. 銷毀kubevirt、pvc等資源。即刪除虛擬機,釋放資源。

如上圖所示,當開發人員提交多個PR時,會在k8s集群中創建多個job,每個job都會執行上述的CI測試,互相不會產生影響。這種主要使用kubevirt的能力,實現了k8s on k8s的架構。

kubevirt主要能力如下:

  • 提供標準的K8s API,通過ansible的k8s模塊就可以管理這些資源的生命周期。
  • 復用了k8s的調度能力,對資源進行了管控。
  • 復用了k8s的網絡能力,以namespace隔離,每個集群網絡互相不影響。

三、Kubernetes-Operator 實踐

3.1 Operator 介紹

Operator是一種用于特定應用的控制器,可以擴展 K8s API的功能,來代表k8s的用戶創建、配置和管理復雜應用的實例。基于k8s的資源和控制器概念構建,又涵蓋了特定領域或應用本身的知識。用于實現其所管理的應用生命周期的自動化。

總結 Operator功能如下:

  1. kubernetes controller
  2. 部署或者管理一個應用,如數據庫、etcd等
  3. 用戶自定義的應用生命周期管理
  • 部署
  • 升級
  • 擴縮容
  • 備份
  • 自我修復
  • 等等

3.2 Kubernetes-Operator CR 介紹

kubernetes-operator的使用很多自定義的CR資源和控制器,這里簡單的介紹功能和作用。

【ClusterDeployment】:  管理員配置的唯一的CR,其中MachineSet、Machine和Cluster它的子資源或者關聯資源。ClusterDeployment是所有的配置參數入口,定義了如etcd、k8s、lb、集群版本、網路和addons等所有配置。

【MachineSet】:集群角色的集合包括控制節點、計算節點和etcd的配置和執行狀態。

【Machine】:每臺機器的具體信息,包括所屬的角色、節點本身信息和執行的狀態。

【Cluster】:和ClusterDeployment對應,它的status定義為subresource,減少

clusterDeployment的觸發壓力。主要用于存儲ansible執行器執行腳本的狀態。

【ansible執行器】:主要包括k8s自身的job、configMap、Secret和自研的job控制器。其中job主要用來執行ansible的腳本,因為k8s的job的狀態有成功和失敗,這樣job 控制器很好觀察到ansible執行的成功或者失敗,同時也可以通過job對應pod日志去查看ansible的執行詳細流程。configmap主要用于存儲ansible執行時依賴的inventory和變量,掛在到job上。secret主要存儲登陸主機的密鑰,也是掛載到job上。

【擴展控制器】:主要用于擴展集群管理的功能的附加控制器,在部署kubernetes-operator我們做了定制,可以選擇自己需要的擴展控制器。比如addons控制器主要負責addon插件的安裝和管理。clusterinstall主要生成ansible執行器。remoteMachineSet用于多集群管理,同步元數據集群和業務集群的machine狀態。還有其它的如對接公有云、dns、lb等控制器。

3.3 Kubernetes-Operator 架構

vivo的應用分布在數據中心的多個k8s集群上,提供了具有集中式多云管理、統一調度、高可用性、故障恢復等關鍵特性。主要搭建了一個元數據集群的pass平臺去管理多個業務k8s集群。在眾多關鍵組件中,其中kubernetes-operator就部署在元數據集群中,同時單獨運行了machine控制器去管理物理資源。

下面舉例部分場景如下:

場景一:

當大量應用遷移到kubernets上,管理員評估需要擴容集群。首先需要審批物理資源并通過pass平臺生成對應machine的CR資源,此時的物理機處于備機池里,machine CR的狀態為空閑狀態。當管理員創建ClusterDeploment時所屬的MachineSet會去關聯空閑狀態的machine,拿到空閑的machine資源,我們就可以觀測到當前需要操作機器的IP地址生成對應的inventory和變量,并創建configmap并掛載給job。執行擴容的ansible腳本,如果job成功執行完會去更新machine的狀態為deployed。同時跨集群同步node的控制器會檢查當前的擴容的node是否為ready,如果為ready,會更新當前的machine為Ready狀態,才完成整個擴容流程。

場景二:

當其中一個業務集群出現故障,無法提供服務,觸發故障恢復流程,走統一資源調度。同時業務的策略是分配在多個業務集群,同時配置了一個備用集群,并沒有在備用集群上分配實例,備用集群并不實際存在。

有如下2種情況:

  1. 其它的業務集群可以承載故障集群的業務,kubernetes-operator不需要執行任何操作。
  2. 如果其他業務集群不能承載故障集群的業務。容器平臺開始預估資源,調用kubernetes-operator創建集群,即創建clusterDeployment從備機池里選擇物理機器,觀測到當前需要操作機器的IP地址生成對應的inventory和變量,創建configmap并掛載給job。執行集群安裝的ansible腳本, 集群正常部署完成后開始業務的遷移。

3.4 Kubernetes-Operator 執行流程

  1. 集群管理員或者容器平臺觸發創建ClusterDeployment的CR,去定義當前集群的操作。
  2. ClusterDeployment控制器感知到變化進入控制器。
  3. 開始創建machineSet和關聯machine 資源。
  4. ClusterInstall 控制器感知ClusterDeployment和Machineset的變化,開始統計machine資源,創建configmap和job,參數指定操作的ansible yml入口,執行擴縮容、升級和安裝等操作。
  5. 調度器感知到job創建的pod資源,進行調度。
  6. 調度器調用k8s客戶端更新pod的binding資源。
  7. kubelet感知到pod的調度結果,創建pod開始執行ansible playbook。
  8. job controller感知job的執行狀態,更新ClusterDeployment狀態。一般策略下job controller會去清理configmap和job資源。
  9. NodeHealthy感知k8s的node是否為ready,并同步machine的狀態。
  10. addons 控制器感知集群是否ready,如果為ready去執行相關的addons插件的安裝和升級。

四、總結

vivo大規模的K8s集群運維實踐中,從底層的集群部署工具的優化,到大量的CI矩陣測試保證了我們線上集群運維的安全和穩定性。采用了K8s托管K8s的方式來自動化管理集群(K8s as a service),當operator檢測當前的集群狀態,判斷是否與目標一致,出現不一致時,operator會發起具體的操作流程,驅動整個集群達到目標狀態。

當前vivo的應用主要分布在自建的數據中心的多個K8s集群中,隨著應用的不斷的增長和復雜的業務場景,需要提供跨自建機房和云的多個K8s集群去運行原云生的應用程序。就需要Kubernetes-Operator提供對接公有云基礎設施、apiserver的負載均衡、網絡、dns和Cloud Provider 等。需要后續不斷完善,降低K8s集群的運維難度。

責任編輯:未麗燕 來源: vivo互聯網技術
相關推薦

2025-03-06 10:33:04

2020-08-06 14:36:24

Elasticsear集群運維

2025-10-16 09:14:48

2015-10-08 10:55:23

云服務自動化運維 ANSIBLE

2024-07-19 09:01:07

2016-04-15 00:43:13

2015-08-31 05:51:37

集群運維私有云

2015-06-11 13:24:27

集群運維

2012-10-22 14:54:48

2015-08-05 09:53:34

運維自動化

2017-07-25 10:53:27

2018-01-30 13:45:50

Kubernetes容器自動化管理

2014-08-04 10:10:35

IT運維自動化運維

2015-06-24 10:42:19

云計算運維自動化運維ANSIBLE

2018-06-23 07:31:05

2017-10-13 13:14:35

互聯網

2018-04-10 09:49:17

IT運維人員京東運維體系

2018-08-08 10:09:47

自動化運維MySQL

2023-01-11 21:11:37

RabbitMQRocketMQ消息中間件

2017-09-15 14:10:01

系統運維服務器
點贊
收藏

51CTO技術棧公眾號

国产精欧美一区二区三区| 欧美日韩中文一区| 久久亚洲高清| 中文字幕在线观看视频免费| 精品国产乱码| 欧美日本一区二区在线观看| 日本国产中文字幕| 日韩电影免费| 激情综合色综合久久| 欧美激情xxxx| 欧美熟妇激情一区二区三区| 99久久久国产精品免费调教网站| 亚洲欧洲av在线| 精品久久久久久亚洲| 亚洲一区在线观| 亚洲精品免费观看| www日韩欧美| 久久久久国产精品无码免费看| 日韩漫画puputoon| 亚洲国产美国国产综合一区二区| 偷拍视频一区二区| 天天操天天干天天舔| 经典一区二区三区| 欧美有码在线观看| 欧美高清视频一区二区三区| 国产亚洲一卡2卡3卡4卡新区 | 秋霞在线一区| 欧美美女直播网站| 欧美aⅴ在线观看| 色呦呦在线播放| 欧美国产精品一区二区| 国产三级精品在线不卡| 一卡二卡三卡在线| 久久综合伊人| 992tv成人免费影院| 国产女人18水真多毛片18精品| 欧美精美视频| 日韩精品中文字幕在线观看| 在线观看一区二区三区视频| 成人福利一区二区| 日韩欧美国产激情| 青青草视频在线免费播放| 中文字幕在线播放网址| 国产精品国产三级国产aⅴ原创 | 日韩av手机在线播放| 在线视频成人| 欧美日本高清视频在线观看| 99久久国产宗和精品1上映| 国产激情视频在线看| 一区二区在线观看视频| 男女h黄动漫啪啪无遮挡软件| 国产黄色在线| 欧美国产精品v| 色综合久久久久久久久五月| 国产中文在线视频| 国产亚洲欧美日韩日本| 日本欧美精品久久久| 美州a亚洲一视本频v色道| 2023国产精品| 日本一区二区精品| 成在在线免费视频| 亚洲国产精品av| 亚洲一区3d动漫同人无遮挡 | 亚洲综合欧美在线| 成人精品国产亚洲| 欧美日韩国产综合视频在线观看| 搡女人真爽免费午夜网站| 成人做爰免费视频免费看| 欧美性感一类影片在线播放| 午夜免费看毛片| 免费观看在线一区二区三区| 欧美tk—视频vk| 精品1卡二卡三卡四卡老狼| 精品三级在线观看视频| 国产午夜精品久久久| 日本一级免费视频| 欧美肥老太太性生活| 久久亚洲精品小早川怜子66| 欧美成人免费观看视频| 一区二区三区成人精品| 日本欧美精品在线| 在线免费av网| 高清在线成人网| 美日韩精品免费| 91欧美在线视频| 亚洲精品视频在线观看免费 | 国产黄a三级三级| 影音先锋日韩精品| 97精品视频在线播放| 岛国av中文字幕| 久久91精品国产91久久小草| 翡翠波斯猫1977年美国| 免费在线黄色电影| 国产精品久久99| 亚洲 欧美 综合 另类 中字| 美女福利一区二区| 欧美一区二区在线不卡| 国产麻豆xxxvideo实拍| 精品盗摄女厕tp美女嘘嘘| 久久亚洲精品国产亚洲老地址| 日本网站在线免费观看| 全国精品久久少妇| 国产精品theporn88| 国产成人天天5g影院在线观看| 亚洲男人天堂av网| 久久久久久久久久久福利| 四虎精品在线观看| 日韩精品欧美国产精品忘忧草 | 日韩免费一级| 亚洲欧美国产一区二区三区| 538任你躁在线精品视频网站| 99成人精品| 亚洲a区在线视频| 久久手机免费观看| 亚洲无人区一区| 99re6在线观看| 神马电影久久| 91精品国产自产91精品| 国产农村妇女毛片精品| 久久久久久久久久久黄色| 日本高清视频免费在线观看| 欧美性xxx| 欧美一级爆毛片| www.黄色在线| 亚洲一区中文| 国产日韩二区| 日本小视频在线免费观看| 欧美日韩日日骚| 无码一区二区三区在线| 亚洲精品专区| 国产精品伊人日日| 伊人春色在线观看| 91精品国产全国免费观看| 大吊一区二区三区| 久久免费黄色| 久久久综合香蕉尹人综合网| 丁香花在线影院| 日韩三级视频中文字幕| 国产精品国产精品88| 欧美aaaaa成人免费观看视频| 乱色588欧美| 亚洲欧美韩国| 亚洲欧美日韩一区二区在线| 国产精品一区二区6| 成av人片一区二区| 久久久亚洲国产精品| 伊人精品综合| 91国产精品电影| 天堂a√中文在线| 婷婷开心激情综合| 亚洲视频在线播放免费| 亚洲激情视频| 国产一区二区视频在线免费观看| 动漫一区二区| 日韩成人在线视频观看| 日干夜干天天干| www.亚洲精品| 无码中文字幕色专区| 黄色美女久久久| 97视频免费看| 国产系列电影在线播放网址| 欧美调教femdomvk| 可以免费看av的网址| 精品一区二区三区在线观看国产| 中文有码久久| 日韩欧美另类中文字幕| 久久久久久国产精品三级玉女聊斋 | 中国黄色a级片| 久久一区中文字幕| 亚洲国产综合自拍| 91精品一区| 欧美黄色片视频| 亚洲aaa在线观看| 91成人看片片| 男女做暖暖视频| www.久久精品| 激情五月婷婷久久| 亚洲精品一区二区妖精| 不卡一卡2卡3卡4卡精品在| 俺来也官网欧美久久精品| 亚洲精品自拍第一页| 国产乱码在线观看| 亚洲男人的天堂av| www.男人天堂| 蜜臂av日日欢夜夜爽一区| 肉大捧一出免费观看网站在线播放 | 一区二区国产在线观看| 日本在线观看一区二区三区| 欧美激情三区| 午夜免费日韩视频| av资源网站在线观看| 日韩一级二级三级精品视频| 国产成人精品一区二三区| 欧美国产日韩一二三区| 国模大尺度视频| 久久久久在线| 国产精品久久久影院| 九色成人国产蝌蚪91| 国产综合色香蕉精品| av影片在线| 久久精品久久久久久| 日韩欧美电影在线观看| 91精品国产一区二区三区| 五月婷婷中文字幕| 成人免费在线播放视频| 国产熟妇搡bbbb搡bbbb| 精品一区二区三区影院在线午夜 | 原纱央莉成人av片| 久久九九全国免费精品观看| 青青操视频在线| 日韩亚洲欧美中文三级| 国产精品欧美综合| 亚洲成av人**亚洲成av**| 影音先锋男人资源在线观看| 波多野结衣中文字幕一区二区三区| 无人在线观看的免费高清视频| 欧美日韩精品| 一区二区视频在线观看| 蜜桃精品wwwmitaows| 成人精品一二区| 日本国产亚洲| 国产91在线视频| 国产传媒av在线| 欧美日韩xxxxx| 成人免费网址| 日韩在线欧美在线| 蜜桃视频在线免费| 亚洲国产日韩欧美在线动漫| 国产三级自拍视频| 欧美日韩综合在线| 波多野结衣一区二区三区四区| 亚洲国产成人porn| 久久99久久久| 亚洲老妇xxxxxx| 熟女av一区二区| 国产精品美女久久久久久久| 欧美 日韩 国产 成人 在线观看| 91视频精品在这里| av网站有哪些| 福利一区二区在线观看| www.色就是色.com| 看国产成人h片视频| 色悠悠久久综合网| 日本亚洲天堂网| 91人人澡人人爽人人精品| 久久久999| 免费av网址在线| 免费日韩av| 任你操这里只有精品| 噜噜噜91成人网| 中文字幕欧美人妻精品一区| 99人久久精品视频最新地址| 日本在线xxx| 国产精品一级| 免费日韩中文字幕| 久久一区国产| 亚洲欧美在线精品| 久久成人18免费观看| 热久久久久久久久| 国产综合色精品一区二区三区| 九九热精品国产| 国产成人精品www牛牛影视| 免费啪视频在线观看| 97久久久精品综合88久久| 真人bbbbbbbbb毛片| 久久久国产一区二区三区四区小说| 97人妻人人揉人人躁人人| 国产精品天美传媒| 中国毛片直接看| 亚洲成人动漫在线观看| 天天综合网入口| 欧美又粗又大又爽| 国产乱淫片视频| 日韩精品一区二区三区中文不卡| 日本韩国免费观看| 亚洲天堂av在线播放| 日本在线视频网| 欧美—级a级欧美特级ar全黄| 无码小电影在线观看网站免费| 国产精品成人免费视频| 国产电影一区二区| 精品亚洲欧美日韩| 日韩成人免费| www.xxx麻豆| 老司机午夜免费精品视频| 五月花丁香婷婷| eeuss国产一区二区三区| 欧美波霸videosex极品| 一区二区三区中文字幕精品精品| 99久在线精品99re8热| 欧美午夜片在线观看| 亚洲精品一区二区口爆| 亚洲天堂av网| 丁香花在线观看完整版电影| 国产精品欧美激情| 91午夜精品| 亚洲国产一区二区在线| 99国产精品私拍| 久久久久xxxx| 久久久电影一区二区三区| 久久久久久久麻豆| 色综合久久综合网97色综合 | 亚洲欧美日韩爽爽影院| av在线免费网站| 欧美在线影院在线视频| 欧美一级大片在线视频| 日产国产精品精品a∨| 欧美久久影院| 99视频在线视频| 91在线你懂得| 成人免费毛片东京热| 欧美亚洲国产一区二区三区va| 亚洲美女性生活| 久久精品久久精品亚洲人| 日本欧美日韩| 国产美女精品在线观看| 天天天综合网| 爱情岛论坛vip永久入口| 成人18精品视频| 久草成人在线视频| 欧美日韩二区三区| 精品乱码一区二区三四区视频| 久久久亚洲精选| 日本少妇精品亚洲第一区| 亚洲一区二区免费视频软件合集| 亚欧成人精品| 国产女人18毛片水真多18| 亚洲欧美日韩中文播放 | 精品sm在线观看| 国产网站在线免费观看| 国产精品久久久| 国产亚洲电影| 人妻丰满熟妇av无码区app| 97久久超碰国产精品电影| 久久国产露脸精品国产| 制服丝袜av成人在线看| 日韩毛片久久久| 国产精品久久色| 欧美综合一区| www.色偷偷.com| 欧美国产1区2区| 丰满熟女人妻一区二区三| 亚洲欧美另类在线观看| 在线观看欧美日韩电影| 九九九九九九精品| 国产日韩亚洲欧美精品| 男男做爰猛烈叫床爽爽小说| 亚洲福利视频三区| 日韩在线观看视频一区| 国语对白做受69| 2020最新国产精品| 成人免费性视频| www.亚洲色图.com| 亚洲高清毛片一区二区| 精品亚洲一区二区三区在线观看 | 国产自摸综合网| 天天影视欧美综合在线观看| 97超碰人人看| 亚洲大尺度视频在线观看| 天堂视频中文在线| 日本国产欧美一区二区三区| 国产欧美高清视频在线| 欧美特级aaa| 亚洲男人的天堂一区二区| 丰满肉肉bbwwbbww| 97视频在线观看免费| 亚洲丝袜啪啪| 中文字幕亚洲乱码| 亚洲欧美成人一区二区三区| 午夜精品小视频| 97av在线视频免费播放| 久久99国产精品视频| 亚洲一级免费在线观看| 亚洲精品精品亚洲| 日本成人动漫在线观看| 国产精品激情av电影在线观看| 久久一区二区三区电影| 中文字幕无码毛片免费看| 精品国产乱码久久久久久天美| 久久精品蜜桃| 91视频免费网站| 亚洲国产精品第一区二区三区| 日本aaa视频| 7799精品视频| 国内激情视频在线观看| 天堂一区二区三区| 国产丶欧美丶日本不卡视频| 毛片基地在线观看| 日韩中文字幕在线看| 成人在线视频中文字幕| 亚洲精品一二三四五区| 亚洲最新在线观看| 九九九伊在人线综合| 91久久夜色精品国产网站| 在线欧美视频| 91无套直看片红桃在线观看| 精品福利在线导航| 国产麻豆一区| 18禁网站免费无遮挡无码中文| 国产精品久久久久久妇女6080|