99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

Kubernetes Pod 完全指南:從概念到排障實(shí)踐

Kubernetes Pod 完全指南:從概念到排障實(shí)踐 用了這么多年 Kubernetes每次有新同事問(wèn)我的第一個(gè)問(wèn)題基本都集中在“Pod到底是什么”上。我太理解這種困惑了因?yàn)?Docker 時(shí)代大家腦子里已經(jīng)形成了“容器 運(yùn)行單元”的思維定式結(jié)果一到 k8s 里發(fā)現(xiàn)跑起來(lái)的最小單元不是容器而是 Pod而且很多時(shí)候一個(gè) Pod 里還能塞好幾個(gè)容器這跟以前的習(xí)慣完全不一樣。這篇文章我就把自己對(duì) Pod 的理解、底層的運(yùn)行機(jī)制、實(shí)際部署中的操作心得以及這幾年排查 Pod 問(wèn)題總結(jié)的經(jīng)驗(yàn)一次說(shuō)清楚。內(nèi)容從基礎(chǔ)概念一路講到 LNMP 這樣的多容器場(chǎng)景同時(shí)覆蓋到了二進(jìn)制部署、Rancher、離線環(huán)境這些大家常問(wèn)的落地方式適合正在學(xué)習(xí) k8s 的運(yùn)維和開(kāi)發(fā)同學(xué)也適合已經(jīng)被 Pod 各種異常狀態(tài)折磨過(guò)的實(shí)戰(zhàn)派。1. 為什么會(huì)有 Pod 這個(gè)抽象層1.1 從容器到 Podk8s 為什么不做“容器級(jí)調(diào)度”先理清一個(gè)經(jīng)常被人搞混的點(diǎn)Docker 是容器運(yùn)行時(shí)它負(fù)責(zé)的是“在單臺(tái)機(jī)器上把容器跑起來(lái)”而 k8s 是集群編排系統(tǒng)它關(guān)心的是“在多臺(tái)機(jī)器上怎么調(diào)度、怎么保證服務(wù)不掛”。這兩者的抽象粒度天然就不一樣。Docker 時(shí)代我們部署一個(gè) web 服務(wù)直接把代碼打進(jìn)去、端口映射出來(lái)、然后 docker run 一下就算完事。但到了真實(shí)的生產(chǎn)環(huán)境一個(gè)服務(wù)往往不是單獨(dú)一個(gè)進(jìn)程就能搞定的。常見(jiàn)的場(chǎng)景是nginx 要轉(zhuǎn)發(fā)請(qǐng)求給后端 PHP-FPM同時(shí)需要一個(gè)日志采集進(jìn)程在旁邊收日志或者業(yè)務(wù)主進(jìn)程旁邊帶一個(gè)監(jiān)控上報(bào)進(jìn)程定時(shí)把指標(biāo)推給 Prometheus。如果用 Docker Compose這些配套進(jìn)程就得各自啟動(dòng)一個(gè)容器然后再通過(guò) Compose 的網(wǎng)絡(luò)把它們連起來(lái)它們之間的依賴關(guān)系、共享存儲(chǔ)、通信方式都要你手工管理。k8s 的做法是直接在調(diào)度層面引入了 Pod 這個(gè)中間層。Pod 是一組“必須部署在同一臺(tái)宿主機(jī)上、資源聯(lián)合調(diào)度、生命周期完全一致”的容器集合。它不是把 Docker 容器包一層殼那么簡(jiǎn)單而是改變了你組織應(yīng)用的方式以前你在 Compose 里用“服務(wù)”來(lái)組織現(xiàn)在你在 k8s 里用“Pod”來(lái)組織。二者的區(qū)別在于Compose 的服務(wù)之間是“通過(guò)網(wǎng)絡(luò)調(diào)用”的關(guān)系而 Pod 里的多個(gè)容器是“共享同一個(gè)運(yùn)行環(huán)境”的關(guān)系。k8s 之所以不下沉到直接調(diào)度容器核心原因是它需要一種機(jī)制來(lái)表達(dá)“這些進(jìn)程必須緊緊地耦合在一起”的訴求。如果沒(méi)有 Pod 這一層兩個(gè)容器想要共享 localhost 通信、共享一個(gè)數(shù)據(jù)卷、保持同生共死就只能靠外部編排服務(wù)去強(qiáng)行管理復(fù)雜度會(huì)高得離譜。有了 Pod這些問(wèn)題全部從“應(yīng)用層的約定”變成了“基礎(chǔ)設(shè)施層的內(nèi)置能力”。1.2 Pod 真正解決的兩個(gè)實(shí)際問(wèn)題第一個(gè)問(wèn)題是網(wǎng)絡(luò)。Pod 內(nèi)的所有容器共享同一個(gè)網(wǎng)絡(luò)命名空間這意味著它們共享同一個(gè) IP、同一個(gè)端口空間。舉例來(lái)說(shuō)nginx 容器里只要配置 fastcgi_pass 127.0.0.1:9000就能直接訪問(wèn)到同一個(gè) Pod 里 PHP-FPM 容器監(jiān)聽(tīng)的 9000 端口。這在實(shí)際部署 LNMP 的時(shí)候非常好用你不需要去拿 Service 或負(fù)載均衡去連同一個(gè) Pod 內(nèi)部的進(jìn)程。第二個(gè)問(wèn)題是存儲(chǔ)。Pod 內(nèi)的容器可以共享同一個(gè) Volume。最常見(jiàn)的是 emptyDir——一個(gè)隨 Pod 創(chuàng)建而創(chuàng)建、隨 Pod 銷毀而消失的臨時(shí)目錄。nginx 和 PHP-FPM 容器都掛載同一個(gè)代碼目錄代碼發(fā)布的時(shí)候只要更新一次掛載的卷兩個(gè)容器立刻就能同時(shí)看到新代碼。這在容器化的 PHP/Java 應(yīng)用里非常典型。我見(jiàn)過(guò)不少?gòu)?Compose 遷到 k8s 的人一開(kāi)始習(xí)慣把 nginx、PHP-FPM、MySQL 分別做成三個(gè)獨(dú)立 Deployment然后靠 Service 互相訪問(wèn)。這種思路不是不行但你會(huì)發(fā)現(xiàn) nginx 和 PHP-FPM 之間的通信要經(jīng)過(guò) Service 的轉(zhuǎn)發(fā)、要經(jīng)過(guò) kube-proxy延遲和復(fù)雜度都上去了。事實(shí)上 nginx 和 PHP-FPM 是典型的“同生命周期應(yīng)用”它們版本一起升級(jí)、部署一起變化更應(yīng)該放進(jìn)同一個(gè) Pod。而 MySQL 這種有狀態(tài)的數(shù)據(jù)存儲(chǔ)則完全不同它需要獨(dú)立的數(shù)據(jù)持久化、獨(dú)立的擴(kuò)縮容策略絕對(duì)不應(yīng)該和 Web 容器擠在一個(gè) Pod 里。理解了這一點(diǎn)你對(duì) Pod 的編排邊界就有了基本的判斷力。2. Pod 的底層運(yùn)行機(jī)制2.1 一次創(chuàng)建 Pod 時(shí)kubelet 在節(jié)點(diǎn)上做了什么很多教程上來(lái)就寫(xiě) yaml 文件但從來(lái)不解釋“你執(zhí)行 kubectl apply 之后發(fā)生了什么”。我建議每個(gè)想深入研究 k8s 的人都先把這個(gè)鏈路走一遍否則后面排障會(huì)非常痛苦。當(dāng)你在控制平面執(zhí)行 kubectl apply 提交了一個(gè) Pod 定義后請(qǐng)求會(huì)打到 API Server。API Server 把 Pod 對(duì)象寫(xiě)入 etcd然后調(diào)度器kube-scheduler會(huì) watch 到這個(gè)新 Pod根據(jù)它的資源請(qǐng)求、節(jié)點(diǎn)親和性、污點(diǎn)容忍等約束選一個(gè)最合適的節(jié)點(diǎn)并把調(diào)度結(jié)果寫(xiě)回 API Server。接著目標(biāo)節(jié)點(diǎn)上的 kubelet 會(huì) watch 到這個(gè) Pod開(kāi)始在本地執(zhí)行容器創(chuàng)建流程。kubelet 創(chuàng)建 Pod 并不是直接拉起業(yè)務(wù)容器而是先啟動(dòng)一個(gè)基礎(chǔ)設(shè)施容器在 containerd 里叫 sandbox在 Docker 時(shí)代叫 pause 容器。這個(gè)容器極其輕量它不跑任何業(yè)務(wù)邏輯唯一的職責(zé)是持有一組 Linux namespace——比如網(wǎng)絡(luò)命名空間、IPC 命名空間、UTS 命名空間。后續(xù)創(chuàng)建的業(yè)務(wù)容器全部通過(guò) --networkcontainer:sandbox 這種方式加入同一個(gè)命名空間這樣就實(shí)現(xiàn)了 Pod 內(nèi)容器共享網(wǎng)絡(luò)和通信域的效果。這也就解釋了為什么你在節(jié)點(diǎn)上執(zhí)行 docker ps或用 crictl 查看容器時(shí)會(huì)看到一堆“pause”開(kāi)頭的容器。很多人第一次看到會(huì)覺(jué)得是殘留垃圾進(jìn)程其實(shí)那是 Pod 存在的基礎(chǔ)。那個(gè) pause 容器是整個(gè) Pod 生命周期里最先啟動(dòng)、最后刪除的容器它一掛整個(gè) Pod 里的所有容器都會(huì)跟著重建。業(yè)務(wù)容器的創(chuàng)建流程也不止是 pull image 和 run container 兩步。kubelet 會(huì)依次處理初始化容器initContainer如果有、掛載 Volume、設(shè)置環(huán)境變量、設(shè)置資源 cgroup 限制、配置探針探針啟動(dòng)后會(huì)周期性調(diào)用然后依次啟動(dòng)普通容器。任何一個(gè)步驟失敗Pod 都會(huì)停在對(duì)應(yīng)的狀態(tài)上這也是我們排障時(shí)觀察 Pod 事件Events的直接依據(jù)。2.2 探針、就緒、重啟策略與 Pod 狀態(tài)流轉(zhuǎn)搞明白了創(chuàng)建鏈路接著看 Pod 運(yùn)行時(shí)的幾個(gè)關(guān)鍵機(jī)制。首先要分清 Pod 狀態(tài)和容器狀態(tài)——Pod 的狀態(tài)是對(duì)內(nèi)容器狀態(tài)的聚合判斷常見(jiàn)的有 Pending、Running、Succeeded、Failed、Unknown但在實(shí)際開(kāi)發(fā)環(huán)境中我們天天打交道的其實(shí)是 ContainerCreating、CrashLoopBackOff、ImagePullBackOff、Terminating 這些 kubectl 列表里展示的狀態(tài)。探針Probe是保證 Pod 可靠性的重要組件。livenessProbe 決定“容器活著嗎”如果一直失敗kubelet 會(huì)按 restartPolicy 殺掉容器并重啟readinessProbe 決定“容器可以對(duì)外提供服務(wù)了嗎”如果失敗kubelet 會(huì)把該 Pod 從 Service 的 Endpoints 里摘掉流量就不會(huì)打到它。startupProbe 是后來(lái)加的專門(mén)解決“啟動(dòng)很慢的老 Java 應(yīng)用”場(chǎng)景——它先于 liveness 執(zhí)行在 startup 成功之前l(fā)iveness 不會(huì)介入這樣可以避免應(yīng)用啟動(dòng)耗時(shí)太長(zhǎng)被誤殺。這里要特別強(qiáng)調(diào) restartPolicy 的一個(gè)坑Deployment 管理的 PodrestartPolicy 必須是 Always因?yàn)?Deployment 本身就是靠滾動(dòng)重啟來(lái)實(shí)現(xiàn)發(fā)布和自愈的。如果你把 restartPolicy 改成 OnFailure 或 Never很多人會(huì)在這時(shí)發(fā)現(xiàn) Pod 時(shí)不時(shí)變成 Succeeded 或 Failed 狀態(tài)而不是被拉起然后一臉懵。這個(gè)限制從 API 校驗(yàn)層面就會(huì)直接攔下你所以寫(xiě) yaml 的時(shí)候提前注意就好。還有一個(gè)容易被忽略的機(jī)制是容器的日志處理。Pod 里的容器如果崩潰頻繁kubelet 會(huì)按照一定周期做退避重啟拉起的間隔從 10s 開(kāi)始20s、40s、80s……最長(zhǎng) 5 分鐘之后恢復(fù)正常探測(cè)頻率。這個(gè)退避機(jī)制就是 CrashLoopBackOff 狀態(tài)的來(lái)源。很多新手一看到 CrashLoopBackOff 就以為是死循環(huán)了其實(shí)這只是“崩潰后退避等待中”的正常表現(xiàn)重點(diǎn)要看容器為什么崩潰也就是去查日志。3. 實(shí)際部署從最簡(jiǎn)單到 LNMP3.1 單容器 Pod 的 yaml 長(zhǎng)什么樣理論講完必須動(dòng)手。先寫(xiě)一個(gè)最簡(jiǎn)單但完整的單容器 Pod 示例我有一個(gè)習(xí)慣是永遠(yuǎn)不裸寫(xiě)裸 Pod這里是為了教學(xué)先展示 Pod 最小定義生產(chǎn)環(huán)境后面我會(huì)強(qiáng)烈建議你換成 Deployment。apiVersion: v1 kind: Pod metadata: name: nginx-single namespace: default labels: app: nginx-single spec: containers: - name: nginx image: nginx:1.25 ports: - containerPort: 80 protocol: TCP resources: requests: cpu: 100m memory: 128Mi limits: cpu: 250m memory: 512Mi readinessProbe: httpGet: path: /nginx_status port: 80 initialDelaySeconds: 3 periodSeconds: 5 livenessProbe: httpGet: path: /nginx_status port: 80 initialDelaySeconds: 15 periodSeconds: 10執(zhí)行 kubectl apply -f 之后用 kubectl get pods -o wide 就能看到 Pod 被調(diào)度到哪臺(tái)節(jié)點(diǎn)拿到它的 Cluster IP。然后可以用 kubectl exec -it nginx-single -- curl 127.0.0.1 驗(yàn)證一下。注意 resources 那一節(jié)里 cpu 的單位是 m毫核100m 代表 0.1 個(gè) CPU 核心。內(nèi)存單位是 Mi這是二進(jìn)制兆。新手最常見(jiàn)的錯(cuò)誤就是把 cpu 寫(xiě)成 1表示 1 個(gè)完整核心內(nèi)存寫(xiě)成 1024表示 1024 字節(jié)然后發(fā)現(xiàn)調(diào)度和 limit 行為完全不符合預(yù)期。關(guān)于 readinessProbe 和 livenessProbe 的 pathnginx:1.25 官方鏡像里默認(rèn)不帶 /nginx_status 這個(gè)模塊路徑如果你照抄這個(gè)配置會(huì)發(fā)現(xiàn)就緒探針一直失敗。平時(shí)用的話直接探 / 或者 /index.html 更保險(xiǎn)。這種細(xì)節(jié)問(wèn)題在測(cè)試環(huán)境驗(yàn)證一下就能發(fā)現(xiàn)我列出來(lái)是提醒你不要被教程里的示例坑到。3.2 多容器協(xié)作用 Pod 內(nèi)兩個(gè)容器搭建 LNMP 示例平時(shí)被問(wèn)得特別多的問(wèn)題就是“k8s 里怎么部署 LNMP”。網(wǎng)上能搜到一些“k8s lnmp 架構(gòu)實(shí)驗(yàn)”之類的教程但很多講得很含糊。這里我給出一套最經(jīng)典的 Pod 內(nèi)雙容器方案nginx 容器和 PHP-FPM 容器放同一個(gè) Pod共享代碼目錄nginx 把 PHP 請(qǐng)求轉(zhuǎn)發(fā)到本機(jī) 9000 端口PHP-FPM 處理完后把結(jié)果返回給 nginx。先看 Pod 的定義再把關(guān)鍵點(diǎn)拆開(kāi)講。apiVersion: v1 kind: Pod metadata: name: lnmp-pod labels: app: lnmp spec: containers: - name: nginx image: nginx:1.25 volumeMounts: - name: web-code mountPath: /usr/share/nginx/html ports: - containerPort: 80 readinessProbe: httpGet: path: /index.php port: 80 initialDelaySeconds: 5 periodSeconds: 5 - name: php-fpm image: php:8.2-fpm volumeMounts: - name: web-code mountPath: /var/www/html ports: - containerPort: 9000 volumes: - name: web-code emptyDir: {}這段配置只用了幾個(gè)核心字段但表達(dá)了一個(gè)非常重要的概念nginx 和 php-fpm 兩個(gè)容器通過(guò) emptyDir 共享了同一份代碼目錄這正是前面我講的 Pod 內(nèi)容器共享 Volume 的實(shí)際應(yīng)用。emptyDir 的生命周期等于 Pod 的生命周期Pod 刪了它就沒(méi)了所以這個(gè)方案適合驗(yàn)證、實(shí)驗(yàn)和臨時(shí)負(fù)載生產(chǎn)環(huán)境一般會(huì)用 PVC 把代碼卷?yè)Q成持久化的。nginx 配置里要讓 PHP 請(qǐng)求轉(zhuǎn)到 php-fpm你可以用 ConfigMap 掛一個(gè)自定義的 nginx 配置核心是這一句location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /var/www/html$fastcgi_script_name; include fastcgi_params; }關(guān)鍵點(diǎn)來(lái)了fastcgi_pass 寫(xiě)的是 127.0.0.1:9000因?yàn)閮蓚€(gè)容器共享網(wǎng)絡(luò)命名空間所以 nginx 容器里訪問(wèn) localhost:9000 可以直接到達(dá) php-fpm 容器。這一點(diǎn)如果你拆成兩個(gè) Deployment 就很難做到——你只能通過(guò) Service 或 ClusterIP 連接配置和維護(hù)成本都會(huì)高不少。而 MySQL 在 LNMP 架構(gòu)里我傾向于不放進(jìn)同一個(gè) Pod。它是典型的有狀態(tài)組件數(shù)據(jù)要持久化、要主從同步、要單獨(dú)的存儲(chǔ)和備份策略。一般做法是用 StatefulSet 獨(dú)立部署或者直接使用托管的數(shù)據(jù)庫(kù)服務(wù)。把 MySQL 硬塞進(jìn)和 nginx、php 同一個(gè) Pod短期實(shí)驗(yàn)沒(méi)問(wèn)題上了生產(chǎn)一定會(huì)因?yàn)閿?shù)據(jù)卷生命周期和調(diào)度策略的問(wèn)題吃大虧。3.3 Deployment 還是裸 Pod什么時(shí)候不該直接建 Pod上面兩個(gè)例子我為了講解概念都用的裸 Podkind: Pod。但生產(chǎn)環(huán)境我強(qiáng)烈建議你不要直接創(chuàng)建裸 Pod而是通過(guò) Deployment、StatefulSet、DaemonSet 這些控制器來(lái)管理。為什么裸 Pod 如果所在的節(jié)點(diǎn)宕機(jī)了k8s 不會(huì)自動(dòng)幫你在別的節(jié)點(diǎn)重建。但 Deployment 創(chuàng)建的 Pod 是有 ReplicaSet 這樣的控制器盯著Pod 突然掛掉它會(huì)開(kāi)一個(gè)新的補(bǔ)齊節(jié)點(diǎn)掛了調(diào)度器也會(huì)在健康節(jié)點(diǎn)上重新創(chuàng)建。Deployment 還自帶滾動(dòng)更新、回滾、擴(kuò)縮容能力這些是裸 Pod 完全沒(méi)有的。簡(jiǎn)單說(shuō)Deployment 與 Pod 的關(guān)系就像系統(tǒng)進(jìn)程和守護(hù)進(jìn)程的關(guān)系你自己的代碼是那個(gè) Pod而 supervisor 是那個(gè) Deployment。沒(méi)有 supervisor 的話進(jìn)程死了沒(méi)人管有 supervisor 的話它保證你需要的副本數(shù)永遠(yuǎn)在線。所以實(shí)際生產(chǎn)中應(yīng)用部署的規(guī)格應(yīng)該長(zhǎng)這樣apiVersion: apps/v1 kind: Deployment metadata: name: nginx-deployment labels: app: nginx spec: replicas: 3 selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: containers: - name: nginx image: nginx:1.25 ports: - containerPort: 80可以看到 Pod 的定義被挪到了 template 里這就是“Pod 模板”??刂破髫?fù)責(zé)管理這份模板產(chǎn)出的所有 Pod 實(shí)例。剛開(kāi)始用 k8s 時(shí)我喜歡用 kubectl run nginx --imagenginx --replicas3 試試手但后來(lái)發(fā)現(xiàn)這樣的自動(dòng)化可維護(hù)性不強(qiáng)所以現(xiàn)在一律推薦用 yaml 文件管理方便進(jìn) Git方便審閱方便回滾。4. Pod 的資源模型、調(diào)度與網(wǎng)絡(luò)4.1 資源請(qǐng)求與限制背后的調(diào)度和驅(qū)逐邏輯Pod 里每個(gè)容器都可以聲明 resources.requests 和 resources.limits。requests 是調(diào)度依據(jù)limit 是運(yùn)行限制。調(diào)度器只看 requests它要保證一臺(tái)節(jié)點(diǎn)上所有 Pod 的 requests 總和不超過(guò)節(jié)點(diǎn)可分配資源。也就是說(shuō)哪怕節(jié)點(diǎn)內(nèi)存其實(shí)有 64G但上面已存在的 Pod 請(qǐng)求了 50G再來(lái)一個(gè)新的 Pod 請(qǐng)求 20G那它就會(huì) Pending直到有節(jié)點(diǎn)騰出空間或你擴(kuò)容節(jié)點(diǎn)。limits 則由 kubelet 在啟動(dòng)容器時(shí)配置成 cgroup 的上限。這里有個(gè)常見(jiàn)的認(rèn)知誤區(qū)CPU 的限制是限流throttling容器超過(guò)了會(huì)被降速但內(nèi)存的限制是硬限制容器只要嘗試分配超過(guò) limit 的內(nèi)存內(nèi)核 OOM Killer 就會(huì)把進(jìn)程殺掉kubelet 檢測(cè)到容器異常退出后再按策略重啟從而表現(xiàn)為 OOMKilled 狀態(tài)。根據(jù) request 和 limit 的設(shè)置方式Pod 會(huì)被劃分成三種 QoS 級(jí)別Guaranteed、Burstable、BestEffort。三者都設(shè)了 request 且等于 limit是 Guaranteed只有部分容器設(shè)或 request 小于 limit是 Burstable完全不設(shè) resources是 BestEffort。當(dāng)節(jié)點(diǎn)內(nèi)存壓力過(guò)大時(shí)kubelet 會(huì)進(jìn)入驅(qū)逐流程驅(qū)逐順序是 BestEffort 先被干掉然后是 Burstable最后才是 Guaranteed。這也是生產(chǎn)環(huán)境我給核心業(yè)務(wù)全設(shè) requestlimit 的原因——我不想讓它成為資源緊張時(shí)第一個(gè)被犧牲的對(duì)象。這個(gè)資源模型也解釋了為什么二進(jìn)制方式搭建 k8s 集群或離線部署時(shí)經(jīng)常有人遇到 Pod 調(diào)度失敗的問(wèn)題節(jié)點(diǎn)容量明明看起來(lái)夠但可用資源被系統(tǒng)預(yù)留system-reserved、kube-reserved 這些參數(shù)扣了一部分然后 requests 就會(huì)被拒絕所以計(jì)算節(jié)點(diǎn)容量時(shí)要把預(yù)留資源考慮進(jìn)去。4.2 調(diào)度約束從節(jié)點(diǎn)選擇到親和性默認(rèn)情況下調(diào)度器根據(jù)資源 requests 選擇節(jié)點(diǎn)但很多時(shí)候我們需要主動(dòng)控制 Pod 的去向。nodeSelector 是最簡(jiǎn)單的方案比如給帶有 gputrue 標(biāo)簽的節(jié)點(diǎn)專門(mén)調(diào)度 GPU 任務(wù)spec: nodeSelector: disktype: ssd更復(fù)雜一點(diǎn)的是節(jié)點(diǎn)親和性和 Pod 親和性。節(jié)點(diǎn)親和性支持硬性要求requiredDuringScheduling和軟性偏好preferredDuringScheduling軟性偏好會(huì)給節(jié)點(diǎn)打分得分高的優(yōu)先被選中但如果沒(méi)有滿足的節(jié)點(diǎn)也不會(huì)調(diào)度失敗。Pod 親和性解決的場(chǎng)景是“我想讓這些 Pod 盡量待在同一臺(tái)機(jī)器上”或者“絕對(duì)不要把有沖突的服務(wù)放一起”比如把 Web 和緩存放在同節(jié)點(diǎn)減少延遲而把兩個(gè)副本分散到不同可用區(qū)保證高可用。污點(diǎn)Taint和容忍Toleration是一個(gè)很容易被忽略但生產(chǎn)環(huán)境一定要明白的機(jī)制。節(jié)點(diǎn)有了污點(diǎn)默認(rèn)所有 Pod 都不能調(diào)度上去除非 Pod 顯式容忍了這個(gè)污點(diǎn)。典型用途是給專用節(jié)點(diǎn)打污點(diǎn)只允許特定 Pod 進(jìn)去或者用 NoExecute 污點(diǎn)把故障節(jié)點(diǎn)上的 Pod 全部驅(qū)逐出去。有時(shí)候 Pod 一直 Pending你用 kubectl describe 能看到類似 0/3 nodes are available: 3 node(s) had untolerated taint 的事件排查方法也就很清晰了。4.3 Pod 網(wǎng)絡(luò)IP 從哪來(lái)端口怎么通每個(gè) Pod 在集群內(nèi)部都有一個(gè)獨(dú)立的 IP這個(gè) IP 由 CNI 插件分配。大部分默認(rèn)安裝的集群用的是 Calico、Cilium 或 Flannel 這類方案Pod 會(huì)被分配一個(gè)與宿主機(jī)不同網(wǎng)段的地址。比如節(jié)點(diǎn)是 192.168.1.xPod 可能是 10.244.x.x各節(jié)點(diǎn)上的 Pod 可以通過(guò) Overlay 網(wǎng)絡(luò)跨主機(jī)通信。Pod 內(nèi)的容器共享同一個(gè) IP 和網(wǎng)絡(luò)命名空間這就是前面講的 127.0.0.1:9000 能直達(dá)兄弟容器的原因。在 Pod 外部訪問(wèn) Pod 時(shí)通常有兩種方式一是同集群內(nèi)通過(guò) Service 的 ClusterIP二是調(diào)試時(shí)用 kubectl port-forward 把本地端口映射到 Pod 端口。還有一種是 hostNetwork: true讓 Pod 直接用節(jié)點(diǎn)網(wǎng)絡(luò)不走 CNI這類用法常見(jiàn)于對(duì)網(wǎng)絡(luò)性能極其敏感的組件或需要固定端口的系統(tǒng)組件。順帶提一個(gè)比較進(jìn)階的方向如果需要給 Pod 配置多個(gè)網(wǎng)絡(luò)接口比如同時(shí)接入業(yè)務(wù)網(wǎng)和管理網(wǎng)就會(huì)用到 Multus 這種“多網(wǎng)絡(luò)插件”方案。Multus 本身不實(shí)現(xiàn)網(wǎng)絡(luò)它把多個(gè) CNI 插件比如搭配 macvlan 或 ipvlan組合起來(lái)給 Pod 創(chuàng)建多個(gè)網(wǎng)卡并附加不同網(wǎng)絡(luò)的 IP。在一些需要 VLAN 隔離的部署場(chǎng)景比如 k8s multus 網(wǎng)絡(luò) vlan 配置就是通過(guò)這種方案把 Pod 接入到不同的二層網(wǎng)絡(luò)中。這是個(gè)加分技能日常單網(wǎng)絡(luò)的集群用不上但遇到多網(wǎng)卡、VLAN 需求時(shí)你會(huì)非常感激這個(gè)設(shè)計(jì)。5. 排查實(shí)錄Pod 起不來(lái)的 10 種典型情況5.1 先學(xué)會(huì)看狀態(tài)、事件和日志排查 Pod 問(wèn)題最忌諱的就是上來(lái)就刪除重建那樣你既看不到根因也可能把現(xiàn)場(chǎng)環(huán)境破壞了。正確順序應(yīng)該是先 kubectl get pods 看整體狀態(tài)再 kubectl describe pod 看事件Events和容器狀態(tài)最后針對(duì)有問(wèn)題的容器 kubectl logs 看日志。如果容器已經(jīng)崩潰重啟了加 --previous 參數(shù)看上一次啟動(dòng)的日志很多問(wèn)題就藏在那里。kubectl describe 輸出里面最重要的部分是 Events 字段它按時(shí)間順序記錄了 kubelet 對(duì) Pod 做的所有動(dòng)作和失敗原因。比如 FailedScheduling、Failed to pull image、Back-off restarting failed container 等每個(gè)關(guān)鍵事件后面一般都有原因和涉及的對(duì)象這足夠我們定位 80% 的問(wèn)題。5.2 常見(jiàn)錯(cuò)誤和排查建議速查表下面的表格是我根據(jù)這幾年實(shí)操整理出來(lái)的高頻 Pod 異常問(wèn)題幾乎每個(gè)集群都用得上現(xiàn)象根本原因最常見(jiàn)排查方向Pending資源不足、節(jié)點(diǎn)有污點(diǎn)、調(diào)度約束不滿足describe 看 FailedScheduling 事件檢查 requests 是否超出節(jié)點(diǎn)可分配ImagePullBackOff鏡像拉取失敗檢查鏡像名、tag 是否正確私有倉(cāng)庫(kù)認(rèn)證是否正確離線環(huán)境是否有鏡像倉(cāng)庫(kù)ErrImagePull鏡像不存在或倉(cāng)庫(kù)無(wú)權(quán)限查看 describe 事件中的具體報(bào)錯(cuò)not found / denied / timeoutCrashLoopBackOff應(yīng)用啟動(dòng)即崩潰或 liveness 探針失敗logs --previous 看上一次日志檢查啟動(dòng)命令和探針配置Running 但沒(méi) ReadyreadinessProbe 一直失敗檢查探針訪問(wèn)的路徑、端口是否真的可訪問(wèn)Running 但無(wú)法訪問(wèn)Service 沒(méi)匹配到標(biāo)簽、端口不一致檢查 Service selector 和 Pod labels 是否匹配檢查 targetPortContainerCreating 卡住存儲(chǔ)掛載不成功、CNI 網(wǎng)絡(luò)插件異常describe 看事件常見(jiàn)是 volume 掛載超時(shí)或 sandbox 創(chuàng)建失敗Terminating 卡住Pod 內(nèi)有進(jìn)程不響應(yīng) SIGTERM、finalizer 未完成檢查容器主進(jìn)程是否處理了優(yōu)雅退出必要時(shí) kubectl delete --forceOOMKilled容器內(nèi)存超過(guò) limit 被 OOM Killer 殺調(diào)大內(nèi)存 limit 或優(yōu)化應(yīng)用內(nèi)存檢查 QoS 級(jí)別Unknown節(jié)點(diǎn)失聯(lián)kubelet 心跳中斷登錄節(jié)點(diǎn)查 kubelet 服務(wù)狀態(tài)檢查節(jié)點(diǎn)網(wǎng)絡(luò)和磁盤(pán)這些異常里我最想單獨(dú)說(shuō)一下 OOMKilled它是“重啟后容器可以起來(lái)跑一會(huì)兒又掛”的常見(jiàn)元兇如果沒(méi)看日志大概率會(huì)被誤解成“應(yīng)用代碼問(wèn)題”。用 kubectl describe pod 看容器狀態(tài)里的 Last State如果顯示 Reason: OOMKilled那就是內(nèi)存不夠不是業(yè)務(wù)代碼崩了。5.3 我實(shí)際踩過(guò)的坑和幾個(gè)現(xiàn)場(chǎng)經(jīng)驗(yàn)第一個(gè)坑是離線部署時(shí)鏡像拉不動(dòng)。內(nèi)網(wǎng)環(huán)境里 IfNotPresent 這個(gè)鏡像拉取策略本來(lái)沒(méi)問(wèn)題但如果你先手動(dòng) ctr -n k8s.io images import 導(dǎo)入了鏡像卻沒(méi)有把 tag 改成和 yaml 里完全一致kubelet 還是會(huì)去遠(yuǎn)端拉。這個(gè)問(wèn)題的排查時(shí)間往往特別長(zhǎng)因?yàn)橐磺锌雌饋?lái)都正常但 imagePullPolicy 不會(huì)自動(dòng)糾錯(cuò)。我的建議是離線環(huán)境一律顯式寫(xiě) imagePullPolicy: IfNotPresent并且部署前用 crictl images 核對(duì)節(jié)點(diǎn)上的鏡像 tag。第二個(gè)坑是探針的 initialDelaySeconds 設(shè)得太小。應(yīng)用啟動(dòng)需要 30 秒但 readinessProbe 的第 3 秒就開(kāi)始探測(cè)結(jié)果連續(xù)失敗 3 次Pod 被標(biāo)記未就緒流量就進(jìn)不來(lái)??雌饋?lái)像服務(wù)雪崩其實(shí)只是探針配置問(wèn)題。如果你部署的是個(gè)啟動(dòng)慢的 Java 應(yīng)用我建議配合 startupProbe 一起用把 startupProbe 的 failureThreshold 調(diào)大等它啟動(dòng)完畢后再接管后續(xù)探測(cè)。第三個(gè)坑是日志一直在刷但沒(méi)有關(guān)鍵信息。遇到 CrashLoopBackOff第一條命令我一般是 kubectl logs --previous --tail200如果還是沒(méi)有啟動(dòng)報(bào)錯(cuò)我會(huì)進(jìn)容器手動(dòng)執(zhí)行啟動(dòng)命令看進(jìn)程能否前臺(tái)運(yùn)行。很多基礎(chǔ)鏡像默認(rèn)通過(guò) shell 腳本啟動(dòng)shell 腳本里 cd 不存在的目錄或引用未注入的環(huán)境變量都會(huì)導(dǎo)致啟動(dòng)分鐘級(jí)崩潰而這種問(wèn)題看容器日志往往只是一個(gè)泛泛的退出碼非??简?yàn)?zāi)托摹_€有一個(gè)我覺(jué)得特別值得說(shuō)的經(jīng)驗(yàn)用 kubectl port-forward 臨時(shí)驗(yàn)證 Pod 內(nèi)部服務(wù)。比如我只想確認(rèn) nginx Pod 內(nèi)部能否正常訪問(wèn) PHP寫(xiě) Service 之前可以先 port-forward 到本地直接 curl 一下。這比構(gòu)建完整 Service 后再測(cè)試快很多也方便區(qū)分問(wèn)題出在 Pod 自身還是出在 Service 層。6. 從 Pod 到集群常用命令與學(xué)習(xí)路徑建議6.1 Pod 相關(guān)命令必須滾瓜爛熟學(xué) k8s 最忌諱是只會(huì)看 kubectl get pods完整排查一套流程下來(lái)以下命令基本缺一不可# 查看 Pod 列表和簡(jiǎn)要狀態(tài) kubectl get pods -o wide # 查看 Pod 詳細(xì)信息重點(diǎn)是 Events 和容器狀態(tài) kubectl describe pod pod-name # 實(shí)時(shí)查看 Pod 日志 kubectl logs -f pod-name # 查看崩潰容器的上一次日志 kubectl logs pod-name --previous # 進(jìn)入 Pod 內(nèi)部容器 kubectl exec -it pod-name -- /bin/sh # 本地端口轉(zhuǎn)發(fā)到 Pod kubectl port-forward pod/pod-name 8080:80 # 查看節(jié)點(diǎn)資源占用排查調(diào)度失敗 kubectl top nodes # 查看所有命名空間下的 Pod kubectl get pods -A用 kubectl get pods 時(shí)我習(xí)慣加 -o wide因?yàn)樗鼤?huì)顯示出 Pod IP 和所在的節(jié)點(diǎn)一眼就能看出調(diào)度分布是否合理。describe 和 top 是排查資源問(wèn)題的兩大法寶不要省。6.2 學(xué)習(xí)閉環(huán)Pod 是入口但不要停在入口很多人問(wèn)怎么快速上手 k8s我的建議是一致的先造一個(gè)小集群然后用 Pod 把你的第一個(gè)服務(wù)跑起來(lái)再把 Deployment、Service、Ingress 串起來(lái)打通“從 Pod 到對(duì)外訪問(wèn)”這條鏈路然后逐步加探針、加資源限制、加自動(dòng)擴(kuò)縮容。Pod 是這個(gè)閉環(huán)的核心起點(diǎn)但學(xué)習(xí)不應(yīng)止步于此。很多網(wǎng)上流傳的“k8s 經(jīng)典版”教程其實(shí)講的就是把單機(jī) Docker Compose 的應(yīng)用比如 LNMP搬進(jìn)集群的過(guò)程這確實(shí)是最適合實(shí)戰(zhàn)的教學(xué)路徑。你從 docker compose 升級(jí)到 k8s 時(shí)第一件要適應(yīng)的就是思維方式的變化Compose 里的 service 在 k8s 里可能是一個(gè) Deployment Service或者一個(gè) Pod 里的多容器Compose 里的 depends_on 在 k8s 里變成了探針配合優(yōu)雅退出Compose 里配置的端口映射在 k8s 里要讓位給 Service 和 Ingress。這些變化本質(zhì)上都發(fā)生在 Pod 這一抽象層上。如果是用 Rancher 這類圖形界面管理集群也是一樣的道理——界面上減少了你敲命令的頻率但 Pod 的狀態(tài)、事件、日志這些核心信息不會(huì)變理解底層機(jī)制才能正確操作那些按鈕。二進(jìn)制部署 k8s 則更鍛煉你對(duì)組件和網(wǎng)絡(luò)的理解至少你親手搭過(guò)一遍集群之后再遇到“Pod 無(wú)法跨節(jié)點(diǎn)通信”“kubelet 沒(méi)起來(lái)導(dǎo)致 Pod 一直 Pending”這類問(wèn)題定位速度會(huì)快得多。7. 最后的幾個(gè)小建議回到標(biāo)題“k8s 中的 Pod”寫(xiě)了這么多最后說(shuō)幾個(gè)實(shí)操層面的個(gè)人感悟。一個(gè)是我每次教學(xué)和排查時(shí)都會(huì)強(qiáng)調(diào)遇到問(wèn)題先 kubectl describe pod這比任何調(diào)試工具都值得依賴。因?yàn)?describe 里的 Events 記錄了 kubelet 對(duì) Pod 做過(guò)的每一個(gè)關(guān)鍵動(dòng)作和失敗原因很多時(shí)候問(wèn)題根因已經(jīng)寫(xiě)在里面只是你沒(méi)看。另一個(gè)是寫(xiě) yaml 時(shí)盡量把標(biāo)簽labels寫(xiě)規(guī)范。Pod 的標(biāo)簽是 Service、Deployment、監(jiān)控告警相互關(guān)聯(lián)的橋梁標(biāo)簽設(shè)計(jì)混亂會(huì)直接導(dǎo)致 Service 選不上 Pod、監(jiān)控抓不到目標(biāo)、滾動(dòng)更新誤傷其他工作負(fù)載。哪怕你用的是 Rancher 這種圖形化工具標(biāo)簽和 selector 的匹配邏輯也不會(huì)變。最后一點(diǎn)是千萬(wàn)別怕實(shí)驗(yàn)時(shí)把 Pod 搞掛。k8s 的聲明式設(shè)計(jì)讓你可以隨便刪除、重建、滾動(dòng)更新試錯(cuò)的成本很低。真正值得投入時(shí)間的不是記住每個(gè)命令參數(shù)而是理解 Pod 在整個(gè)調(diào)度、網(wǎng)絡(luò)、存儲(chǔ)模型里的位置——把這個(gè)抽象層吃透了后面學(xué) StatefulSet、DaemonSet、Operator、自定義控制器你會(huì)發(fā)現(xiàn)全都是同一個(gè)底層邏輯在延伸。我從 Docker 單機(jī)時(shí)代走到現(xiàn)在最深刻的體會(huì)就是Pod 不是容器之上多套了一個(gè)概念它是理解 k8s 一切編排能力的地基。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
日本啪啪网| 综合五月丁香六月婷婷| 五月天中文网| 一级AV片| 第四色婷婷丁香五月| aaaa久久| 可以免费观看的AV| 五月婷婷色播| 囯产精品久久欠久久久久久九大| 99re久热只有精品6在线直播| 人人爽网| 在线综合网| 人妻肉射免费观看| 日韩青青| 另类小说激情五月天| 成人国产欧美大片一区| 成人在线精品| 丁香五月五婷| 国产精品-91JQ就要激情网91JQ6.91JQ27.CASA:16888 | www.99成人视频| JlZZJlZZ8JlZZ亚洲熟女| 五月丁香婷婷色色| 日韩操人| 五月婷婷激情网| 亚洲激情精品| 婷婷色av| 天天狠狠夜夜狠狠2023| 五月丁香日逼| 美女伊人久久| 亚洲乱啪| 精品成人在线观看| 4438成人电影| 色爱爱综合网| 精品热青草| 久热这里只有| 色婷婷电影网| 五月天婷婷激情| 极品人妻VideOssS人妻| 狠狠色丁香| 伊人在线视频| 五月天综合色| 色婷婷9| 欧美 日韩 成人在线| 玖玖婷婷五月| 综合网色| 婷婷激情五月天桃花网| 丁香五月色情| 九九热只有精品| 亲子乱AV一区二区三区下载| 91视频一起草| 久操人妻| 99re思思| 99r这里| 五月丁香婷婷深深爱| 五月天婷婷综合| 婷婷99热| 成人综合网站| 99热欧美偷拍| 天天操天天操| 色色国产| 成人中文网| 97伦色婷婷| 伊人网欧美在线男人天堂五月丁香| 色另类五月天| 激情婷婷久久| 91窝窝| www久久99com| 欧美天堂久久| 99综合熟女| 婷婷五月天777| 五月丁香中文字幕| 风流少妇A片一区二区蜜桃| 日本丰满久久| 激情五月图| 狠狠操狠狠操AV| 五月婷婷导航| 综合五月天| 毛片九九九九九九| 99伊人性爱在线影院| 丁香五月综合久久八| 五月丁香婷婷中文| 五月丁香无码视频| 五月激情综合婷婷| 狠狠草在线观看| 亚洲国产精品二二三三区| 操逼视频一区| 噜噜吧天天爱| 91人人妻人人操| 噜噜噜噜在线| 香蕉久久av一区二区三区| 《诡秘之主》在线观看| 婷婷五月天Av| 99资源在线| 久久婷婷五月国产色综合激情| 丁香五月天婷婷久久| 综合在线色婷婷| 99精品视频在线观看| 超碰91人人操| 九九这里有精品| 婷婷色五月综合| 国产VA播放| 另类专区在线观看| 久婷婷婷| 色五月婷婷综合在线| 99re视频在线精品| 中文字幕在线日亚洲9| 五月婷婷色白丝| 色情成人五月天| 麻豆雪千夏| 9l视频自拍九色9l视频自拍九色9l社区| 五月天丁香花婷婷| 狠狠撸激情综合丁香五月天俺来啦| 蜜桃五月天| 久久 视频这里只有精总| 中文AⅤ大全| 欧美日本va| 97色在线观看视频| 免费无码毛片一区二区A片| 午夜做爱影院| 久久香蕉网| 妇激情基地| 五月婷婷五月天| 激情综合网,婷婷五月天| 51精品国自产在线| 99综合色| 色色影院黄大片| 激情五月天啪啪| 99色热视频| 亚州美女| 亭亭五月丁香五月天激情| 五月花激情网| 99在线精品视频| 99人人操人人操人人精| 日日夜夜天天| 人人播| www.99久久久| 在线成人网站| 综合久久综合| 丁香五月天婷婷久久综合| 99热午夜精品| 日本爆乳片手机在线播放| 五月丁香另类图片| 欧美日韩999| www.ywav| 激情五月天色色网| 丁香五月婷婷六月| 久久婷婷综合五月天| 五月天婷婷无码视频| 五月开心婷婷网| 操逼巨乳91| 日本丁香五月| 91久久精品无码一区二区三区| 婷婷丁香五月天亚洲| 激情丁香五月天综合| 日本久久精品18| 欧美、日韩、中文、制服、人妻| 婷婷福利影院| 中文字幕无码人妻少妇免费视频| 五月色色激情网| 67194成I人在线观看线路1| 爆乳熟女-区二区三区| 五月激情综合美女久久| 亚洲另类噜噜| 可以直接看的AV网站| 日本www五月婷婷| sesesesezonghe| 五月婷婷久久爱| 色婷婷综合影院| 国产无遮挡又黄又爽免费网站| 亚洲av另类在线观看| 久99精品视频| 99ri视频在线观看| 久久综合最新网址| 五月婷婷综合天天操| 内射人妻视频国内| 伊人大香蕉在线视频| 九九热精品视频| 欧美精品999| 99婷婷精品推荐在线视频| 亚洲成片在线观看| 天天综合五月| 色婷婷香蕉| 99精彩视频| 欧洲综合一区| 日韩另类| 亚洲天堂制| 97久人人| 亚洲熟妇无码乱子AV电影| 五月天婷婷无码| 玖玖婷婷视频| 五月香蕉综合| 婷香狠狠爱五月| 五月婷婷 婷婷五月 一区二区 久久久| 亚洲AV免费在线| 夜夜涩涩涩| 色情久久久| 91精品综合久久久久久五月丁香| 免费无码毛片一区二区A片| 天天射综合网天天插| www。五月天。com| 丁香六月久久| 国色天香成人网| 影音先锋男人女人| 青草网在线观看| 丁香五月婷婷六月| 欧美私人家庭影院| 婷婷五月香蕉| 中文字幕91,综合| 五月天婷婷色色网| 在线中文字幕av| 婷婷五月六| 综合网色| 丁香五月婷婷激情网| 久久婷视频| 六月丁香久久| 开心五月综合激情网| 日韩人妻无码一区二区| 超碰在线9| 日日噜噜夜夜狠狠久久丁香五月| 婷婷五月天影院| 色色婷婷综合网| 婷婷天堂综合| 人人综合久| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 99综合一区| 丁香五月123| 亚洲字幕AV一区二区三区四区| 国产欧美日韩综合精品一区二区| 色播五月婷婷综合| 日本久久99久久| 中国女人内射6XXXXX| 久久99精品久久久久久噜噜| 99热在线只有精品| 夜夜操天天干| 六月丁香社区| 色五狠狠| 婷婷五月骚厕所| 日日操夜夜爽白洁| 婷婷五月成人有| 婷婷射图| 99在线资源| 六月丁香成人| 狠狠久久婷婷| 波多野结衣AV无码Porn| 五月 激情视频| 婷婷五月天av小说| 婷婷久久婷婷色五月| 这里只有精品96| 综合激情啪啪| 婷婷色播色五月五色五月天色妇| 开心婷婷五月天综合| 国产精品视频| 玖玖在线视频福利| 99热久久这里只有精品| Www.婷婷五月| 五月激情六月宗合| 六月婷婷视频| 色婷婷影视| 丁香婷婷网| 91黄址| 欧美大道不卡| 九九热只有精品| 91久久99久久91熟女精品| 久久激情天堂| 99热8| 色婷婷丁香五月天在线视频| 婷婷激情五月综合基地| 久久A V无码视频| 亚洲婷婷成人五月天| 国产精品久久久丁香五月八戒视频| 五月天激情小说电影| 六月婷婷六月天天在线免费| 色婷婷香蕉丁丁网| 久久婷婷综合五月天| 久久99热免费最新版| 激情五月综合婷婷| 99精品在线| 91热爆在线| 99国产精品久久久久久久久久久| 九九精品系列| 五月停亭六月,六月停亭的英语| 久久婷婷综| 欧美va精品va老师va| 国产va在线视频| 特级片神马电影| 五月天色丁香| 桔色成人官方网站| 久狠狠| 伊人www22综合色| 岛国AV网| 色色丁香婷婷五月天| 欧美色色日韩| 五月婷婷五月丁香综合| 五月天综合色| 亚洲最大成人综合网720P| 五月丁香六月综合图| 操人精品| 五月丁香久久综合精品| 日本综合色色| 激情五月最新网址| 色综天天综合| 天天插天天爽| 亚洲精品国产A久久久久久| 碰人人97| 婷婷在线五月天观看| 久久免费视频62| 91碰在线| 日韩三级视频一区二区| 婷婷丁香五月天欧美| 九九久热| 河北真实伦对白精彩脏话 | 日本英国美国欧美亚洲国产精亚洲日韩精品在线观看 | 久久黄色免费视频| 五月丁香成人| 五月婷婷亚洲色图| 99色看| 中文字幕av久久爽一区| 99在线爽| 米奇影视五月天| 天天色宗合| 超碰自拍天堂| 激情综合六月| 欧美成人猛片AAAAAAA| 婷婷五月丁香花综合| 欧洲激情五月天| 欧美日韩123| 国产精女同一区二区三区久| 五月花成人网| 日日操夜夜爽| 五月色婷| 色婷婷久久综合| 一片AV片免费播放| 99爱精品视频| 91无码一起草| 亭亭五月天黑人2014| 丁香成人五月天| 97干视频在线| 美国十月色婷婷在线观看| 久久激丁香| 五月婷婷色播视频| 99热思思| 人人爱干人人爱草| 五月天色图| 婷婷久久五月丁香| 91九色国产| 丁香五月婷婷激情完整版| 色五月丁香一区在线| 老司机伊人| 99超级碰碰| 色色AV色色色东莞| 婷婷爱五月| 五月婷婷av| 91怕怕网| 97欧美在线| 综合五月丁香六月婷婷| 热99在线精品| 亚洲在线综合| 婷婷丁香五月天激情| 久久婷婷色| 99热精品在线播放| 26uuu国产色| 99热这里只有精品9| 2015好吊操| 五月丁香六月激情欧美综合| 立川无码av| 天天干天天干天天| 天天爽曰日爽| 五月天婷婷丁香人人操91| 操啊操av| 五月丁香综合成人社区| 激情综合网五月婷婷| www.henhenl| 成人短视频在线观看| 五月天久久婷婷| 99色婷婷视频| 五月色婷婷AV| 十区AV| 丁香六月激情四射| 伊人大香五月天| 国产精品美女久久久久AV超清| 天天摸天天舔天天爽| 国产毛片精品一区二区色欲黄A片| 丁香五月色播中文在线播放| 天天婬色综合| 九九99在线免费在线观看视频| 激情综合五月婷| 青青草视频免费观看| 国产另类综合| www久| 99热色精品| 五月涩涩网| 天天爱综合网| 人妻狠狠操| 欧美性生交XXXXX无码小说| 天天日,夜夜爽| 五月婷天堂视频| 五月婷婷深深爱| 色5月婷婷| 成人.在线日韩| 久久性爱视频网站| 色婷五月天亚洲| 97婷婷久久丁香| 26uuu精品一区二区| 天天弄天天爽| 小色小蛇伊人婷婷色香五月| 天天综合精品| 啪色综合| 开心婷婷五月中文字幕组| 五月天操逼网| 狠狠爱丁香婷| 激情五月婷| 开心婷婷丁香五月| 天天撸夜夜爽| 丁香婷婷激情综合五月激情| 综合www色| 五月婷婷久久综合| 成人免费高清在线播放| 天天操五月天| 婷婷97色| 五月丁香啪啪网| 天天综合中文| 色婷婷五月天激情综合| 久久伊人大香蕉| 亚洲一二三网| 白人荫道BBWBBB大荫道| 九九久久99| 吉澤明步Av一區二區| 热99精品视频在线观看| 91久久| 丁香五月色激情| 亚洲人妻av| 九九色播五月丁香| 婷婷五月六| 亚洲尤物在线| 色宗合,宗合网| 五月丁香亭亭操逼| 亚洲一区二区无遮挡A片| 亚洲中文字幕在线观看| 99热这里只有精品22| 婷婷五月天亚洲| 亚洲国产成人裸舞| 求可以看的AV网址| 俺五月| 淫荡家庭AV| 亚洲婷婷丁香| 99视频网址| 伊人丁香五月婷婷潮吹| 婷婷丁香精品视频在线观看| 色色色九九九五月婷婷| av高清无码| 狠狠综合网| 九九热精品视频| 色婷婷久久| www热久久yy9| 久久精品夜色噜噜亚洲a∨| 免费一区二区三区| 日本网站久久| 亚洲五月天色色| 婷婷五月丁香性爱| 久久国产高潮白浆免费观看99| 婷婷五月天性色| 国产乱人偷精品人妻A片| 五月天婷婷综合| 91久热| 人妻人人操| 91碰| 97久久久| 日韩av一区二区在线/日产精品久久久| 99久久99九九99九九九| 色色亚洲| 大操人妻| 九九色综合九九色| 久9视频| 色啪网| 国产99久久久国产精品免费看| 99久re热视频精品98| 激情六月天| 99无码精品| 日本熟妇乱妇熟色A片蜜桃| 99热在线播放| 国产精品成人网址| 久久性刺激| 亚洲99综合| 久99热| 亚洲激情图文小说| 日韩综合大黄| 日日夜夜干| 丁香婷婷性爱| 日韩黄在免| 丁香在线视频| 婷婷俺去也| 色五月激情五月| 开心五月婷婷伊人| 91偷拍视频| 国产色色网址网站| 色亚洲激情| 伊人干综合| 年轻的妺妺伦理HD中文| 去色色五月天| 开心婷婷五月激情网小说| 99成人精品| www.狠狠艹| 超碰操网| 99爱在线| 激情五月天婷婷直播| xxx日本东京热| 五月丁香婷婷综合久久| 天天色伊人| 日日夜夜狠狠操| 亚洲九九夜夜| 九九美女视频| 色婷婷在线视频久| 天天综合色丁香| 色色激情五月天| 九月丁香欧美综合| 五月婷婷综合色啪| 色99日韩| 变态另类色图 | 亚洲色欲AAAAAA| 97人人做| 久久五月天 91| 亚洲sesesese| 婷婷五月在线观看| 色婷婷六月| 综合久久影院| 天天久| 天天干天天干天天| 大香蕉久久久久| 五月婷婷视频28| 久热只有精品| 六月婷婷色综合| 色婷大香蕉| 99久热这里有精品| 婷婷久热| 九九www| 色 五月婷婷基地| 99精品在线播放| 99久久色| 天天爽天天摸| 激情五月婷婷| 亚洲色色在线| 婷婷伊人网| 亚洲无码成人| 丁香六月婷婷久久综合| 成人片在线免费看| 97婷婷五月| 国产亚洲精品久久久久久郑州| 國語久久婷| 日本丁香五月| 综合精品99| 天天舔天天摸天天透| 久久久久久久人妻| 日韩好吊操| 九九碰九九爱97| 九色 在线| 色色网站| 成人一区在线观看| 99热免费在线| 1024你懂的欧美曰韩| 射久久丁香五月| 午夜不卡久久精品无码免费| 色 丁香婷婷| 丁香五月深爱五月婷婷| 伊人综合网站| 五月天婷婷开心| 色婷婷成人做爰A片免费看网站| 午夜大香蕉| 伊人久久婷婷| 日本的α片xxxwww| 老师的粉嫩小又紧水又多A片视频 粉嫩AV久久一区二区三区 | 99黄色| 五月婷A V在线| 日韩精品色| 99热传媒| 中文av网| 99操久久| 久久五月综合| 99爱最新免费视频在线观看| 182.t午在线观看| 永久地址 色| 九色1区视频在线| 天天激情| 玖玖婷婷精品| 婷婷六月激情| 婷婷丁香视频| 狠狠久久婷婷| 玖玖综合色| 婷婷激情伍月网| 国产精品18久久久| 国产婷婷五月天| 激情超碰网| 久久婷婷五月综合色奶水99啪| 九九成人视频| 婷婷五月天视频小说| 五月天大香蕉av| 99热精品在线播放| 国产精典视频在线观看| 六月丁香啪啪啪| 天天射天天射一道本日本社区 | 九9九9无码| 激情五月天婷婷| 日本天天综合| 丁香激情五月少妇| 五月天另类视频| 亚洲国产精品成人va在线观看| 丁香五月婷婷综合激情哟哟哟| 亚洲婷婷欧美婷婷| 日韩砖区| 免费成片在线观看| 激情五月天视频| 99视频在线观看视频| 9久热在线精品| 激情六月综合| 综合激情五月天六月婷免费视频| 综合大香蕉| 天天日天天久久青青| 另类视频五月天| 26uuu视频欧美| 久久激情四射| 天天插天天日| 操一操干一干| 啪啪五月天啪啪| 久9热视频| 天天日天天干天天插天天射| 黄色片区子| 欧美综合激情| 亚洲色99| 天天干天天做| 久8色色| 丁香九月婷婷| 久热久操久热久草国产91| 开心五月婷婷激情| av在线观看网站| 亚洲综合婷婷五月天| 超碰人人射| 狠狠色噜噜色狠狠狠综合色| 精品一二三区久久AAA片| 天天日天天干天天操| 激情伍月 欧美| 91人操| 亚洲不卡123| 天天日天天插| 亚洲天天| 99啪| 婷婷六月色开 | 天天爽夜夜操| 大香蕉av在线| www.91在线观看| 五月天激情小说欧美激情| 丁香五月骚喷水视频| 色五月婷婷av| 大香线蕉伊人| 97色啪| 亚洲免费电影2| 婷婷五月丁香狠狠| 婷婷丁香18| 久热伊人9| 五月婷婷丁香色吧网| 亚洲综合五月天婷婷| 国产亚洲在线| 天天爽天天摸人妻综合网| 色五月天丁香| 五月天激情小说网| 激情五月天色播| 久热9| 天天色99| 亚洲激情av| 99热日韩| 五月丁香六月香香蕉| 男人視頻站| 日本高清不卡免费一区二区三区| 激情综合网激情五月俺也去| 亚洲乱码日产精品BD| 亚洲妇女熟BBW| 91精品电影18T| 99精品久久| 一级片sese片.COM| 欧美成人无码一区二区三区| 怡红院99| 天天干天天操天天上| 五月丁香婷婷激情在线| 九九九九九九九热| 婷婷六月视频| 五月天婷婷激情在线色图| 天天爽天天日天天舔| 色色哒五月婷婷六月丁香| 丁香六月无码播放| 亚洲第一综合| 久久三级视频| 少妇人妻人伦A片| 国产性爱在线| 9色免费网| 亚洲无码黄色| 婷婷综合网| 丁香五月狠狠在线观看| 亚洲精品性色| 久久久久久久人妻| 99热啪啪| 成人中文网| 日本A片一区| www.五月天婷婷| 久久99久久99精品免视看婷婷| 97色色色色色色色| 亚洲人妻一区二区 | 五月天婷婷激情在线色图| www.夜夜操| 丁香五月色情| 天天操人人干| 色婷婷狠狠| 无码激情AAAAA片-区区| 在线看av| 99色啊| 这里只有久久精99| 日韩啪啪网| 五月天色色无码| 懂色av蜜臀av粉嫩av永陈冠希| 久操大香蕉| 九九九九九九九热| 久婷婷婷| 9热超碰| 婷婷丁香97| 翔田千里无码| 婷婷久久丁香五月| 久99999热视频在线观看免费| 丁香五月婷婷色偷偷| 性爱AV天堂| 丁香狠狠色婷婷久久无码视频| 狼人久草| 伊人久热91网| 夜夜操夜夜爽| 久久久久网站| 天天操夜夜橾| 99爱精品| 超碰在线观看9| 这里只有免费的精品| 欧美影院婷婷| 色婷婷色和| 日韩欧美一区二区三区四区| 天天日 天天草| 九八Av| 五月婷视频久久| 停停五月丁香| 综合天堂AV久久久久久久| 婷婷五月天久久| 99精色| 麻豆AV一区二区三区| 97碰| 日本色五月婷婷| 日本色色影片| 激情久久四色| 国产成人综合网| 亚洲一级AV在线免费播放| 亚洲综合婷婷| 婷婷五月影院| 五月天啪啪| 久久看婷婷| 久久aaaaa| 丁香六月天之亚州热女 | 狠狠狠狠狠狠| 91综合色噜噜| 五月婷婷人妻| 久久六月婷婷| 婷婷中文字幕欧美| 极品 少妇 内射| 亚洲操逼网| 国产激情视频在线观看| 成人av在线网站| 五月婷久久久| 五月婷在线| 97人妻人人| 婷婷五月天中文字幕| 99久久婷婷国产综合精品电影| 99热国产这里只有| 五月天综合在线| 99re熱| 五月色网| 亚洲精品欧洲精品| 亚洲无码色| 五月婷婷天天色| 国产精产国品一二三在观看| 亚洲激情99| 久久人妻精品| 激情伊人五月婷婷久久| 男女啪啪做爰高潮无遮挡| 婷婷五月天激情综合| 亚洲视频一区| 亚洲AAAA网| 丁香五月婷婷色综合| 久久婷婷欧美| 天天肏天天舔AV| 51avj视频大全| 久草嫩草在线观看| www.色婷婷.com| 超级黄色片| 亭亭色色五月天| 婷婷爱在线观看| 99热成人| 久久久婷婷色五月资源网| 天天久| 大香蕉婷婷久久| 色色A| 久久视频婷婷视频| 久cao香蕉影院| 婷婷香五月天| 久久综合干| 婷婷伊人綜合中文字幕| 亚洲另类久久| 伊人三级激情| 久久国产色| 五月婷婷之六月丁香| 婷婷五月天亚洲综合网| 91九色国产熟女| 这里都是精品99| 男人大jjc女人免费视频| 79精品视频在线观看,| 曰曰久久| 天堂无码人妻精品AV一区| 五月激情婷婷开心| AV在线大香蕉| 九九九九精品精| 九九热在线精品视频| 色噜噜狠狠色综合日日| 玩熟女五十AV一二三区| 妇激情基地| 激情都市另类| 综合久久久| 激情小说五月天中文字幕| 久婷视频| 综合色播| 色五月中文网| 妻久久久久| 99丁香五月婷婷在线| 这里只有精品久久| 99在热线免费视频| 激情网五夜婷婷| 99综合成人视频在线观看| 99精品在这里| 色五月天成人| 狠狠操天天操综合| 成人综合视频在线| 精品久久久中文字幕大豆网推荐理由| 色综合九九| 99热国产| 国产无人区大片| 开心激情久久久久久久| 99色干| 久久久日韩特色特黄AAAA| av九九| 婷婷丁香十月| www.伊人天堂偷偷婷婷| 亚洲在线资源| 国产亚洲成人综合| 国产成人精品亚洲线观看| 超碰93在线观看| 人妻精品久久久久久久| 婷婷五月天最新综合你懂的| 美国不卡视频| www.婷婷com| 九九热九九| 九九热99免费视频| 98永久精品| 激情五月婷婷综合网| 五月天色不卡| 九色自拍| 99这里有精品视频| 天天天摸夜夜夜玩| 五月的婷婷六月丁香| 人妻操逼视频。| 成人AV中文字幕| 婷婷五月精品| 国产AV国片偷人妻麻豆| 色婷婷六月天| 天天天天操| 激情五月,激情综合网| 天天噜天天爱| 婷婷五月黄色激情在线| 五月天伊人综合| 色婷成人狠干| 亚洲欧洲小视频9| 欧美怡红院黄站| 国产日韩欧美| 久热这里只有精品6| 久久婷婷网| www.婷婷,com| 综合激情站| 欧美色色色色色色色| 婷婷五月情色| 激情综合色五月六月婷婷| 色999五月色| AAA久久久| 激情久久肏屄视频| 99色精品| 九九99九九99| 色99热| 久久 婷婷 五月天| 天天久久狠狠色综合| 在线观看亚洲视频影院| 9精品视频在线观看| 色婷婷综合在线| 久久一品区| 婷婷丁香五月天激情四射| 无码少妇高潮喷水A片免费| 极品人妻XXXXOOOO| 欧美电影在线播放| 超碰在线网站9| 狠狠色噜噜色狠狠狠综合久久成人波| 99精品爱| 狠狠干综合网| 久久婷婷综合五月趴| 亚洲欧美国产高清vA在线播放| 天堂草在线观| 五月天亚洲综合网| 91色逼| 久草A片| 激情综合五月天| 香蕉久久国产AV一区二区| 偷偷与邻居做爰完整视频| 91在线操逼视频| av在线免费播放观看| 色五月婷婷影视| 免费人人操| 99在线精品观看99| 俺来也综合网精品一区| 五月丁香在线视频观看| 99久久思思| 激情网婷婷婷| www.maotanji.com| 丁香婷婷色五月| 欧美三级巜人妻互换| ou洲色吧| 亚洲色图45p| 99热 免费| 99亚洲大片精品永久在线观看 | 琪琪色网址| 97超级操操| 丁香色五月直播| 五月色丁香成人| 99爱视频在线| 亚洲综合色网| 色色色色色色色色色影院| 丁香久久激情俄| 超碰日日操| 五月丁香少妇网| 99视频在线观看网址| 色综合久久天天综合网| 欧美日本免费一道免费视频| 免费观看高清无码| 欧美A级网站| 五月天六月婷婷电影| 无码动漫av| 秋霞免费视频| W色综合| 色婷婷免费观看| 天天拍久久| 婷婷色在线视频| 国外亚洲成AV人片在线观看| 超碰97免费在线| 天天日夜夜高潮| 五月天四色房丁香亭亭| 久久怕怕视频| www.久久9| 欧洲日韩一区二区三区| 久久九精品| 成人五月丁香花| 黑人无码一区| 深爱婷婷色| 久9热在线视频| 婷婷最新地址| 91丨九色丨大屁股| 亚洲色爱综合| 狠狠操狠狠| 久久激情五月天| 四月婷婷丁香| 996er热| 婷婷五月色色| 9999热这里只有精品| 天天做夜夜爽| 激情久久丁香| 天天色色婷婷| 五月天激情四射| www99xxxx五月丁| 五月色综合| 婷婷五月天欧美| 99热免费| 91色涩| 99在线观看精品视频| 成人五月丁香花| 性韩日色婷婷五月天激情啪啪XXX| 第五色婷婷| 丁香婷婷综合影院| 欧美丁香六月在线观看视频| 六月丁香激情网| 情一色一乱一伦一91A| 激情内射p| 亚州欧美黄色电影| 99视频久久免费视频| 九九综合色| 九色自拍| 婷婷激情五月| 久re热视频| 久久久免费精彩视频| 五月天婷婷青青草| 婷婷五月天激情综合深爱| 深爱激情综合| 丁香五月性爱爱五月| 婷婷激情五月天激情| 天天日天天肏天天奸| 亚洲色欲欧美一区二区三区| 五月色综合| 色婷婷五月天中文字幕| 超碰碰碰碰| 香蕉综合网| 第四色激情网| 婷婷丁香五月亚洲欧美| 思思热这里只有精品| 丁香五月天网站| www.婷婷.com| 99超级碰免费视频| 久久这里有精品| bbwcuckold精品熟妇| 欧美色婷婷| 丁香五月天色综合| 极品少妇高潮啪啪AV无码| 激情网战码亚洲A| 久热无码| 天天干肏夜夜| 精品久久久中文字幕大豆网推荐理由| 久久婷婷婷婷伊人| www久久久久久久| 99热在线这里| 综合激情专区| 九九久久99精品免费观看www| www91精品| 九九色色网| 在线播放成人| 99热精品观看| 九九碰九九爱97| 欧美日韩99| 婷婷四色五月| 情色五月天 网站| 99热这里只有精品3| 92国产福利| 婷婷五月丁香基地| 色A网| 97午夜一区二区| 婷婷六月综合激情| 91精品91久久久中77777久久玖玖九九| 久久九九爽| 婷婷五月蜜桃成人桃色丁香| 精品人妻伦九区久久AAA片| www五月天激情com| 黄色毛片精品| 色婷婷成人网| 五月综合婷婷网| 99噜噜噜在线播放| 久久九九视频| 久久激情视频99| 99视频在线9| 色色99| 色五月丁香五月激情五月激情| 五月婷婷玖玖综合玖玖爱| 日本在线va| 人人人操Av| 五月色亭丁香| 久久久激情视频| 国产精品蜜臀99| 99热国内精品| 97精品人人A片免费看| 婷婷五月色天| 99re在线观看视频| 丁香五月天激情四射网络不好| 久久亚洲激情五码| 五月天 另类图片| 久久性刺激| 蜜乳av一级av| www.色婷婷| 综合性视频99| 婷婷99中文字幕| 天天日日| 五月丁香香蕉| 狠狠五月天激情| 丁香婷婷网| 大香蕉色婷婷伊人在线| 五月婷婷偷拍| 国产色99| 怕怕視頻| 毛片九九九九九九| 大地资源色婷婷视频在线| 色色色综合色| 婷婷天天舔| 99re免费精品视频| 人人肏逼视频在线一区二区| 99视频在线| 精品久久艹| 99色视| 日本黄色在线观看| 色爽干| 色情五月丁香| 婷婷五月天小说| 东北婷婷五月天| 噜噜色五月| 婷婷激情人妻| 成人做爰高潮A片免费视频| 激情伊人| 五月丁香另类图片| 久久久五月婷婷| 激情综合五月激情17| 九九热婷婷| 色欲色香综合网站| 日日影院 | 99在线精品观看99| 噜噜干日本| 五月丁香六月情亚洲| 婷婷的五月天另类视频| 成人 视频免费观看网站| 色月丁| 九九99精品免费播放| 激情五月综合亚洲另类| 大香蕉520| 99色色网| 丁香五月亚综合图片| 丁香美女主播视频在线观看| 丁香久久五月天视频在线观看| 91操在线视频| 超碰在线视屏| 婷婷欧美激情综合| 在线91日韩| 丁香花综合永久入口| 激情五月天久久| 五月婷婷很很色| 久久精品99国产精品日本| 丁香五月影院| www.99色| 操逼三区| 97视频久久| 99精品久久久久久久婷婷| 99玖玖免费视频| h在线看免费版在线看| 丁香五月人妻| 91人操人人人操人| 亚洲婷婷激情五月天| 5月婷婷六月丁香| 天天日夜夜操五月| 欧美婷婷五月天综合| 色丁香久综合在线久综合在线观看| 97涩涩丁香五月天| www狠狠| 激情综合五月色丁香婷婷 | 99热这里全都是精品| 久热九九| www.久热| 777精品久无码人妻蜜桃| 婷婷狠狠干| 激情五月黄色| 大鸡巴伊人网| 婷婷内射视频在线| 激情爱爱网站| 五月伊人网| 99er国产| 婷婷色Av| 日日夜夜婷婷| 这里只有精品视频在线| 激情性爱五月天| 天天插综合| 亚洲日本韩国| 色婷婷五月丁香色| 丁香五月婷婷激情四射| 99A级片| AV在线观看网站| 熟女乱论网| 青草热视频这里只有精品| 丁香五月Av| 超碰人人超碰| 色婷婷五月天| 99精品久久久久久| 99色精品| 任你艹| 激情六月丁香综合| 久久久精品人妻录| 大香蕉久久久| 五月丁香亭亭| 三级毛片视频| 色婷婷AV在线| 婷婷丁香五月天综合网| 五月天六月婷婷电影| 五月婷婷日| 国产精品国产成人国产三级| 五月天色丁香| 亚洲V国产V欧美V久久久久久| 久久综合最新网址| 欧美婷婷丁香五月社区| 人妻操逼| 五月丁香六月婷婷综合网站| 操91| 免费观看日韩成人av| 亚洲愉拍99热成人精品| 日本色婷婷五月天成人电影| 久久99热这里只有精品| 欧美婷婷综合| 亚洲一区二区色图-亚洲精品国产精品乱码-成人AV | 五月香蕉婷婷| 天天激情欧美美女| 婷婷性爱影院| 99精品成人无码A片观看金桔| 色亭亭九月| 五月婷在线观看| 婷婷丁香人妻久久在线观看| 天天操天天插| 五月丁香婷婷综合| 在线播放成人| a色色色色色| 久久这里只| 亚洲情欲| 婷婷 丁香 久久| 六月婷婷七月丁香| 色婷婷A| 久久91久久精品久久| 丁香九月综合| 婷婷五月精品中文字幕| 搡BBBB搡BBB搡18| 婷婷99中文字幕| 五月天激情无码| 婷婷久久大香蕉| 一起草av在线观看| 久婷婷久草| 另类小说五月天| 99热主页日本| 天天插AV丝袜中| 99无码视频| 婷婷久久综| 成人五月天丁香| 天天色天天色天天色天天色天天色| 熟女激情五月天| 97人妻碰碰碰碰碰久久久久久| 久久这里精彩免费在线观看| 五月丁香婷婷五月| 久久XX日本综合| 亚洲精品网站色视频| 九九热视频在线观看| 9色天堂| 玖操97| 99热免| 久久大香蕉伊人| 丁香五月天BBw| 色伦专区97中文字幕| 五月婷六月综合在线观看| 婷婷五月天Av| 狠狠色九月| 久久99激情丁香婷婷小说网| 色婷婷激情Av久久久| www.91.com处女在线直播| 久久婷婷网| 久99久精品| 97欧美在线| 成人AV中文字幕| 亚洲视频色婷婷| 涩 五月 婷婷 狠狠| 夜夜爽天天干| 97爱综合| 婷婷五月天黄色小说| 91色综合网站在线| 丁香六月天之亚州热女| 成人五月天。COM| 人人妻久久妻| 亚洲精品九九| 色 色 色综合com|