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

字節跳動云原生防護體系實踐

云計算
本文主要介紹了字節跳動內部生產環境中 Kubernetes 應用過程中發現的主要系統風險與提出一系列防護措施。

背景

隨著 Kubernetes 在企業中大規模使用和落地,逐漸形成了 "業務 - 中臺 - 基礎設施" 的分層技術體系;這種分層能夠屏蔽平臺和基礎設施層的復雜概念,讓應用專注于業務層的研發,但同時也會導致上層應用的穩定性強依賴底層基礎設施的支持,從而對基礎設施在大規模集群下的穩定性提出極大的挑戰:

  • 由于集群規模龐大,任何單一不起眼的小問題都可能被無限放大,帶來系統性風險;
  • 場景的復雜性和多樣性,也使得運維操作出現不符合預期的行為難以徹底避免。

這就要求我們對于 Kubernetes 所管理的資源和對象進行更有效的極端風險防護,盡可能緩解由于誤操作、組件版本與配置的錯誤、或者管控代碼 bug 對業務造成不可挽回的影響。

盡管 Kubernetes 原生提供了一系列的防護機制,例如嚴格的 RBAC 校驗機制、使用 PodDisruptionBudget(PDB)對 Eviction API 執行校驗、較為豐富的 Admission Plugins 等,但是在實際生產實踐中,我們仍然發現有很多無法覆蓋的場景。

在此背景下,字節跳動內部對 Kubernetes 系統進行了擴展與改造,增加了一系列的防御性校驗措施與操作約束,為運行在 Kubernetes 上的業務提供更強有力的穩定性支撐,降低極端風險。

防護加固

Kubernetes 是個相當復雜的分布式系統,但其架構設計上的核心思想還是非常簡單的。Kubernetes 通過 APIServer 提供統一的 API 接口實現對集群狀態的訪問與修改能力;各種自動化組件能以標準化的方式與集群通信持續獲取數據,并通過本地計算當前集群狀態與預期集群狀態之間的區別,派生出一系列的變更操作;最終通過 kubelet 在每個節點上執行這些狀態變更,將集群朝著預期的狀態推進。

由此可見,Kubernetes 組件間的交互和運行狀態可以大致分成以下三層

  • KV 存儲系統(如 etcd、Kine、Kubebrain)與 apiserver 間的交互,提供 key-value 級別的讀寫操作與事件監聽;
  • apiserver 與各種內建或附加 controller/operator 間(以及 apiserver 與用戶間)通過 API 請求交互;
  • apiserver 與單機節點組件間的交互。

圖片

根據上述分層,我們可以針對性梳理出一系列常見的系統性風險,并分別采取對應的措施進行加固以降低極端風險。

數據防護

存儲與 apiserver 之間的交互風險主要集中數據異常方面,例如數據的損壞與丟失等;存儲系統是 Kubernetes 的核心,是整個基于事件驅動的分布式系統的基石,一旦出現數據異常可能直接或間接地派生出一系列的故障。具體來說可能包括但不限于以下的常見極端風險問題:

  • 存儲集群運維操作失誤導致存儲下線,導致整個 Kubernetes 集群不可用;
  • 管理員直接刪除 etcd 中的數據,未經過 apiserver 做校驗,可能導致一些非預期關鍵對象如 namespace、deployment、pod 等被直接刪除,并觸發對象的級聯刪除,導致業務大面積受損;
  • 管理員因誤操作直接修改 etcd 中的數據,損壞了數據格式導致 apiserver 無法 decode 數據。

針對這些問題,我們在生產環境中采取了一系列措施——首先,盡可能標準化地約束對存儲集群的運維和數據操作,在存儲系統側開啟 TLS 雙向認證,盡量避免除了 Kubernetes 以外的用戶直接訪問存儲,降低數據損壞或丟失的風險;其次,對存儲進行定時的備份,在極端情況下,當發生不可逆的數據損失時,基于備份能快速恢復數據,降低損失的影響;此外,通過對其他組件進行加固,盡可能降低數據異常派生的非預期事件對于業務的直接沖擊。

控制面防護

自動化組件與 apiserver 之間的交互風險,主要集中在非預期操作方面。正常情況下,用戶或平臺將預期的狀態提交到 apiserver,而其他內部組件將立即根據當前狀態和預期狀態的區別派生出一系列的動作,從而使集群產生變更;而一旦錯誤的預期狀態被提交,集群將快速并且難以逆轉地朝著目標狀態進行變更。

