免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

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

K8S實(shí)戰(zhàn):從Zookeeper、MySQL到Dubbo微服務(wù)的容器化部署全解析

K8S實(shí)戰(zhàn):從Zookeeper、MySQL到Dubbo微服務(wù)的容器化部署全解析 前陣子幫某集團(tuán)客戶做容器化改造一個(gè)環(huán)境里同時(shí)上了 Zookeeper、Redis Cluster、MySQL 主從、Nginx 加 Tomcat 的 Java 應(yīng)用、LNMP 一套、Dubbo 微服務(wù)還有 Ingress 統(tǒng)一網(wǎng)關(guān)整套搬進(jìn) Kubernetes 之后踩了不少坑也沉淀了不少經(jīng)驗(yàn)。這套組合基本上覆蓋了日常工作中絕大部分的 K8S 落地場(chǎng)景今天把整個(gè)實(shí)戰(zhàn)過程梳理一遍從有狀態(tài)應(yīng)用部署到無狀態(tài)應(yīng)用編排再到流量入口管理一次講透。1. 先把應(yīng)用按有狀態(tài)和無狀態(tài)攤開部署順序和策略的底層邏輯很多人拿到一堆應(yīng)用就往 K8S 里塞結(jié)果發(fā)現(xiàn) MySQL 數(shù)據(jù)丟了、Zookeeper 集群起不來、Dubbo 服務(wù)注冊(cè)一堆亂碼最后回頭罵 K8S 不好用。其實(shí)問題不在于 K8S而在于沒有先做應(yīng)用分類。1.1 為什么這套方案里 Zookeeper 和 MySQL 必須單獨(dú)對(duì)待無狀態(tài)應(yīng)用比如 Nginx、Tomcat、純 Java 后端特點(diǎn)是隨便殺、隨便擴(kuò)實(shí)例之間不需要互相認(rèn)識(shí)數(shù)據(jù)不落在本地。這類應(yīng)用用 Deployment 加 HPA 就能搞定。但有狀態(tài)應(yīng)用完全反過來——Zookeeper 需要維護(hù)節(jié)點(diǎn)之間的選舉關(guān)系MySQL 需要保證數(shù)據(jù)不丟Redis Cluster 需要 Gossip 通信和槽位管理它們都要求穩(wěn)定的身份和穩(wěn)定的存儲(chǔ)。所以我拿到這套需求后的第一件事就是把應(yīng)用分成兩個(gè)池子。第一個(gè)池子是無狀態(tài)的Nginx、Tomcat、Java 應(yīng)用、LNMP 里的 PHP 和 Nginx。第二個(gè)池子是有狀態(tài)的Zookeeper、Redis、MySQL以及 Dubbo 微服務(wù)里的注冊(cè)中心一般也掛在 Zookeeper 上。池子分清楚了后續(xù)的 StatefulSet、Headless Service、PVC 這些概念才派得上用場(chǎng)。1.2 實(shí)戰(zhàn)里推薦的整體部署順序先底座后業(yè)務(wù)再入口我的部署順序是固定的這套路徑跑通了無數(shù)次。先部署 Zookeeper 和 MySQL 這類底座型中間件因?yàn)樗鼈儠?huì)被上層應(yīng)用依賴再部署 Redis 緩存層接著部署無狀態(tài)的 Nginx 加 Tomcat 和 Java 業(yè)務(wù)應(yīng)用然后處理 LNMP 組合和 Dubbo 微服務(wù)最后統(tǒng)一配置 Ingress 把流量收口。這個(gè)順序不是隨便定的。如果先部署應(yīng)用后部署 Zookeeper應(yīng)用啟動(dòng)時(shí)找不到注冊(cè)中心Dubbo 接口暴露失敗又要重啟應(yīng)用純屬浪費(fèi)排障時(shí)間。K8S 雖然有 InitContainer 可以做依賴等待但能用正確的部署順序解決的問題沒必要引入額外的復(fù)雜度。2. Zookeeper 集群上 K8SHeadless Service 與選舉機(jī)制的那些坑Zookeeper 是這套環(huán)境里第一個(gè)要落地的有狀態(tài)應(yīng)用。它要解決的核心問題是集群內(nèi)每個(gè)節(jié)點(diǎn)必須知道彼此的存在并且節(jié)點(diǎn)的網(wǎng)絡(luò)身份不能隨著 Pod 重啟而變化。2.1 為什么普通 Service 滿足不了 Zookeeper 的集群發(fā)現(xiàn)先看一個(gè)反例。我見過有人用普通 Service 給 Zookeeper 做負(fù)載均衡結(jié)果集群永遠(yuǎn)選舉不出 Leader。原因在于 Zookeeper 的節(jié)點(diǎn)之間需要直接通過 IP 或主機(jī)名通信而普通 Service 會(huì)把請(qǐng)求隨機(jī)分發(fā)到任意一個(gè)后端 Pod 上客戶端拿到的地址是虛擬的 ClusterIP節(jié)點(diǎn)之間無法建立真實(shí)的 TCP 連接選舉直接失敗。正確的做法是給 StatefulSet 配一個(gè) Headless Service也就是 ClusterIP 為 None 的 Service。這種 Service 不做負(fù)載均衡DNS 解析直接返回所有 Pod 的真實(shí) IP。配合 StatefulSet 的命名規(guī)則每個(gè) Pod 會(huì)得到一個(gè)穩(wěn)定的網(wǎng)絡(luò)標(biāo)識(shí)比如zk-0.zk-headless.namespace.svc.cluster.local。這樣 Zookeeper 配置文件里的server.1zk-0.zk-headless...這類條目就能真正生效。2.2 配置 Zookeeper 集群時(shí)最容易漏掉的三個(gè)參數(shù)第一個(gè)是POD_IP環(huán)境變量。Zookeeper 的啟動(dòng)腳本需要知道自己當(dāng)前 Pod 的 IP然后寫入配置文件的quorumListenOnAllIPs。我用的是 downward API 把status.podIP注入到環(huán)境變量里啟動(dòng)時(shí)再通過腳本拼進(jìn)配置文件。第二個(gè)是ZOO_MY_ID這個(gè)值直接對(duì)應(yīng) StatefulSet 的序號(hào)必須是穩(wěn)定的不能隨機(jī)生成。第三個(gè)很多人忽略——JVMFLAGS里的堆內(nèi)存設(shè)置。Zookeeper 默認(rèn)堆內(nèi)存只有 256M在容器里跑線上集群明顯不夠。我一般設(shè)置為 1G 到 2G通過環(huán)境變量傳進(jìn)去。順便提一嘴Zookeeper 是 CPU 密集型應(yīng)用不建議給它設(shè)置 CPU Limit 限制得太死否則 GC 線程調(diào)度不過來選舉超時(shí)的情況會(huì)頻繁出現(xiàn)。2.3 實(shí)測(cè)中遇到的 Zookeeper 集群腦裂問題與解決思路我有一次在做滾動(dòng)升級(jí)時(shí)把三個(gè) Zookeeper 節(jié)點(diǎn)同時(shí)重啟結(jié)果集群出現(xiàn)了短暫的腦裂現(xiàn)象。兩個(gè)節(jié)點(diǎn)各自主導(dǎo)了一個(gè)偽集群客戶端連接全部報(bào)錯(cuò)。排查下來發(fā)現(xiàn)是 StatefulSet 的podManagementPolicy默認(rèn)值是OrderedReady理論上會(huì)逐個(gè)更新節(jié)點(diǎn)但我在配置清單里漏掉了這個(gè)字段。如果對(duì)可用性要求極高可以設(shè)置podManagementPolicy: Parallel配合 ReadinessProbe。但一般情況下建議保持默認(rèn)的 OrderedReady 策略讓 K8S 按照節(jié)點(diǎn)順序逐個(gè)更新避免所有節(jié)點(diǎn)同時(shí)處于不可用狀態(tài)。另外務(wù)必給每個(gè) Zookeeper Pod 配置 PreStop 鉤子在 Pod 終止前主動(dòng)執(zhí)行zkServer.sh stop讓節(jié)點(diǎn)優(yōu)雅退出否則會(huì)出現(xiàn)集群重選舉業(yè)務(wù)側(cè)感知到抖動(dòng)。3. MySQL 主從與 Redis Cluster持久化存儲(chǔ)和故障恢復(fù)的實(shí)戰(zhàn)要訣中間件里 MySQL 和 Redis 是最考驗(yàn)持久化設(shè)計(jì)的兩兄弟。MySQL 不能丟數(shù)據(jù)Redis 要保證分片和副本的高可用。這兩類應(yīng)用在 K8S 里的部署方式和踩坑路徑完全不同。3.1 MySQL 主從復(fù)制在 K8S 里的存儲(chǔ)方案選型先說存儲(chǔ)。MySQL 的數(shù)據(jù)文件必須存放在 PV 里我這次用的是 NFS 動(dòng)態(tài)供給配合 StorageClass 實(shí)現(xiàn) PVC 自動(dòng)創(chuàng)建。如果條件允許生產(chǎn)環(huán)境更推薦用云廠商的塊存儲(chǔ)性能比 NFS 好很多。但 NFS 有個(gè)致命問題需要提前規(guī)避——它不支持文件鎖如果 MySQL 配置了skip-name-resolve之外還用了某些依賴鎖的特性可能存在隱患。穩(wěn)妥的做法是把 MySQL 數(shù)據(jù)目錄掛載到 PVbinlog 也放在同一份存儲(chǔ)里。StorageClass 的配置清單我會(huì)限制reclaimPolicy: Retain防止 PVC 刪除時(shí) PV 連帶銷毀。這個(gè)細(xì)節(jié)非常關(guān)鍵——一旦設(shè)置成 Delete節(jié)點(diǎn)宕機(jī)后重建 Pod 時(shí)舊數(shù)據(jù)可能直接被回收我見過有人因此在測(cè)試環(huán)境里把數(shù)據(jù)庫搞丟過。3.2 主從復(fù)制初始化的一次完整排障鏈路用 Helm 或手工編排 MySQL 主從時(shí)最常見的問題是從庫一直停在Waiting for master to send event狀態(tài)。我當(dāng)時(shí)部署完成后發(fā)現(xiàn)從庫的Seconds_Behind_Master一直是 NULL主庫狀態(tài)正常但 binlog 沒有傳過來。排查鏈路是這樣的先看從庫的SHOW SLAVE STATUS發(fā)現(xiàn)Last_IO_Errno是 1236說明從庫請(qǐng)求的 binlog 位置在主庫已經(jīng)被清理掉了。原因是主庫的expire_logs_days設(shè)置太短而從庫因?yàn)榫W(wǎng)絡(luò)延遲或初始化時(shí)間過長(zhǎng)追不上主庫的 binlog 清理進(jìn)度。解決辦法是先停止從庫的復(fù)制線程在主庫上用mysqldump重新導(dǎo)一份全量備份記錄好MASTER_LOG_FILE和MASTER_LOG_POS再從那個(gè)位置繼續(xù)復(fù)制。整套操作下來從庫才真正追平。這次經(jīng)驗(yàn)告訴我MySQL 主從初始化不能無腦相信CHANGE MASTER TO配一次就行必須確認(rèn)全量備份和 binlog 點(diǎn)位是對(duì)齊的。如果依賴的是mysqldump --master-data2需要嚴(yán)查導(dǎo)出的二進(jìn)制日志位置坐標(biāo)。3.3 Redis Cluster 的 Gossip 通信與 Kubernetes 網(wǎng)絡(luò)模型適配Redis Cluster 在 K8S 里部署比單機(jī) Redis 復(fù)雜得多。每個(gè) Redis 節(jié)點(diǎn)都要監(jiān)聽兩個(gè)端口一個(gè)是客戶端通信端口 6379另一個(gè)是集群總線端口 16379用于節(jié)點(diǎn)間 Gossip 通信。K8S 網(wǎng)絡(luò)模型默認(rèn)情況下 Pod 之間的通信是通的但要小心 NetworkPolicy 把 16379 端口擋住否則集群節(jié)點(diǎn)之間無法交換心跳槽位遷移和故障轉(zhuǎn)移全部失效。我這次的配置是給 Redis Cluster 單獨(dú)建了一個(gè)命名空間然后放行該命名空間內(nèi)所有 Pod 之間的 6379 和 16379 端口。不要在默認(rèn)命名空間里和業(yè)務(wù)應(yīng)用混部否則網(wǎng)絡(luò)策略寫起來又長(zhǎng)又容易出錯(cuò)。存儲(chǔ)方面用的是 local 卷或者云盤保證每個(gè)節(jié)點(diǎn)都有獨(dú)立的持久化路徑。3.4 Redis 故障轉(zhuǎn)移時(shí)的一個(gè)高頻坑DNS 緩存導(dǎo)致的路由錯(cuò)亂Redis Cluster 客戶端在連接節(jié)點(diǎn)時(shí)會(huì)通過 Cluster 節(jié)點(diǎn)返回的 MOVED 重定向指令找到正確的分片。但在 K8S 環(huán)境里如果客戶端使用了 Pod 的 IP 直連那么節(jié)點(diǎn)重啟或者擴(kuò)縮容后客戶端緩存里的節(jié)點(diǎn)信息就是過期的導(dǎo)致大量CLUSTERDOWN報(bào)錯(cuò)。更穩(wěn)的方案是給 Redis Cluster 的每個(gè)節(jié)點(diǎn)用 StatefulSet 加 Headless Service客戶端通過 DNS 域名來連接。這樣節(jié)點(diǎn)重啟后 IP 變了域名不變客戶端可以正常重連。我在實(shí)際項(xiàng)目中就是讓 Java 應(yīng)用配置的 Redis 地址從 IP 改成域名然后用 Redisson 或 Lettuce 的集群模式問題一下子少了很多。4. Nginx 負(fù)載 Tomcat 集群與 Java 應(yīng)用部署鏡像分層、探針與優(yōu)雅上下線接下來是純無狀態(tài)應(yīng)用的部署。Java 應(yīng)用加 Nginx 入口是這套方案里最常見的組合。Nginx 負(fù)責(zé)流量分發(fā)和靜態(tài)資源處理Tomcat 跑 Java Web 服務(wù)。4.1 Nginx 鏡像里的 Tomcat 后端地址如何動(dòng)態(tài)注入Nginx 的 upstream 配置在容器化環(huán)境里不能寫死 IP。我采用的是環(huán)境變量加模板渲染的方式。鏡像里的nginx.conf是模板文件啟動(dòng)腳本用envsubst把${TOMCAT_UPSTREAM}替換為真實(shí)的 Service 地址。比如 Tomcat 的 Service 叫tomcat-app命名空間是prod那 upstream 就是tomcat-app.prod.svc.cluster.local:8080。這種方式既避免了配置的硬編碼也方便后續(xù)通過修改環(huán)境變量來切換上下游。需要特別留意的是envsubst默認(rèn)會(huì)替換所有${...}格式的內(nèi)容如果 nginx.conf 里有正則表達(dá)式包含$字符會(huì)被這工具誤傷。我遇到過$host被替換成空字符串的問題最后把模板文件里的非法變量統(tǒng)一轉(zhuǎn)義或者改用 Python 腳本做更精確的替換。4.2 Java 應(yīng)用容器化時(shí)的堆內(nèi)存配置和分層鏡像優(yōu)化Java 應(yīng)用在容器里的第一道坎是 JVM 參數(shù)。老版本的 JVM 無法自動(dòng)識(shí)別容器 CPU 和內(nèi)存限制會(huì)把堆內(nèi)存設(shè)置成宿主機(jī)內(nèi)存大小導(dǎo)致 Pod 直接被 OOM Killer 殺掉。我這次用的 JDK 版本是 11 以上默認(rèn)開啟了容器感知。如果還在用 JDK 8務(wù)必手工加上-XX:MaxRAMPercentage75.0和-XX:InitialRAMPercentage50.0讓 JVM 根據(jù)容器內(nèi)存限制自動(dòng)分配。鏡像大小方面我的做法是采用多階段構(gòu)建?;A(chǔ)鏡像用精簡(jiǎn)版 JDK然后在構(gòu)建階段編譯打包運(yùn)行階段只拷貝最終的 JAR 文件和一個(gè)最小的基礎(chǔ)鏡像。實(shí)測(cè)下來鏡像體積從 800 多 MB 縮小到 250 MB 左右推送到私有倉庫的速度快了不少拉鏡像占用的節(jié)點(diǎn)磁盤也少了。4.3 就緒探針和優(yōu)雅停機(jī)配置的完整參數(shù)Java 應(yīng)用啟動(dòng)比較慢如果 ReadinessProbe 的initialDelaySeconds設(shè)置得太短Pod 還沒起來就被 K8S 判定為不健康然后被重啟形成死循環(huán)。我一般設(shè)置為 20 秒配合periodSeconds: 5給應(yīng)用留足啟動(dòng)時(shí)間。LivenessProbe 的判定閾值要放寬一點(diǎn)因?yàn)?JVM 在 GC 停頓或頻繁 Full GC 時(shí)可能幾秒鐘沒有響應(yīng)容易誤殺。優(yōu)雅停機(jī)這里我用的參數(shù)是terminationGracePeriodSeconds: 60并在 Pod 里配置了 PreStop 鉤子執(zhí)行sleep 5配合應(yīng)用本身的優(yōu)雅停機(jī)機(jī)制。這樣在發(fā)布滾動(dòng)更新時(shí)舊 Pod 先停止接收新流量再等待已經(jīng)進(jìn)來的請(qǐng)求處理完畢最后才真正退出容器。實(shí)測(cè)下來線上請(qǐng)求的失敗率從 5% 降到了 0。5. LNMP 組合上 K8S 的拆分思路與 Dubbo 微服務(wù)的注冊(cè)發(fā)現(xiàn)LNMP 和微服務(wù)這兩塊是這套環(huán)境里架構(gòu)最復(fù)雜的部分。LNMP 涉及三個(gè)組件的協(xié)作Dubbo 則是典型的注冊(cè)中心加多服務(wù)調(diào)用鏈兩者在 K8S 上的處理方式差異很大。5.1 LNMP 組合里 Nginx、PHP-FPM、MySQL 的容器協(xié)作方式LNMP 在傳統(tǒng)服務(wù)器上是一個(gè)單體環(huán)境但容器化之后必須拆開。我的拆分方式是Nginx 容器負(fù)責(zé)靜態(tài)資源和反向代理PHP-FPM 容器負(fù)責(zé)執(zhí)行 PHP 代碼MySQL 獨(dú)立部署。Nginx 和 PHP-FPM 之間通過 FastCGI 協(xié)議通信Nginx 的fastcgi_pass配置指向 PHP-FPM 的 Service 地址。這中間有一個(gè)關(guān)鍵細(xì)節(jié)PHP 代碼文件必須同時(shí)掛載到 Nginx 容器和 PHP-FPM 容器里。Nginx 需要讀取靜態(tài)文件和判斷文件是否存在PHP-FPM 需要找到對(duì)應(yīng)的.php文件執(zhí)行。我用的是共享 PVC把代碼目錄掛載到兩個(gè) Pod 上保持路徑一致。不然會(huì)出現(xiàn) Nginx 能找到 PHP 文件但 PHP-FPM 報(bào)File not found的情況。5.2 PHP-FPM 容器遇到的一個(gè)經(jīng)典權(quán)限問題PHP-FPM 容器里的執(zhí)行用戶默認(rèn)是www-dataUID 是 33。如果代碼目錄掛載的是 NFS 存儲(chǔ)文件屬主和容器用戶不一致PHP-FPM 就沒法讀取文件頁面直接白屏報(bào) 403 或 500。我排查過一次最后發(fā)現(xiàn)是 PV 目錄的屬主是 1000而容器里跑的用戶是 33。解決方式有兩個(gè)一是在 PV 目錄上直接用chown -R 33:33但這在共享存儲(chǔ)上未必每次都生效二是在 PHP-FPM 鏡像里修改用戶 ID或者用initContainers在啟動(dòng)前把代碼目錄的屬主改掉。我最后選了 initContainer 方案用一條chown -R 33:33 /var/www/html的命令把代碼目錄權(quán)限校正穩(wěn)定且不需要手工介入。5.3 Dubbo 微服務(wù)遷移 K8S 的注冊(cè)中心適配Dubbo 框架在 K8S 上部署最核心的變化是服務(wù)注冊(cè)與發(fā)現(xiàn)。原來 Dubbo 服務(wù)通過 ZooKeeper 注冊(cè)提供方啟動(dòng)后把 IP 和端口寫入 ZK消費(fèi)方監(jiān)聽 ZK 獲取列表。在 K8S 里如果 Dubbo 注冊(cè)的是 Pod IP那么 Pod 重建后 IP 變了消費(fèi)方會(huì)拿到失效地址調(diào)用直接失敗。解決方案是讓 Dubbo 注冊(cè) K8S 的 Service 名稱。具體做法是給每個(gè) Dubbo 服務(wù)單獨(dú)建一個(gè)無頭 Service然后在啟動(dòng)參數(shù)里配置DUBBO_IP_TO_REGISTRY指向 Service 的 DNS 域名。這樣消費(fèi)方拿到的是穩(wěn)定域名而不是易變的 Pod IP。我在實(shí)際操作中是把環(huán)境變量注入 Deployment通過dubbo.registry.address指向 ZK 的同時(shí)設(shè)置dubbo.protocol.host為 Service 域名。5.4 微服務(wù)滾動(dòng)發(fā)布時(shí)的優(yōu)雅上下線流程Dubbo 滾動(dòng)發(fā)布時(shí)最怕的是服務(wù)下線瞬間消費(fèi)方還在調(diào)用已經(jīng)被刪除的 Provider導(dǎo)致報(bào)錯(cuò)No provider available。K8S 默認(rèn)的滾動(dòng)更新策略是逐個(gè)重建 Pod但 Dubbo 的注冊(cè)中心更新有延遲。我的經(jīng)驗(yàn)是把滾動(dòng)更新前的 PreStop 鉤子用來做 Dubbo 主動(dòng)下線調(diào)dubbo的qos端口發(fā)送offline指令然后等待幾秒再退出容器。這個(gè)等待時(shí)間非常關(guān)鍵太短了下線指令沒送達(dá)太長(zhǎng)了拖慢發(fā)布節(jié)奏。我一般設(shè)置為 10 秒實(shí)測(cè)下來發(fā)布過程不會(huì)出現(xiàn)服務(wù)不可用的情況。消費(fèi)方側(cè)如果依賴了本地緩存的服務(wù)列表也要定期刷新避免長(zhǎng)期持有失效地址。6. Ingress 統(tǒng)一入口多服務(wù)路由規(guī)則配置與流量治理的細(xì)節(jié)最后一塊是入口流量管理。整套環(huán)境里有 Java 應(yīng)用、LNMP、Dubbo 的網(wǎng)關(guān)層等多個(gè) HTTP 或 gRPC 服務(wù)不可能每個(gè)服務(wù)都暴露一個(gè) NodePortIngress 就是用來統(tǒng)一收口流量的。6.1 Ingress 路由規(guī)則的編寫思路按域名、按路徑分層我的配置策略是一個(gè)域名對(duì)應(yīng)多個(gè)服務(wù)按路徑進(jìn)行區(qū)分。比如api.example.com域名下/java路徑轉(zhuǎn)發(fā)到 Java 應(yīng)用的 Service/php路徑轉(zhuǎn)發(fā)到 LNMP 的 Nginx Service/dubbo路徑轉(zhuǎn)發(fā)到 Dubbo 網(wǎng)關(guān) Service。這樣只用一個(gè)域名就能覆蓋所有業(yè)務(wù)入口證書管理也方便。路由規(guī)則里我用的是前綴匹配K8S 的 Ingress 規(guī)范從 1.22 版本開始推薦pathType: Prefix。同時(shí)要注意路徑的斜杠問題——如果用/java作為路徑且后端服務(wù)本身有 contextPath需要確認(rèn) Ingress 的 rewrite-target 注解行為避免路徑被改寫后后端找不到資源。6.2 Ingress Controller 選型和配置參數(shù)Ingress 只是一個(gè)資源對(duì)象真正干活的是 Ingress Controller。我用的方案是社區(qū)最主流的 ingress-nginx部署方式是用 Helm。核心配置參數(shù)我會(huì)打開這幾個(gè)proxy-body-size調(diào)到 100m因?yàn)?LNMP 那邊會(huì)上傳文件keep-alive設(shè)置為 300 秒降低后端連接的頻繁重建enable-real-ip打開讓后端能拿到真實(shí)的客戶端 IP而不是 Nginx 轉(zhuǎn)發(fā)過來的內(nèi)部地址。Helm 安裝時(shí)建議把hostNetwork設(shè)為 true讓 Ingress Controller 直接占用宿主機(jī)端口 80 和 443。這樣比 NodePort 多一跳的轉(zhuǎn)發(fā)更高效也方便直接在負(fù)載均衡器上把流量轉(zhuǎn)到幾個(gè)節(jié)點(diǎn)的對(duì)應(yīng)端口。6.3 TLS 證書配置與路由兼容性的一次實(shí)測(cè)踩坑有一次我給域名配置 HTTPS 證書時(shí)發(fā)現(xiàn)客戶端訪問https://api.example.com/java報(bào)證書無效。排查了半天最后定位到問題不在證書本身而在 Ingress 規(guī)則里的 host 和后端 Service 的響應(yīng)。Nginx Ingress Controller 默認(rèn)會(huì)透?jìng)?SNI如果后端 Tomcat 啟動(dòng)了 HTTPS 連接器的證書校驗(yàn)Ingress 和后端之間的協(xié)商就對(duì)不上。解決方案是后端應(yīng)用全部走 HTTP由 Ingress 統(tǒng)一終結(jié) TLS不要在后端重復(fù)配置 HTTPS。Ingress 規(guī)則里用tls段綁定證書和 host然后后端 Service 只暴露 80 端口。這套架構(gòu)清晰也避免了證書鏈嵌套導(dǎo)致的各類兼容性問題。6.4 Ingress 的灰度發(fā)布和流量分流能力擴(kuò)展Ingress 天然支持按 header 或權(quán)重做流量分發(fā)我用它做了灰度發(fā)布。比如新版 Java 應(yīng)用先部署一套新的后端 Service然后通過 Ingress 注解nginx.ingress.kubernetes.io/canary-weight: 10把 10% 的流量切到新版本。驗(yàn)證通過后把權(quán)重調(diào)到 100再清理舊副本。這套方案比直接改 Service 指向更平滑而且不需要停機(jī)。實(shí)際配置時(shí)要注意灰度規(guī)則只在同一 host 下生效且需要確保新舊兩個(gè) Service 都是可用的否則會(huì)把錯(cuò)誤流量引入灰度版本影響線上用戶體驗(yàn)。7. 從部署到穩(wěn)定運(yùn)行的運(yùn)維視角這套架構(gòu)在真實(shí)環(huán)境里還要盯什么前面把每一類應(yīng)用的部署和踩坑都講了一遍最后補(bǔ)充一些從整體架構(gòu)視角出發(fā)的運(yùn)維細(xì)節(jié)。很多項(xiàng)目部署完沒問題但跑一段時(shí)間后就頻繁故障問題基本都出在這些容易被忽略的環(huán)節(jié)。7.1 資源規(guī)劃給每類應(yīng)用預(yù)留多少資源才夠用我把這套環(huán)境的資源分配做個(gè)參考Zookeeper 每個(gè)節(jié)點(diǎn) 1C2G三個(gè)節(jié)點(diǎn)MySQL 主節(jié)點(diǎn) 4C8G 加 500G 存儲(chǔ)從節(jié)點(diǎn) 2C4G 加 200GRedis 每個(gè)分片 2C4G六個(gè)分片Java 應(yīng)用平均 2C4G按 HPA 在 3 到 10 個(gè)副本之間彈性伸縮Nginx 入口 2C4G兩個(gè)副本。資源不是越高越好但要保證核心中間件有足夠的余量。MySQL 和 Kafka 這類 IO 密集應(yīng)用建議把 CPU Request 和 Limit 設(shè)得接近一些避免 CPU 被搶占導(dǎo)致 IO 等待時(shí)間拉長(zhǎng)。Java 應(yīng)用則要關(guān)注堆內(nèi)存和容器內(nèi)存的比例避免容器設(shè)置了 4G Limit 但 JVM 堆只分配到 1G 的浪費(fèi)。7.2 日志和監(jiān)控的統(tǒng)一收集方案K8S 環(huán)境下日志收集不能再像傳統(tǒng)服務(wù)器一樣tail -f去翻文件。我為每個(gè)節(jié)點(diǎn)部署了 Filebeat以 DaemonSet 方式運(yùn)行采集/var/log/containers/*.log下的容器日志輸出到 Elasticsearch。這套方案的優(yōu)點(diǎn)是無需改造應(yīng)用鏡像直接用標(biāo)準(zhǔn)輸出日志即可。監(jiān)控方面用的是 Prometheus 加 Grafana。Node Exporter 采集節(jié)點(diǎn)指標(biāo)cAdvisor 采集容器指標(biāo)MySQL Exporter 和 Redis Exporter 分別采集中間件指標(biāo)。告警規(guī)則我會(huì)重點(diǎn)盯這幾個(gè)Pod 頻繁重啟、PVC 使用率超過 85%、Redis 內(nèi)存超過 80%、MySQL 主從延遲超過 30 秒。這些指標(biāo)直接對(duì)應(yīng)線上故障命中率高誤報(bào)少。7.3 發(fā)布回滾預(yù)案如何快速恢復(fù)受損應(yīng)用有狀態(tài)應(yīng)用的發(fā)布回滾比無狀態(tài)應(yīng)用風(fēng)險(xiǎn)高得多。MySQL 升級(jí)版本時(shí)萬一失敗不要直接重啟因?yàn)樽詣?dòng)恢復(fù)可能會(huì)把數(shù)據(jù)文件搞壞。我的習(xí)慣是升級(jí)前先全量備份備份文件放到集群外存儲(chǔ)然后手動(dòng)修改 StatefulSet 開啟滾動(dòng)更新。如果啟動(dòng)驗(yàn)證失敗立即把鏡像 tag 改回原版本執(zhí)行回滾同時(shí)確認(rèn)所有 PVC 沒有被殘留的定時(shí)任務(wù)清理掉。無狀態(tài)應(yīng)用的回滾相對(duì)簡(jiǎn)單Deployment 的rollout undo一條命令就能回到上一個(gè)版本。但需要注意如果同時(shí)改了 ConfigMap回滾不會(huì)自動(dòng)恢復(fù) ConfigMap 的版本需要額外處理配置文件的回退。我這次上線 Dubbo 版本時(shí)踩過這個(gè)坑最后總結(jié)的經(jīng)驗(yàn)是凡是涉及配置變更的發(fā)布必須把 ConfigMap 版本和鏡像版本一起放進(jìn)發(fā)布單里管理。7.4 團(tuán)隊(duì)協(xié)作中的命名規(guī)范和環(huán)境隔離最后說一個(gè)團(tuán)隊(duì)協(xié)作層面的建議。K8S 的命名空間是最好的隔離工具我這次把開發(fā)、測(cè)試、生產(chǎn)三個(gè)環(huán)境用命名空間強(qiáng)制隔離資源配額也分別限制。命名空間內(nèi)部再用標(biāo)簽區(qū)分應(yīng)用和中間件比如appjava-app、appredis。這樣無論是排查問題還是寫網(wǎng)絡(luò)策略目標(biāo)都清晰。命名規(guī)范上Service 名、配置名、PVC 名統(tǒng)一加應(yīng)用前綴比如mysql-prod-data、zk-headless、java-app-config。后期維護(hù)時(shí)一眼就能看出來對(duì)應(yīng)的資源類型和用途。這套組合從部署到現(xiàn)在跑了兩三個(gè)月整體穩(wěn)定性是過關(guān)的。中間件和業(yè)務(wù)應(yīng)用的日常操作沒有出現(xiàn)明顯故障彈性伸縮和灰度發(fā)布流程也已經(jīng)沉淀成團(tuán)隊(duì)內(nèi)部的標(biāo)準(zhǔn)化操作。希望這次完整的實(shí)戰(zhàn)拆解能給正在做 K8S 落地的朋友一些參考少走一點(diǎn)我已經(jīng)趟過的彎路。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
天天se在线视频| 亚洲色五月| 久久五月天色婷婷| 丁香欧美| 婷婷五月黄色激情在线| 综合网狠狠| 五月丁香啪啪| 五月天久久综合| 色婷丨日丨天丨综合久久| 涩 五月 婷婷 狠狠| 五月天综合久久| 极品人妻VIDEOSSS人妻| 内射综合网| 都市激情五月婷婷综合| 狠狠干五月天婷婷网| 久久婷婷五月天丁香| 亚洲无线视频| 天堂网啪啪| 99热只有国产在线精品| 视色网在线播放| 97热久久| 中文字幕,综合,91| 4438国产免费看| 无码AV免费精品一区二区三区 | 99热亚洲只有色| 婷婷99狠狠| 丁香五月婷婷综合激情哟哟哟| 五月丁香六月激情综合| 丁香五月天激情综合| 另类五月婷婷| www.99热最新视频8| 婷婷成人视频| 色噜综| 激情综合在线观看| 国产精品色婷婷久久久精品| 久热丁香| 97人操人免费视频| AV在线观看网站| 极品少妇婷婷五月| 97超级操操| 亚洲色99综合天堂| 丁香五月婷婷综合激情哟哟哟| 1000部毛片A片免费观看| 五月丁香综合| 欧美三级A做爰在线观看| 激情伊人五月天| 久超超碰| 99久久综合网| 六月婷婷色综合| 大香蕉人在线65| www.夜夜爱.com| 久久久久久久11111111111| 精品人妻伦九区久久AAA片| 久久人妻久久| 91九九九九| 四川BBB搡BBB搡多人乱亂| 激情综合一| 亚洲国产成人综合| 色五月婷婷网| 婷婷五月天渟渟| 综合福利网| 超碰在线免费观看日韩| 探花搜索结果 - 黄上黄| 9l久久久视频| 日韩久热| 色情五月天首页| 99久久国产宗和精品1上映| 综合综合色色| 五月成人天| 蜜桃五月天| 丁香社区婷婷五月| 99热免费精品| 婷婷爱五月天| 超碰免费电影| 久久久人妻人伦| 日日噜人人人做人| 天天干狠狠| 噜一噜在线| 99男人的天堂| 91男人操女人视频| 久久婷.com| 婷婷五月黄色激情在线| a久久免费视频| 亭亭五月色男人| 99视频精品全部观看10| 久久xxxx| 亚洲婷婷婷| 在线成人网站| 国产裸舞表演WWWW| 九九视频这里只有精品| 香蕉曰比| 26UUU| 99色视频在线观看| 99精品久久| 北京熟妇搡BBBB搡BBBB| 97久久五月丁香婷婷| 粉嫩av懂色av蜜臀av熟妇| 97五月天婷婷午夜| www.五月天色色.com| 丁香五月激情综合| 五月丁香激情综合六月涩涩爱| 久99热| 色插综合网| 婷婷五月天播播| 97人人干| 另类 在线| 久久激情综合| 九月综合| 男人的天堂五月丁香| 欧美精产国品一二三区| 丁香五月婷婷综合激情啪啪啪| 97人人做| 人人色婷婷| 色婷婷丁香五月| 神马欧美精| 色婷婷五月天天天做| 色婷婷六月| 91超级碰| 九九色精品| 五月天婷婷婷| 一本色道久久综合狠狠躁一二三| 亚洲精品乱码久久久久99| 丁香五月婷婷色情综合| 97啪在线观看视频| 婷婷丁香水多多视频| 婷婷五月丁香超碰| 99热精品10| 婷婷五月天视频小说| 日本综合色色| 日本69日人视频| 五月开行婷婷色五月| 色播五月丁香| www,99视频| 嫩草AV久久伊人妇女超级A| www五月婷婷88导航| 色综合色综合色综合色综合| 97色精品视频 | 亚洲情欲| 婷婷导航| 丁香五月电影| 五月丁香网站在线播放| 午夜精品人妻无码一区二区三区| 丁香五月婷婷少妇| 2018国产大陆天天弄| 激情六月丁香| 天天天天操| 五月丁香另类图片| 夜夜操天天干| 秋霞午夜理论| 五月Huangsewang| 婷婷五月天激情综合| 激情婷婷| 国产一级片| 五月天停停日日| 五月婷婷片| 亞洲自怕| 狠狠狠狠狠干| 婷婷久久网| 26uuu丁香婷婷五月| 婷婷久久婷婷色五月| 五月天色婷婷成人| 97丁香五月| 99综合视频| 色射7856五月天激情四射| 五月婷婷啪啪啪啪| 成人av观看| 色综合中文| 久99久视频免费观看| 激情五月天综合| 五月丁香婷婷成人网| 久久这里只有精品视频15 | 五月丁香啪啪网| 久久XX| 五月天色社区| 久久99热 这里有精品| 少妇被下春药玩弄A片| 69五月天视频| 視频福利乱色| 九九视频在线| 啄木鸟丝袜美女福利视频| 狠狠色噜噜色狠狠狠综合色| 亚洲午夜AV| 狠狠色婷婷在线| 夜精品无码A片一区二区蜜桃| 欧美五月丁香在线观看| 77777亚洲午夜久久| 國語久久婷| 九九精品视频免费在线| 99久久大片| 综合久久首页| 播播网色播播| 五月婷婷在线视频| 五月天无码视屏播放| 色六月 婷婷| 色婷婷婷婷| 天堂A∨在线| 欧美色五月| 人人妻久久妻| mmm1717.6dbm人人爱人人操| 成人色图情色成人网 www.5b5b5bcom 五月天 | 五月婷婷AV| yazhou seshipin| 日韩久久日| 99视频九九热| 五月婷婷激情综合拍| 超碰中文字幕在线| 男人操女人高潮91视频| www.91.com黄| 91人人人人人人人| 久久久久久人妻| 欧美丁香五月| 天天射综合网天天插| 色九月欧美| 亚洲熟妇AV乱码在线观看| 激情丁香五月婷婷啪啪| 国产色色网站网址| 乱码操操| 亚州操操| 91九色精品| 中文字幕免费高清电视剧| 九九热精品视频在线观看| 秋霞学生妹一二级| 成人五月天在线观看| 97AV人人插人人操| 91伦| 人人人操97| 婷婷五月综合社区| 91啪啪网| 五月狠狠| 国产1区2区| 99精品偷自拍| 亚洲中文字幕在线观看| 丁香花色色网| 伊人激情综合网| 91精品综合久久久久久五月丁香| 五月天激情综合10p| 99久久99久久综合| 99久久久99久久91熟女| 久久综合五月天| 亚洲啪啪精品| 97人妻碰碰碰久久久久-最近国语高清| 五月丁香六月激情| 国产古装妇女野外A片| 五月丁香六月激情欧美综合| 99热这里只有精彩| 久热成人| 色爱综合网| 99精品女人天堂| 影音先锋男人站,影音先锋男人色资源网,影音先锋AV最新资源站,影音先锋AV资源 | 黄色五月婷婷| 丁香五月久久| 久久精品性爱| 极品人妻VIDEOSSS人妻| 成 人片 黄 色 大 片| 大香蕉伊人久久| 日韩成人AV在线播放| 5月婷婷6月六月丁香| 亚洲激情97五月天| 日婷婷| 久久a热| 天天骑天天操| 黄色五月婷婷| 人人摸人人| 久er免费视频| 激情综合网五月天天| 噜综合| 五月丁香婷婷无码中文| 狠狠草综合网| 日熟女| 极品另类| 五月大香蕉| 狠狠狠狠狠狠| 日韩欧美性爱| 色综合久久天天综合网| 狠狠色丁婷婷日日,伊人激情综合网 | 99视频一区| 色性五月天| 夜夜爽天天日| 99久re热视频精品98| 五月色丁香| 五月婷婷六月丁香| 免费不卡狠操美女视频网| www夜夜操com| 99热最新网址| 99久久97| 黄色AV日韩| 国产亚洲精品人人| 色色网五月激情| 激情五月天偷拍综合网| 五月婷丁香| 亚洲电影在线观看| 涩涩婷婷五月| 色播五月丁香综合| 天天搞天天色综合| 久久性爱99国产| www网站在线观看| 99riAV国产精品视频| 色色综合无码| 高清无码网址| 丁香五月天天久久综合小说| 色99在线视频| 色99网| 六月婷婷中文字幕| 五月丁香偷拍| CHINESE熟女老女人HD视频| 久久99免费视频网站| 婷婷五月丁香啪啪| 狠狠色噜噜色狠狠狠综合久久成人波| 丁香六月激情综合| 激情视频综合| 婷婷五月色网| 久久婷婷色| 色综合色综合色综合| 激情综合色| 中文字幕久久一区二区三区| 亚洲色五月| 操操熟女| 开心五月天激情| 成人在线视频网| 人人色人人弄人人操| 国产日韩av片| 色五月AV| 日本成人小说婷婷六月| 五月婷婷色五月| 欧美三级大片AA在线看| 五月丁香六月婷婷综合免| 五月丁香六月婷婷色日| 亚洲av综合在线| 97在线视频观看| 思思热精品在线视频| 成人精品在线| 欧美情月伍月天| 亚洲色频| www. 五月. com| 五月丁香啪啪激情| 欧美日韩91| 亚州操操| 狼人婷婷综合| 婷婷午夜综合| 91成人看片| 色婷婷影视99| 欧美丁香婷婷五月| 国产综合网在线| 色九区| 激情综合五| 99看片| 久久婷婷免费| 亭亭五月色男人| www.97视频| 婷婷五月丁香六月伊人网| www,色婷婷| 国产亚洲成AV人片在线| 思思热精品在线| 色色六月| 99精品在线观看视频| 99久热在线精品99re6热| 99 这里只有精品| 超碰免费在线| 就爱啪啪婷婷| 亚洲欧美成人在线观看| 日屌日日操日日色| 日熟女| 激情五月天综合网| 色色五月天丁香| 五月丁香琪琪| 五月花综合网| 丁香色婷婷色手机免费在线| 五月天婷婷在线AN| 婷婷五月丁香欧洲| 99热精品免费| 高清资源站日A美A欧亚…| 欧美日本综合网| 五月婷婷在线视频| 国产一区男女| 色五月,婷婷大香蕉| 五月天激情亚洲| 大香蕉娱乐| 久久精品系列| 丁香午月AV中文字幕| 超碰99在线观看| 激情黄色五月天| 日韩限制级大尺度黑料泄密大尺度视频一区二区在线观看 | 五月天婷婷综合网| 97资源欧美日韩大香蕉超碰一区| 二色AV| 九九青青草成人| 色色热| 天天爽,天天操。| 久久久久亚洲AV综合| 亚洲色综久久五月| 久久草中文日韩欧美| 91九色在线视频| 丁香五月色| 九九草热在线观看| 91porn一起草| 中文字幕按摩做爰| 色五月av| 五月天婷婷色播综合在线| 屁股翘好撅高迎合跪趴| 激情综合五月| 秋霞网在线观看理论91| av无码电影| 九九热这里只有精品6| 日日干综合| 久久日韩婷婷五月| 久久综合婷婷| 99啪啪网| 99视频精品全部免费观看| 久久久婷婷色五月资源网| 亚洲最大在线| 99热这里只有在线| 一级片sese片.COM| 伊人热婷婷| 五月丁香亭亭| 色欲午夜无码久久久久久张津瑜| 在线看的免费网站| 婷婷97碰碰| 另类激情五月| 五月婷丁香| 五月天婷婷丁香成人网| 婷婷六月激情| www.97碰碰com| 婷婷四色五月| 婷婷丁香视频在线观看免费| 综合色网站| 无码AV免费精品一区二区三区| 五月综合无码| 日日操天天爽| 色婷婷五月天激情在线播放| 九色91视频| 日韩久久系列| 国产精品18久久久| 青草五月天| 久久婷婷视频| 亚洲欧美999| 亚洲激情高潮| 涩涩涩,com| 婷婷五月丁香花综合| 精品二区| 亚洲欧洲中文日韩久久AV乱码| 亚洲六月色婷婷| 99热这里只有在线| www.日日夜夜| 五月丁香六月婷婷中文版| 欧美天堂久久| 另类激情码| 五月天综合色| 免费在线观看av网站| 91精品久久久久久综合五月天| 97色操| 另类激情五月天| 色五月视频无码播放| 色色色色欧洲| 五月开心婷婷中文字幕| 婷婷五月综合婷婷| 最新热中文字幕| 色哟哟精品| 色玖玖综合| 中文av在线观看| 国内9l视频自拍老熟女九色| 色九月综合| 久久五月天激情| 中字幕视频在线永久在线观看免费 | 精品久久穴| 婷婷在线播放| 99热精品在线观看| 丁香香蕉射射射| 成人做爰A片免费看视频| 超碰人人草| 婷婷伊人久久| 婷婷五月天小说| 97色色色| 91男同视频| www.91五月| 色啦啦视频| 青青久久五月天丁香婷婷| 日本网站久久| 99色日本| 色愛综合网| 思思视频这里是精品| 亚洲性爱干干| 久8色色| 五月天亚洲色| 日本在线视频www色| 丁香六月婷婷综合| 成人做爰A片免费看视频| 91人人人人人| 99精品超在线播放| 亚洲另类婷婷五月丁香在线播放| 日韩av干| 五月综合色| 激情五月婷婷综合| 丁香五月天成人| 婷婷五月天大香蕉在线视频观看| 人橾人| 精品思思久久| 色五月丁香六月婷婷| 深爱五月婷婷| 五月天婷婷久久| 日本在线观看99| 91色在线| 欧美婷| 五月丁香色婷婷| 亚州色色色| 一二线视频 另类| 99丁香五月婷婷在线| 久久九九爽| 这里只有免费的精品| 九热视频| 五月婷婷大香蕉| 超碰99成人在线| 九九色综合网| 深爱五月日韩| 激情婷婷丁香| 91丁香| 国产永久一二一起草| 综合图区激情| 大香蕉五月天| 国产avapp 网| 婷婷五月天亚洲综合| 亚洲AV人人操| AV操一操| AV五月丁香| 亚洲成人av在线播放| 久久久久久久久久8888| 久久婷婷五月综合啪| 99re思思在线视频| 五月丁香色色| 色色综合热| 26uuu.| 五月丁香婷婷综合视频| 中文婷婷狠狠| 婷婷开心青青草| 免费看成人747474九号视频在线观看| 婷婷五月色综合香五月| 亚洲va日| 婷婷五月丁香综合| 久婷久婷激情肉| 噜噜噜噜在线| 人与禽A片啪啪| 日本久久天堂| 99热综合色图| 久久一品区| 99福利视频| 激情开心五月天| 婷婷久久丁香五月| 五月天激情综合| 超碰97在线观看免费| 99在线爽| 婷婷综合五月天| 综合AV在线| 日日夜夜狠狠| 精品一区二区三区三区| 天天摸色吧天天摸色吧| 我淫我色婷婷五月天激情四射| 噜综合| 五月丁香啪啪| 怡红院 久久| 天天操加勒比| 久久婷婷网站| 亚洲AV成人片无码网站| 狠狠第四色| 人人摸人人| 97丁香视频| 久久机热思思热| 五月丁香婷婷五月色| 久久视频婷婷视频| 午夜天天精品视频| 天天草天天日| 四季日韩AV无码综合| 激情婷婷五月基地| 久久婷婷电影| 五月天成人在线播放| 激情骚五月| 婷婷激情五月综合| 婷婷色五月开心五月| 亚洲激情久久| 婷婷伊人综合中文字幕| 99re这里| 五月丁香少妇网| 国外亚洲成AV人片在线观看| 五月丁香久久激情网| 97在线99| 五月天亭亭俺也| 在线看黄色| 日本视频99| 色情五月丁香| 日韩免费视频| 天堂草在线观看| 久久久精品99| 99热这| 色婷婷精品小视频| 久久久91精品| 日本啪啪网| 丁香五月成人| 夜色五月天| 亚洲中文乱字字幕在线永久| 婷婷色网站| 99久久婷婷国产综合| 我要色综合五月婷婷| 九日日夜夜69| 另类图片色五月| 九九视频这里只有精品在线播放 | 蜜臀av无码久久久久久久久| www.99精品日操伊人乱碰在线| 色爱五月天| 色综合九九| 欧美叉叉叉BBB网站| av操一操| www.99热日韩.com| 99热在线播放精品| 噜噜五月天综合| 天天cha成人综合网| 十区av| 超碰免费人人| 日日撸夜夜操| 五月丁香综合久久| 婷婷爱爱蜜臀天天操| 91精品久久久久久综合五月天| 五月婷婷久草在线视频综合| 色婷婷丁香| 狠狠色丁香乆乆| 99久久久免费| 深爱激情丁香五月| 夜夜躁狠狠| 懂色av蜜臀av粉嫩av永陈冠希| 9色在线| 五月丁香六月婷婷姐| 天天 青草 制服丝袜 在线| 午夜丁香久久久久久| 玖玖婷婷五月天| 久狠日av| 婷婷五月天伦理| 99毛片| 蒲京久久无码视频| 精品一区二区三区免费毛片爱| 色婷婷的五月天| 伊人狠狠狠综合| 久久网日本| 91色色色视频| AAA级久久久精品| 久热伊人| 99婷婷国产最新视频| 五月婷在线视频免费播放| 激情av| 日韩伊人大香蕉| 狠狠婷婷综合| 国产3p露脸普通话对白| 色色色无码| 99性爱| 中文乱子伦视频| 五月丁香综合伦理片| 1024日韩| 中文字幕av在线| 九月大香蕉| 九月激情婷婷丁香| 极品人妻VIDEOSSS人妻| 六月综合婷婷开心伊人| 色综合久久44| 97人凄人人操人人爽| 九九这里都是精品| 丁香五月六月婷婷殴美综合| 热99只有精品| 丁香五月天无码| 免費亭亭成人| 桃色激情婷婷伊人网| 色噜噜狠狠色综合伊人| 99久久66| www.sd-xiangsu.cpm| 《诡秘之主》在线观看| 丁香五月婷婷亚洲人| 久热91| 婷婷五月天激情综合| 丁香五月综合激情啪啪| 7超碰自拍| 伊人网大香| 日本三级日本三级三级人妇四虎| 九九色综合网| 色婷婷五月影视| 久久精品性爱视频,| 久久久婷婷| 高清无码.com| 久久狠色噜噜狠狠狠狠97| 99这里只有免费的小视频在线观看| 大香蕉久久| 99惹在线精品免费观看| 婷婷五月天无码熟女| 丁香五月激情综合在线观看| 99色1| 九九视频这里有精品| 激情五月天在线视频| 久久这里只有精品热在99| 丰满人妻一区二区三区| 色婷婷免费视频| 99久久精品色老| 深爱五月月天| 五月丁香六月停停| 婷婷狠狠操| 婷婷五月天黄色| 亚洲精品小视频| 天天射色五月天| 99精品网| 五月综合色| 五月天丁香婷婷网| WWW久| 色婷婷影院| 天天色,天天操,天天射| 开心五月婷婷婷美女| 欧美va视频| 另类在线| 久婷自拍视频| 婷婷五月黄色激情在线| 婷婷五月天成人网站| 婷婷五月,偷窥偷拍网| 99这里只有精品视频| 色135综合网| 色欧美日| 婷婷5月天激情综合| 毛片色五月| 欧美色色色| 色五月综合激情网| 婷婷五月天奸女| 色青青视频| 婷婷久久精品| 亚洲三A| 色五婷婷| 婷婷丁香五月天亚洲| 五月丁香六月激情综合| 成人.在线日韩| 五月天停停日日| 在线综合婷婷| 色婷婷导航| 久久视9精| 激情色播| 婷婷社区五月天| 99热| 午夜成人AV在线| 婷婷五月丁香久久| 99热精品在线在线| 国产资源在线视频| 日本性激情色播| 午夜五月天| 婷婷五月天AV在| 美女主播野战视步页| 色色色99| 日亚二欧美| 淫荡工a| 综合网色| 在线视频你懂得| 五月丁香六月婷婷操操操| 亚洲日韩一页精品发布| 久99| 五月丁香综合中文| 丁香婷婷久久综合在线| 五月婷婷免费| 99激情| 91久久婷婷| 六月婷婷啪啪| 婷婷五月天AV在| 九九色视频| 激情内射人妻1区2区3区| 婷婷久久五月天| AV成人在线播放| 婷婷综合另类| 婷婷五月天六点丁香五月| 国产精品久久久久久久久久 | 久久久免费精彩视频| 日本波多野结衣视频| 午夜九九电影| 激情又色又爽又黄的A片| 丁香婷最新动态| 色999五月色| 丁香九月综合| 大香蕉99| 五月婷婷色影院| 婷婷久久综| 日韩色久| 99精品自拍| 香蕉综合在线| 99热免费精品| a色色色色色| 亚洲综合五月| 五月天婷亚洲综合在线嫩草网| 五月亭亭直播| 欧美噜噜免费观看| 夜精品无码A片一区二区蜜桃| 99这里只有精品国产| wwwss在线观看| 天天爱天天做天天舔| 少妇大叫太大太粗太爽了A片| 五月婷婷五月丁香综合| 嫩BBB槡BBBB搡BBBB| 国产欧美日韩一区二区三区| 日本无码专区| 色五月婷婷久久| 97成人在线视频精品| 天天人人人人人人人人人人人| 亚洲免费av在线| 五月玖玖| 色狠狠999综合网| 国产美女无遮挡裸体毛片A片| 婷婷五月丁香色情| 大香人妻| 九九这里是免费的视频5| 美女网黄| 天堂成人A片永久免费网站| 欧洲日韩一区二区三区| 色九月丁香婷婷蜜桃在线观看| 99操逼| 美女精品一级不卡视频| 色婷婷六月天| 日日日影院| 婷婷va| 深爱五月激情| 伊人五月网| 海外网站专业操老外| 久久99精品九九久久久婷婷| 国产99精品免费视频| 日本大人久久| 91碰超| 亚洲丁香五月综合| 色婷婷四虎| 五月丁香六月香香蕉| 这里只有精品视频在线观看免费| 成人久碰| 色婷婷AAA| 五月丁香六月婷婷免费视频| 日韩美女羞羞网站在线观看| 五月激情在线| 亚洲精品大片| 操操操av| 情一色一乱一伦一91A| 色婷婷激情| 婷婷五月花丁香| 色亚洲无码| 97干资源在线观看| 婷婷五月婷婷| 日本色狠狠| 五月天婷婷黄色视频| 亚洲成人av在线观看| 少妇激情五月天| 免费播放99性爱视频| 7超碰自拍| 另类婷婷五月天啪帕帕| 91狠狠综合久久久久久| 人妻自慰高清合集| www。五月天激情| 9热久久在线| 少妇高潮A片无套内谢麻豆传| 噜一噜在线| www 五月天 com| 婷婷丁香97| 九月色婷婷综合亚洲| 五月天综合色| 天天射影院| 色婷婷五月综合网| 天天操夜夜啊| 夜夜资源站| 中文字幕av久久爽| 99精品国产乱码久久久人妻| 婷婷五月丁香综合| xx人人xx| 激情婷婷综合五月少妇| 新99思思视频| 99视频在线| 久操干| 五月色激情综合网| 伊人久久大香线蕉精品| 丁香五月性| 成人国产综合| 噜噜视频| 天天爽综合网| 色婷婷激情视频| 国产夫妻操逼内射视频| 国产 码在线成人网站| 激情爱爱网站超大免费| 色色五月综合| 亚洲成人av在线观看| 99人妻碰碰久久久禁片| 99久热| 婷婷欧美| 婷婷社区五月天| 超碰91在线| 天天综合网91| 免费播放片大片| 激情网五月天| 99精品在线| 久草热在线视频| 久久九九热视频| 色狠久| 五月的色婷婷高潮| 79精品视频在线观看,| 国产精品五月天婷婷| 久久九九大香蕉电院| 婷婷五月久久| 久噜久噜| 久久久久思思热| 99热这里全是精品| 成人精品亚洲性爱| 热99这就是精品视频| 亚洲狠狠干| 五月丁香六月婷婷色情| 色丁香五月婷婷| www.日本91| 97人妻碰碰碰久久香蕉| 婷婷五月天激情综合| 色五月天丁香| 中文字幕成人| 91精品久久久久久综合五月天| 婷婷色婷婷| 日本色色网| 婷婷五月激情网| JAPANRCEP老熟妇乱子伦视频 | 九九九激情综合| 五月婷成人网| 婷婷五月激情五月丁香五月| 综合亚洲AV| 五月婷啪啪| -91九色大屁股| 五月天天天综合| 五月丁激情| 欧洲亚洲激情五月天在线| 无码人妻一区| 99久在线精品99re5热视频| 中文字幕不卡+婷婷五月| 狠狠狠狠狠干| 国产熟妇的荡欲午夜视频| 在线成人va| 日本97在线观看| 黄色成人网站在线播放| 狠狠舔| 婷婷色播六月无码| 日日.c| 婷婷综合五月| 另类少妇人与禽zOZZ0性伦| 久久婷婷原创视频| 久久草中文日韩欧美| 色欲婷婷夜夜| 99热这里有精品2| 五月婷婷六月色| 色噜噜综合网| 丁香五月大香蕉在线99| 啪色综合| 99在线观看免费精品视频| 夜夜操夜夜姧| 久久视频婷婷| 婷色五月| 色噜久| 亚洲视频在线观看99| 婷婷五月久久| 中文无码婷婷| 亚洲日韩一页精品发布| 亚洲午夜Av| 99er免费在线观看| www激情com| 五月天婷婷小说| 九九Y精品热播| 欧美婷婷日本| 无码色色| 丁香五月六月综合激情| 亚洲成人AV电影网| 五月激情丁香久久综合网| 五月婷婷福利| 六月婷婷五月丁香| 精品一区二区三区三区| 99热福利| 婷婷五月天伊人| 热九九精品| 婷婷五月色惰| 婷婷五月骚厕所| 婷婷五月综合在线| 99久免费视频| 五月天激情图| 五月丁香综合啪啪| 亚洲免费电影2| 色色色综合视频| 色综合大香蕉| 五月婷婷性爱视频| 五月婷婷综合色啪| 五月婷av| 亚洲免费观看高清完整版AV线| 亚洲爱爱无码婷婷色五月| 色99网| 婷婷五月综合网激情| 婷婷丁香五月天欧美| 久久久久9999| 丁香五月性爱爱五月| 26UUU精品一区二区c〇m| 五月天婷婷在线视频| 四川操逼站| 丁香色情五月综合网站| 婷婷深爱五月天| 97人人搞| 99在线视频免费| 激情5月婷婷| 婷婷六月丁香色| 91日本在线观看| 午夜亚洲国产精品av一区二区| 色五月播五月| 极品九九九九九九| www一区二区三区| 五月婷三级片| 99'无码| 丰满人妻一区二区三区| 欧美人人操| www热久久yy9| 秋霞AV美国| 亚洲婷婷欧美婷婷| 婷婷综合伊人| 久久九九热视频| 五月天婷婷乱论小说| 亚洲妇女熟BBW| 九九视频这里是精品五月| www.激情| 丁香婷最新动态| 五月婷婷大香蕉| 成人丁香五月婷| 天天做天天爽| 99超级碰碰| 丁香五月婷婷AV在线| 欧美日本高清视频99| 久久金品黃色| www,久久久人人| 色婷婷五月在线| 色婷婷久久视屏| 噜噜国产| 视频一二区| 婷婷激情综合网| 久久婷婷五月丁香网| 九九色影视| 五月丁婷香| 久热91| 2025天天爽天天摸| 高清av在线国产| 玖玖热视频| 亚洲视频操| 深爱婷婷网| 亚州精品色情在线观看| 亚洲乱码日产精品BD| 开心五月婷| 黄色AAAAAAA| www.maotanji.com| 成人AV在线中文版| 丁香六月婷婷一区二区三区| 琪琪色影音先锋| 天堂综合久| 久久草人妻| 日韩欧美成人一区二区三区| 丁香婷婷色情社区成人小说| www激情网站| 五月天色不卡| 中文字幕日韩无码制服诱或| 另类图片五月天婷婷| 91视频精品99| 天天骑日日爽| 国产操B| 五月丁香无码| 综合综合色色| 欧美超碰亚洲| 99爱视频在线| 99色热综合| av国产精品偷| 无码91中文字幕| 人人爱人人添| 中文资源在线a | 狠狠操在线视频| 丁香五月婷婷少妇| 六月 丁香 视频| 狠狠色婷婷六月激情网| 99热狠狠操| 久久人妻视频| 成人在线99| 色色色婷婷五月天| 婷婷色五月大香蕉在线| www.久久久久久久| 五月久久亚洲| 一级精品999WWW| 9热成人在线视频| 久久婷五月| 丁香六月天婷婷开心综合| 99综合在线| 人人操人| 天天爱天天爽| 亚洲欧洲午夜成人精品av| 婷婷激情鹿城五月天| 欧美久人人| 日韩限制级大尺度黑料泄密大尺度视频一区二区在线观看 | 色噜噜婷婷| 色五月婷婷777| 天天爽天天摸人妻综合网| 色婷婷五月天成人网| 老美AA片| 五月天婷婷综合网| 五月婷婷六月爱| 色播五月综合网| 强辱丰满人妻HD中文字幕| 五月激情婷婷国产精品久久久久久 | 另类图片天天影视在线观看| 精品热九九| 99久久久| 亚州色色色| 婷婷伊人网| 激情丰满熟妇五月| 久久九九怡红院| 久久婷婷五月综合啪| 91在线资源| 嫩草AV久久伊人妇女超级A| 亚洲六月婷婷| 五月激情久久| 婷婷六月花| 成人网站免费sxj| 九九国产视频| 婷婷性爱影院| 99精品97| 亚洲天堂碰碰婷婷| 丁香五月婷婷av影院| 香蕉AV777XXX色综合一区| h亚洲| 五月婷婷激情网| 成人五月天视频| 99re思思久久| 天天狠狠色噜噜| 午夜九九电影| 日操五月婷| 五月婷婷新网站| 成人色五月天婷婷| 五月开心婷婷网| 超碰成人免费| 天天日夜夜欢| 婷婷色九月| 8区视频在线| a在线免费v| 五月天婷婷綜合院| 日本美女上人| 综合久| 亚洲色碰| 婷婷六月激情小说网| 综合亚洲六月婷婷在线| 黄色三级日本| 色5月婷婷| 婷婷色色狠狠| 五月婷婷就去色| 五月婷婷深深爱爱| 婷婷久久国产视频| www.五月天性.com| 婷婷五月天激情偷拍| 能看的av片| 开心五月综合| 能看的av网站| 久久人妻视频| 五月天色色色| 噜噜噜狠狠色综合| 天天做天天爱天天高潮| 三年高清大片免费观看国语| 2018夜夜草| 天天视频精品9| 色色色1网址| 五月丁香综合中文| 丁香五月综合婷婷| 亚洲色五月| 欧美久草在线日本一级特黄大片做受9在线观看韩国电影《两个女人》未删减-毛片 | 亚洲色婷婷| 亚洲欧美国产高清vA在线播放| xxx综合在线| 亚洲综合激情五月| 亚洲激情综| 网色99| 狠狠操综合| 免费碰碰视频久| 色婷婷综合影院| 丁香九九九九| 五月婷婷就去色| 天天做天天爱天天要| 9热视频在线观看| 色婷婷香蕉| 欧美成人精品三区综合A片| 美女被操一区二区| 久久丁香九| 综合久久综合| 丁香5月啪啪| 激情五月综合网| 夜夜干 夜夜操| 成熟妇人A片免费看网站| 97碰操| 天天插天天狠| 丁香五月激情性色郤| 亚洲色五月婷婷| AV中文在线| 久热在线观看视频9| 婷婷成人综合| 日韩AAA| 久久99网| 丁香婷婷六月| 久久99免费视频| 思思视频这里是精品| 欧美精品熟女一区二区| 超碰人人99| 日韩AV免费电影在线播放| 在线观看av网站| 五月天激情网图片 - 百度| 婷婷五点亚洲| 色五月91| 欧美色激情四射| 激情综合99| 亚洲成色综合网站免费观看| 狠狠色噜噜狠狠| 大香蕉久操| 久久婷婷超碰| 九九这里只有精品在线视频| 99re热视频这里只精品5| 久机视频这只有精品| 无码少妇高潮喷水A片免费| 97婷婷丁香| 天天干夜夜欢| 99热这里只有精品66| 99热久97| 色情五月天首页| 99在线观看视频| 婷婷丁香五月在线观看91| 激情的五月婷婷蜜桃| 操操操Av| 色色操| 91视频久久久| 欧美成人精品老美女噜噜噜| 日本99久久| caop视频| 香蕉人在线香蕉人在线 | 玖玖99婷婷| 五月天日日操夜夜操 | 综合久久五月天| 四季8848精品成人免费网站| 国产综合久久久777777| 五月婷婷激情色情网| 成人在线99| 色色爽爽天天| 久热超碰91| 五月婷狠狠| 我爱va亚洲va52| 成人国产欧美大片一区| 就是色婷婷五月亚洲色| 日韩成人五月天| 99免费在线| 91久久久久久久久| 亚洲啪啪网| 色噜噜狠狠狠狠色综合久欧美| 五月丁香婷婷网网网网| 丁香五月久久| 久久综合性| 97狠狠色| 精品人妻在线| 色五月婷婷基地| 婷婷综合在线视频| 99精在线| 思思久久99| 久久停停超碰| 97人人操在线| 99久在线精品| 99久久99九九99九九九| 色五月婷婷伊人| 丁香婷婷视频在线| 欧美网站视频4399| 天天搞天天色综合| 色综合久久综合| 五月天婷婷社区| 六月婷婷久久| 激情五月综合|