針對這一類問題的主要防護思路,就是對關鍵對象的操作進行一些額外的限制,例如要求在操作時額外添加一些冗余操作,形成 double check 機制,降低由于誤操作或者管控代碼 bug 引發風險的概率;具體來說,操作防護通過 Kubernetes 原生提供的擴展機制 ValidatingAdmissionWebhook 來實現。我們通過 label 和 annotation 來標記需要進行操作防護的關鍵對象,并通過 selector 配置對這些關鍵對象以及對應的操作進行篩選,在 Webhook 中實現一系列的約束以達到防護的目的,其中包括但不限于以下這些策略:

  • 防止級聯刪除針對 Namespace、CRD 等根對象,一旦被刪除會導致級聯地觸發派生出的其他對象的刪除操作。因此我們在 Webhook 中對這些類型的關鍵對象的刪除進行攔截,避免誤操作引發級聯刪除操作引發災難性后果。
  • 顯式副本修改當需要調整關鍵 workload 資源副本數量時,為了避免意外地將副本數量縮減至 0,我們要求在通過 UPDATE 或者 PATCH 請求調整副本數的同時,還需要顯式地給對象添加特定 annotation 寫入預期調整的數值作為 double check;在 Webhook 中校驗關鍵 workload 對象進行變更時 .spec.replicas 字段中的值是否與 annotation 中提供的值保持一致,確保任何對于關鍵 workload 副本數的修改都是有意且明確的。
  • 顯式資源刪除當需要刪除關鍵 workload 對象時,要求在刪除對象之前先通過修改操作將 workload 的副本數降至 0;通過這種約束,我們得以避免一些誤操作,例如某些關鍵的 workload 對象未經確認直接,可能會觸發更多級聯的刪除操作,導致業務受損。
  • 操作程序約束對于一些特定的業務,對于業務規格的變更有著嚴格的變更事件窗口限制,例如業務只接受在非繁忙時段對鏡像、環境變量等配置進行變更,這樣可以降低因為規格更改引起的潛在問題,以及相應的業務中斷風險。我們通過 CRD 定義了可變更窗口、可變更字段等約束并暴露給用戶,在 Webhook 中根據用戶配置進行相應的校驗,這樣可以確保在出現故障時,影響盡量少的終端用戶,確保有相對充分的故障處理時間,最大程度的減少潛在損失,降低系統風險。

此外,線上生產環境中經常會遇到一些客戶端的異常,例如 OOM、大量緩存穿透等問題,這些異常往往會引發大量的開銷極大的讀請求,引發控制面異常甚至雪崩。針對線上異常流量的防護問題,我們對用戶行為進行了一定限制,禁止了一些開銷極大的讀穿透行為。其次,我們在控制面前置了針對 kube-apiserver 流量特征專門定制的七層網關 KubeGateway,它解決了 kube-apiserver 負載不均衡的問題,同時實現了對 kube-apiserver 請求的完整治理,包括請求路由、分流、限流、降級等,顯著提高了 Kubernetes 集群的可用性。另外,我們對 Kubernetes 的審計日志進行擴展,將一些流量相關的信息附加到審計日志上,在此基礎上進行分析得到用戶畫像。在異常的場景下,將用戶畫像、流量監控指標與控制面前置的七層網關 KubeGateway 的限流能力相結合,對給控制面提供巨大壓力的 Client 進行流量控制,盡可能降低雪崩風險。

節點防護

在大多數場景下,pod 的刪除應該分成兩個階段執行:首先由中心化的 Controller 或者用戶通過發起 Delete 請求將 pod 標記為刪除狀態(即添加 DeletionTimestamp),然后應該由 kubelet 負責對業務發起優雅退出,等待業務終止且資源釋放之后,由 kubelet 來通過 APIServer 提供的接口將 pod 徹底移除。但在生產實踐中,我們遇到諸多了問題,可能導致 kubelet 因為異常而非預期地終止業務 pod,例如:

  • 由于配置錯誤或者代碼 bug,導致 kubelet 重啟后 reject 正在運行的業務 pod,導致業務受損;
  • 由于控制面存儲出現的數據損壞或其他異常,導致 kubelet 發現本地實際運行的 pod 與控制面提供的本地應該運行的 pod 不一致,進而引起非預期的業務退出。

針對這類問題,我們對 kubelet 進行了一系列的改造,涵蓋 admit、housekeeping 等環節。通過改造給 kubelet 刪除 pod 的操作加入前置約束:在嘗試刪除關鍵 pod 時,首先檢查 pod 是否被顯式地進行標記刪除,如果 pod 未被標記刪除,則不允許 kubelet 觸發 pod 的刪除操作。基于這種顯式刪除的約束,我們得以大幅度降低因為各種 Kubernetes 組件異常而引發的節點層面的業務運行風險。

小結

在生產環境中,我們主要根據 Kubernetes 組件之間的交互過程識別和梳理出關鍵風險,通過特定的 label 與 annotation 對關鍵的對象進行標記,分別采取措施進行一定的加固:

  • 數據防護主要是約束運維操作,收斂數據訪問入口,標準化存儲操作的各種行為以減小風險;
  • 控制面防護主要是通過定制 ValidatingAdmissionWebhook 進行擴展,在對于一些關鍵對象的變更過程中,要求主動引入一些冗余的操作與校驗,降低誤操作風險;
  • 節點防護主要是通過對 kubelet 的進行改造,嚴格約束關鍵 pod 必須顯式刪除,降低極端情況下的系統性風險。

應用案例

字節基于原生 Kubernetes 生態定制了較多的功能以支持個性化的場景,整體的研發、迭代和交付的效率都非常高,對集群穩定性造成更大的挑戰,即使在交付流程規范上嚴格把控,也不能完全杜絕異常情況下的極端異常風險;結合實踐過程出現過的故障案例和場景訴求,字節云原生團隊從元集群、控制面、數據面、業務定制等多個角度,構建了較為全面的防御體系,有效避免線上大規模事故的發生。

數據防護:元集群級聯刪除

字節內部的集群數量眾多,為實現自動化運維和集群管理,需要構建元集群描述業務集群的狀態;在這種情況下,元集群自身的異常可能會觸發更大范圍的故障。在字節早期,集群缺乏防護能力,SRE 在運維過程中使用過高權限,誤刪除了某個 region 元集群中用于描述 Node 狀態的 CRD,因為沒有防御系統攔截,CRD 被刪除后會引發全量 CR 的級聯刪除,導致元集群控制器認為幾乎所有的節點都需要下線,引發全量 pod 物理停服。該次故障最終引發單 region 生產集群在 30 分鐘內持續標記刪 3W+ 節點,實際刪除 9K 節點后及時止損,影響面巨大且手動止損窗口很短。在該案例中,接入防御體系能夠實現在多個點位實現防御能力

  • 前置攔截:通過標記 CRD 為 critial 避免全量誤刪除引發級聯問題;
  • 集群下線限流:集群大范圍下線通常并不是常見的運維操作,控制節點下線的頻率和安全水位,保證即使出現異常的級聯刪除行為,也能夠盡量控制故障域;
  • 數據備份和恢復:當發生物理對象刪除行為后,能夠通過備份數據實現快速的恢復。

圖片

控制面防護:異常流量識別與限流

控制面異常通常源自于不合理的客戶端行為和不夠準確的服務端資源預估,由于場景過于復雜,在缺乏精細治理的情況下,最終因各種原因導致服務端過載;通常從現象上,會伴隨著客戶端大量的 List 請求和 APIServer OOM,進一步引發全量客戶端 Relist,惡性循環直至集群出現雪崩。對于控制面的極端異常,字節內部通過接入 7 層的 gateway ,配合全鏈路的自動化流量 tracing,實現靈活智能的 API 請求防護

  • 常態限流:針對客戶端和資源對象的組合和常態流量分析,定制限流規則,避免瞬時大量請求對服務端的壓力
  • 容災場景熔斷:當集群出現明顯異常或者雪崩時,通過手動熔斷止損,并逐步放開限流以恢復集群正常

圖片

節點防護:異常版本升級觸發大面積驅逐

相對于控制面,數據面的版本和配置通常更加復雜多樣,迭代通常會更加頻繁,更容易因為不當的組件運維操作引發不可預期的極端風險。某次 SRE 在升級 Kubelet 版本的過程中,應用了不符合預期的混部資源配置,在 Kubelet 重啟后,大量 Running 中的 pod 因為資源歸屬識別錯誤,導致 admit 失敗而被 delete,同時,原生的 delete API 不過 PDB 攔截,預期會引發大量業務容量的損失;但由于已經上線防護能力,最終沒有引發嚴重的線上問題。在該案例中,接入防御體系能夠同時在單機和中心上提供防御能力

  • 單機攔截:對于已經處于 Running 狀態的核心服務,默認補充 explict-deletion 標簽,確保只有顯式地通過 API 標記刪除 (設置 deletionTimestamp),能夠保證因為數據面異常發版后,不影響業務實例的運行,給人為介入處理提供足夠的時間
  • 中心攔截:對于核心服務補充 Delete 與 DeleteCollection 兩種 API 進行校驗,避免類似非預期的刪除 pod 行為對業務造成影響

圖片

后續規劃

字節防護實踐未來會逐漸集成火山引擎 VKE 產品中,為云上的服務提供更加可靠的穩定性保證;除此之外,我們也會持續增強云原生防護的功能特性,收斂并解決更多可能對云上服務造成穩定性風險的場景,包括如下內容

  • 控制面 Delete pod API 防護內建的 PDB 防護機制僅作用于 Evict pod API,校驗性能不佳。當存在大量 PDB 對象時,Evict pod API 耗時會大幅度劣化,請求時延遠超 Delete pod,因此有很多組件刻意不使用 Evict pod 而直接 Delete pod,例如調度器發起搶占等。由于控制面 Delete pod 的內置校驗較少,直接使用該接口容易導致業務 pod 的健康比例低于預期,影響業務正常運行。為避免這類風險,我們一方面需要優化 Evict pod 的性能,另一方面需要通過擴展對 Delete pod 操作進行更嚴格的校驗,以保證業務運行的 pod 健康比例不低于預期。
  • 收斂靜態校驗策略當前我們在控制面做的防護工作主要依托于對 Validating Admission Webhook 機制,這一方面會 apiserver 在處理請求過程中引入額外的外部過程,提高延遲與出錯概率,另一方面也會一定程度提高集群運維的復雜度。在 Kubernetes 1.26 版本中,引入了新的 Admission Plugin,支持使用 CEL (Common Expression Language)對請求進行一些靜態校驗。后續我們會將控制面防護的一些冗余操作校驗遷移到 CEL,對上述問題進行改善。
  • 場景定制防護策略對于 Redis 和分布式訓練等帶存儲狀態的業務來說,其編排模型和運維方案上有比較多的定制需求,為此,防御體系需要針對其業務特點 (如存儲分片、縱向資源調整、原地重啟等),補充完善更多精細化的策略以匹配特有的極端異常風險。

總結

本文主要介紹了字節跳動內部生產環境中 Kubernetes 應用過程中發現的主要系統風險與提出一系列防護措施。具體來說,我們從 Kubernetes 組件的交互過程的角度出發,劃分為數據、控制面、節點三個層面,并通過具體示例說明了常見問題,包括誤操作和管控組件版本錯誤等等,并且針對這些常見問題,簡單介紹了我們構建的一系列防御性措施,包括但不限于,約束組件訪問權限、主動添加冗余操作與相關校驗等等。通過這些防御性措施,我們能夠降低已知問題給業務帶來的風險,為業務提供穩定的基礎服務。

除了必要的防御性加固措施,日常維護集群時的標準化變更流程也至關重要。通過控制集群規模并充分進行灰度驗證,可以降低故障的影響范圍。在生產環境中,只有綜合利用系統自我防御性措施和標準化運維等多種手段,才能最大程度地降低風險和故障損失。

責任編輯:龐桂玉 來源: 字節跳動技術團隊
相關推薦

2022-12-23 08:58:35

字節跳動YARN架構

2023-11-20 07:27:00

云原生Spark

2024-09-25 15:57:56

2023-12-08 18:40:36

字節跳動云原生火山引擎

2023-01-10 09:08:53

埋點數據數據處理

2022-08-21 21:28:32

數據庫實踐

2023-11-29 20:19:35

實踐云計算

2024-09-23 08:15:11

2022-07-12 16:54:54

字節跳動Flink狀態查詢

2023-12-08 20:57:38

字節跳動火山引擎公共云

2022-05-23 13:30:48

數據胡實踐

2022-06-22 06:49:39

Hertz開源HTTP 框架

2022-04-07 16:35:59

PGO 優化profile 數據編譯優化

2024-11-01 17:00:03

2023-11-29 22:12:29

云計算實踐

2023-12-04 18:38:05

2022-12-26 16:34:51

開源云原生

2017-03-07 10:00:01

定義實踐DevOps
點贊
收藏

51CTO技術棧公眾號

九热爱视频精品视频| 午夜免费视频在线国产| 亚洲激情精品| 国产一区二区久久精品| 可以看污的网站| 精精国产xxxx视频在线中文版| 99久久综合色| 国产一区二区视频在线观看| 久久精品久久国产| 日本a口亚洲| 亚洲成人久久久久| 伊人网在线综合| 黄色漫画在线免费看| 中文字幕成人在线观看| 国产精品久久久久久久久婷婷 | 日本一区二区三区在线播放 | 婷婷在线免费观看| 久久成人免费日本黄色| 韩国精品久久久999| 麻豆视频免费在线播放| 天堂日韩电影| 日韩欧美国产电影| www.com黄色片| av综合电影网站| 亚洲一区二区3| 在线视频不卡国产| 91涩漫在线观看| 91色视频在线| 国产精品一 二 三| a网站在线观看| 久久精品理论片| 欧洲成人在线视频| 日本污视频在线观看| 中文一区一区三区免费在线观看| 国产亚洲精品久久久久动| 亚洲香蕉中文网| 视频在线亚洲| 欧美一区二区三区四区五区 | 粉嫩av国产一区二区三区| 粉嫩av一区二区三区免费野| 337p亚洲精品色噜噜狠狠p| 香港伦理在线| 国产精品理论片在线观看| 你懂的网址一区二区三区| 欧美特黄一级视频| 成人免费av在线| 国产精品18毛片一区二区| 99er热精品视频| 国产老肥熟一区二区三区| 成人免费观看a| 亚洲无码精品国产| 另类人妖一区二区av| 国产区精品在线观看| 羞羞色院91蜜桃| 蜜桃视频在线一区| 国产伦精品一区二区三区精品视频| 免费看毛片网站| 日韩在线播放一区二区| 国产精品久久久久久影视| 69av视频在线观看| 男女性色大片免费观看一区二区 | 久久久久国产免费免费| 久久久久久亚洲精品不卡4k岛国| 色屁屁草草影院ccyycom| 成人动漫视频在线| 精品亚洲欧美日韩| 九色在线播放| 国产精品护士白丝一区av| 亚洲欧洲日夜超级视频| 成人在线观看亚洲| 伊人开心综合网| 久久久久久久久久网| 色多多在线观看| 欧美亚洲国产bt| 欧美精品色视频| 欧美18xxxx| 国产午夜精品一区二区三区 | 亚洲精品鲁一鲁一区二区三区| 日韩一区二区三区精品| 亚洲国产精品国自产拍av秋霞| 黄色a一级视频| 色综合久久网| 国模吧一区二区三区| 天天干天天干天天干天天| 麻豆成人免费电影| 高清视频在线观看一区| 桃花色综合影院| 国产精品久久久久久久岛一牛影视 | 亚洲黄色在线播放| 久久久一区二区三区捆绑**| 一区二区免费在线观看| 色av手机在线| 色欧美片视频在线观看 | 日韩在线播放中文字幕| 久久99精品一区二区三区 | 少妇人妻偷人精品一区二区| 2022国产精品视频| 最新视频 - x88av| 大胆人体一区| 日韩你懂的在线观看| 91精彩刺激对白露脸偷拍| 91精品蜜臀一区二区三区在线| 国外视频精品毛片| 中文字幕一区二区三区免费看| 国产精品1区2区3区在线观看| 精品蜜桃一区二区三区| 成人国产免费电影| 色婷婷综合久久久| 日本精品一二三区| 97精品视频在线看| 日本亚洲欧洲色| 欧美熟妇交换久久久久久分类| 1000精品久久久久久久久| 久久成人免费观看| 国产视频一区二| 一本一本久久a久久精品牛牛影视| 黑人巨大精品一区二区在线| 视频一区欧美精品| 国产精品免费一区二区| 免费a级在线播放| 色综合久久久久久久久| 蜜臀av粉嫩av懂色av| 亚洲国产精品久久久天堂| 国产精品99久久久久久久久久久久 | 国产真实乱子伦精品视频| 欧洲亚洲一区二区三区四区五区| 毛片大全在线观看| 欧美一级片在线| 少妇高潮一区二区三区喷水| 日韩二区在线观看| 久久久久久一区| 国产精品25p| 亚洲高清一二三区| 一区二区三区免费高清视频| 国产一区二区三区免费播放| 日韩在线三级| 电影一区二区三| 亚洲美女av在线| 精品欧美一区二区三区免费观看| 成人午夜又粗又硬又大| 国产内射老熟女aaaa| 久久99成人| 欧美另类xxx| 97久久夜色精品国产九色| 色在线观看视频| 精品一区二区三区影院在线午夜| 日本中文不卡| 欧美不卡高清一区二区三区| 亚洲网在线观看| 亚洲毛片一区二区三区| 久久精品视频一区| 蜜臀视频一区二区三区| 黄色不卡一区| 国产免费一区二区三区在线能观看| 国产女人在线视频| 欧美性极品少妇| 91麻豆精品久久毛片一级| 久久国产精品一区二区| 国产三级中文字幕| 99久久香蕉| 羞羞色国产精品| 日本私人网站在线观看| 91极品视觉盛宴| 成人信息集中地| 国产一区二区0| 欧美日韩精品在线一区二区| 青青一区二区| 国产精品成人在线| 黄色在线免费看| 精品欧美乱码久久久久久1区2区| 国产精品suv一区二区69| a亚洲天堂av| 色一情一乱一伦一区二区三区日本 | 免费在线成人| 日韩亚洲一区在线播放| 国产精品777777在线播放| 久久久久久久久久国产精品| 四虎影院在线域名免费观看| 欧美亚洲国产一卡| 婷婷色中文字幕| 91麻豆精品一区二区三区| 中文字幕国产传媒| 亚洲精品久久| 久久日韩精品| 日韩免费大片| 性色av香蕉一区二区| 成年人视频在线看| 欧美va亚洲va| 中文字幕福利视频| 亚洲午夜免费电影| 国产综合精品在线| 国产二区国产一区在线观看| 国产精品免费观看久久| 婷婷综合社区| 欧美三级网色| 日韩精品视频中文字幕| 国产成人aa精品一区在线播放| 久久日韩视频| 亚洲日本中文字幕| 丰满人妻一区二区| 欧美色区777第一页| 亚洲国产综合久久| 中文字幕一区二区三| 亚洲av无码成人精品国产| 国产在线精品免费av| 97公开免费视频| 亚洲日本视频| 国产午夜精品视频一区二区三区| 国产欧美一区| 久久久7777| 91精品久久久久久综合五月天| 国产精品偷伦视频免费观看国产| 美女av在线免费看| 欧美黑人巨大xxx极品| 日本中文字幕在线播放| 亚洲色图av在线| 五月婷婷免费视频| 精品少妇一区二区三区视频免付费 | 国产专区一区二区| av女优在线| 日韩经典第一页| 国产综合在线播放| 日韩一级二级三级精品视频| 在线免费看av片| 欧美最猛黑人xxxxx猛交| 国产香蕉视频在线| 亚洲一区在线看| 欧美国产在线看| 亚洲AV无码乱码国产精品牛牛| 国产精品久久久久久妇女6080 | 国产在线不卡一区二区三区| 日韩av电影手机在线观看| av影视在线看| 欧美激情视频网| 日本资源在线| 欧美另类交人妖| 午夜dj在线观看高清视频完整版| 社区色欧美激情 | 欧洲不卡av| 啊v视频在线一区二区三区| av影片在线看| www.99久久热国产日韩欧美.com| av色图一区| 色av中文字幕一区| 麻豆av免费在线观看| 久久婷婷国产麻豆91天堂| 欧美videos极品另类| 久久久国产一区二区| 超碰个人在线| 欧美高清第一页| av资源在线播放| 欧美亚州一区二区三区| 综合在线影院| 国产精品美女免费| 中文字幕日本一区| 91传媒在线免费观看| 凹凸av导航大全精品| 精品国产乱码久久久久软件| 婷婷综合一区| 日韩精品一区二区三区丰满| 日本久久一二三四| 最近中文字幕免费mv| 亚洲午夜伦理| 日韩精品无码一区二区三区免费| 日韩av中文字幕一区二区| www.国产视频.com| 懂色av噜噜一区二区三区av| 少妇一级淫片免费放播放| 久久久久久久久久电影| 免费一级suv好看的国产网站| 亚洲免费看黄网站| 日韩欧美三级在线观看| 欧美亚洲动漫另类| av免费在线观看不卡| 欧美精品一区二区三区久久久| 深夜福利视频在线免费观看| 中文字幕亚洲欧美日韩2019| 伊人福利在线| 国产97色在线|日韩| 成人在线视频区| 久久久水蜜桃| 性欧美欧美巨大69| 99爱视频在线| 国产美女在线观看一区| 日本丰满少妇裸体自慰| 国产精品久久久久久久久免费丝袜 | 性欧美一区二区三区| 日韩精品一区二区视频| 欧美精品日韩少妇| 5278欧美一区二区三区| 香蕉久久久久久| 狠狠色噜噜狠狠狠狠色吗综合| 欧美一级精品片在线看| 亚洲乱码日产精品bd在线观看| 亚洲在线播放| 国产极品尤物在线| 久久97超碰色| www在线观看免费视频| 北条麻妃一区二区三区在线| 性亚洲最疯狂xxxx高清| 成人全视频在线观看在线播放高清| 亚洲va国产va天堂va久久| 香蕉视频一区| 91传媒免费视频| 秋霞国产午夜精品免费视频| 丰满少妇xbxb毛片日本| 国产精品网站在线观看| 在线观看 中文字幕| 91麻豆精品国产无毒不卡在线观看| 手机在线观看免费av| 久久久国产在线视频| 欧美xxx网站| 国产精品三区四区| 欧美永久精品| 亚洲人视频在线| 日本一区二区三区国色天香| 日韩在线视频免费播放| 日韩免费高清av| 黄色片网站在线观看| 日韩av男人的天堂| 老牛影视av一区二区在线观看| 无颜之月在线看| 韩国理伦片一区二区三区在线播放 | 成人福利视频在线看| 国产黄色小视频网站| 欧美视频在线一区| 国产中文字幕在线| 97视频在线观看免费| 中文字幕区一区二区三| 一级黄色片播放| 久久99国产精品麻豆| 精品一区二区三区蜜桃在线| 一本色道**综合亚洲精品蜜桃冫| 神宫寺奈绪一区二区三区| 欧美成人激情视频免费观看| 青青伊人久久| 一区二区三区四区五区视频 | 精品久久久国产| 亚洲精品视频专区| 欧美日韩国产999| 天堂久久av| youjizz.com在线观看| 国产成人亚洲精品狼色在线| 黄色一级视频免费观看| 日韩你懂的在线观看| 色老头在线观看| 国产欧美一区二区三区不卡高清| 好看的日韩av电影| 中文字幕在线国产| 亚洲成av人片一区二区三区| 婷婷伊人综合中文字幕| 欧美最猛性xxxxx亚洲精品| 亚洲日本三级| 蜜桃免费在线视频| 国产精品不卡视频| 国产特黄一级片| 久久久在线免费观看| 欧美调教网站| 中文字幕欧美人妻精品一区| 中文字幕国产一区| 国产伦一区二区| 欧美极品少妇全裸体| 久久久免费毛片| 激情网站五月天| 国产精品福利av| 亚洲国产精品18久久久久久| 国外成人在线视频| 极品美女一区二区三区| www.超碰97.com| 亚洲自拍偷拍九九九| 亚洲人成色777777精品音频| 国产精品电影一区| 国产丰满美女做爰| 激情婷婷亚洲| 欧美一区二区三区影院| 婷婷综合久久一区二区三区| 蜜桃视频在线免费| 国产精品永久免费在线| 亚洲欧美文学| 免费毛片视频网站| 5月丁香婷婷综合| 国产美女高潮在线| 亚洲自拍的二区三区| 成人小视频在线观看| 国产精品51麻豆cm传媒| 久精品免费视频| 国产精品美女久久久久久不卡| 中国黄色片一级| 亚洲va欧美va天堂v国产综合| 日中文字幕在线| 日本一区二区三区四区视频| 91高清一区| 手机在线成人av| 91精品国产综合久久久久久| www.久久ai| 日韩免费av电影| 成人av网址在线| 国产精品天天操| 日韩免费观看高清| 欧美日韩p片|