免费国产精品自在自线-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
返回資訊列表
H亚洲| 日本片日本片祼观看网站在线看中文版网页在线看 | xxxx久| 夜夜撸日日骑| 久久婷婷五月综合成人d啪| 六月激情婷婷| 丁香五月香蕉| 日韩成人精品中文字幕电影| 五月的色婷婷高潮| 丁香五月婷婷久久综合激情网| 99热在线精品播放| 激情五月天婷婷激情| 这里只有精品视频99| 六月丁香激情综合网| 亚洲乱码日产精品BD| 五月深爱婷婷| 99在线视频女女视频| 丁香婷婷九月| 色五月色综合| 色一情一乱一乱一区91| 91操人人操| 丁香婷婷色| 婷婷久久性爱| 婷婷香草网| 日韩小视频在线99| 色噜噜综合网| 九月色婷婷综合亚洲| 五月丁香六月在线| 亚洲精品乱码久久久久99| 久草热8精品视频在线观看 | 精品久久艹| 色婷婷色五月丁香| 五月天婷婷免费| 99免费在线视频| 五月婷婷亚洲天堂激情在线| 大伊香蕉玖玖爱| 99无码视频| 99在这里有精品| 18久久| 日日操日日撸| 日本va欧美va国产激情| 五月四色婷婷| 亚洲激情四射| 国产成人在线不卡AV| 亚洲天堂色色| 99操逼| 99久久成人| 大香蕉人在线65| 欧美成人AAA片一区国产精品| 国产日韩亚洲欧美在线观看| 五月丁香婷婷AV天堂| 精品9久| 91人妻人人做人碰人人爽九色| 色色综合日韩| 99热思思在线观看| 九九RE视频在线精品| 成人无码精品1区2区3区免费看 | 五月丁香六月婷婷在线播放| 久久综合热17c| 日本99婷婷| 人人爽天天爽| 成人在线视频网| 亚洲久热无码| 五月花婷婷丁香| 精品视频这里只有精品| 天天曰夜夜爽| 久久这里精彩免费在线观看| 夜夜资源站| 一本到不卡高清DVD| 久久伊人婷婷| 久久激情五月婷婷| 中文字幕av在线| 99精品久久久久久久婷婷久久 | 日本色色色| 色五月欧美| 无码激情AAAAA片-区区| www.激情五月天.com| 狠狠搞狠狠操| 色色色图| 九九亚洲| 色婷婷五月综合在线| 99久久免费精品| mmm1717.6dbm人人爱人人操| 久久亚洲色导航| 91大神操美女| 99操视频| 五月丁香久久精品在线观看| 色色色综合视频| 精品五月视频婷婷在线观看| 天天爱天天做天天舔| 激情婷婷丁香五月天| 丁香 亚洲 久久| 亚洲日本三级片| 丁香五月影院| 婷婷99视频在线| 91操操| 97色色视频| 丁香五月天激情| 狠狠爱激情网| 少妇人妻偷人精品无码视频新浪| 亚洲精品字幕| 激情丁香久久| 国产激情综合五月久久| 色播丁香五月婷婷操:屄| 亚洲精品操一操、噜一噜、摸一摸、爽 | 天天色中文字幕女优AV| 无码一级片| 丁香五月婷婷少妇| 色情综合网| 久久亚洲婷婷| 九九久久99| 五月丁香少妇网| 婷婷五月天无码熟女| 99激| 色婷婷五月视频| 婷婷丁香小说| 婷婷99| 丁香六月激情| 日韩三级高清无码| 狠狠丁香| 婷婷丁香人妻久久在线观看| 九色无码| 激情内射人妻1区2区3区| 国产乱子轮XXX农村| 99精彩视频网站在线| 超碰日韩成人| 欧美 日韩 成人在线| 超碰99在线观看| 五月久久五月激情| 99热九九热| 成人在线日韩欧美| 99ER热精品视频| 日韩三十六页| 激情q青青草在线婷婷| 五月丁香婷婷综合在线| 99热.com| 91九色在线| 久久丁香五月婷婷激情综合网| 青青草蜜臀| 婷婷金品综合视频| 中文毛片无遮挡高潮免费| 99久久国产宗和精品1上映| 少妇人妻丰满做爰XXX| 九色在线五月婷婷网址| 丁香婷婷精品视频| 99成人| www.婷婷五月| 国产AV不卡福利| 操碰97| 婷婷五月天激情综合深爱| 99热精品在线播放| 婷婷五月天伊人| 欧美六月婷婷| 婷婷 激情 五月| 五月天天天色| 97久久久久久久久久久| 在线五月婷婷小电影| 天天做 天天爱| 9999三级片| 9精品久久999| 色五月激情视频在线综合| 五月婷婷之美女图片| 女婷久久| 久综合色| 丁香婷婷91在线观看视频| 丁香色五月婷婷17C| 色色色色色网站| 婷婷金品综合视频| 成人网在线视频| 五月丁香天天| 日日操天天操| 亚洲日韩国产黑丝黑丝AVAV一区二区三区| 免费视频无码| 在线成人av播放| 狠狠操.com| 日本五月婷| 久久久国产精品黄毛片| 婷久看人爽| 亚洲第一成人无码A片| 九月丁香八月婷婷加勒比| 五月6香色婷婷视频| 亚洲色视频| 99视频这里有精品| 99精品视频免费观看,| 噜噜五月天综合| 91人人操| 久久婷五月婷| 色色热99| 成人综合网站| 婷婷免费无视频| 欧美狠狠一在草| 亚洲色夜| 五月婷婷AV| 色色色com| 五月天婷婷色播综合在线| 99热色无码| 久久色婷婷| 久久大香蕉同僚| 俺去也五月天婷婷| 久久hd| 免费视频这里只有精品| 99ri视频在线观看| 欧美综合五月丁香六月婷| 在线亚洲综合网| 丁香五月综合在线观看| 无码一级片| 79色色色色| 爱iii做iiii日日| www.五月婷婷久久.com| 亚洲av| 26uuu欧美亚洲日韩| 日日夜夜狠狠| WWW.桔色成人.COM| 99热大| 国产在这里只有精品| 97碰 在线视频观看| www,五月天激情| 亚洲丁香婷婷| 婷婷五月天堂| www.五月天婷婷姐姐| 久久AAAA片一区二区| 天天插天天日天天爽| 91九色最新视频| 婷婷激情五月天亚洲综合| 一本色道久久88加勒比| 久草大| 99热欧美在线观看| 亚洲欧美国产A片免费观看| 91色情播放| 99热碰碰| 99热网精品| 色婷婷成人| www.婷婷,com| 中文字幕人妻熟女在线| 久久爱婷婷| 久热婷婷| 五月丁香亚州综合网| 狠狠干天天日| 熟女婷婷网站一婷婷五月一丁香婷婷一婷婷激情网 | 在线观看欧美3区| 日日撸夜夜操| 99在线视频在线观看| 色婷婷五月综合色婷婷| 激情五月婷婷视频一区二区三区| 婷婷五月天激情综合网| 久久总和99| 狠狠综合网| 色丁香婷婷美女视频网站| 亚洲色图啪啪| 三人荫蒂添的好舒服A片| 五月开心深深爱激情综合| 久99久在线观看| 国产亚洲精品久久久久久郑州| 九九色热视频| 丁香婷婷免费| 五月丁香成人| 国产性爱色| 天天干天天干天天干天天干天| 五月天婷婷色播| 久久久久五月丁香| 国产美女无遮挡裸体毛片A片 | 婷婷天天婷婷天天澡| 丁香五月综合婷婷| 色一情一乱一乱91Av| 丁香五月激情网| 亚洲精品国产精品乱码视99| 日日肏天天操| 婷婷激情综合无月| 婷婷丁香五月亚洲欧美| 久久丁香五月| 久一网站| 丁香狠狠操| 精品夜夜澡人妻无码AV| 4399成人黄A片| 激情綜合W W W,激情五月天| 丁香综合伊人AV| 婷综合| 久久这里只| 深夜婷婷五月丁香| 久久色频| 99re6热在线精品视频播放速度| 久久5 9视频免费观看| 99性色| 五月丁香五月综合欧美| 久久久精品色| 人草人人| 人人干人人看| 极品另类| 五月丁香激情婷婷| 丁香五月婷婷基地| 天天婷婷综合亚洲亚洲| 日日操夜夜爽| 丁香五月AV| 91成人视频| 99这里只有| 五月天婷婷成人资源站| 日日激情网| 99热精品10| 精热在线综合网| 五月丁香久久综合| 啪啪一区| 99热日韩这里只有精品| 日韩一区二区三区无码| 丁香六月视频免费观看| 99亚州综合精品成人网| 婷婷久久精品| 五月婷婷中文字幕| 天天干天天拍| 大香蕉婷婷婷| 久热99热| 五月婷婷丁香啪啪| 开心五月激情五月丁香五月婷婷| 99热这里只有免费| 99综合视频| 亚洲无码yw| 五月天丁香婷婷社区| 五月丁香在线观看| 激情综合网五月婷婷| 成人在线日韩| 国产真实乱对白精彩| 色色色五月天婷婷| 91日日日| 色五月婷婷、老熟女| 五月社区婷婷激情| 婷婷五月影院| 涩五月婷婷| 亚洲欧洲中文日韩久久AV乱码| 九九热精品视频在线观看| 最近中文字幕2019视频1| 国产日韩欧美| 日韩无码乱轮| 色五月婷婷丁香国产在线| www.操逼comm| av在线观看网站| 欧美色色色| 婷婷激情久久| 99久久精彩视频。| 五月丁香六月婷婷国产视频| 99热伊人| 亚州综合色| 66精品国产成人| 激情影院免费视频婷婷五月天| 色婷视频| 大香蕉五月天| 伊人久久大香天蕉亚洲特级| 天堂婷婷五月在线| 天天干天天插| 国产AV一区二区三区最新精品 | 99干在线视频| 天天日天天做天天舔| 五月久久网| 91天天操天天干天天射| 天天开心AV色综合婷婷五月天| 激情VA视频| 思思精品视频| 俺也去色| 天天肏高清在线| 91久久久久久久| 99热日本| 99精品在线观看| 男同色五月开心五月激情五月| 懂色av蜜臀av粉嫩av永陈冠希| 久热9| 婷婷五月深爱五月| 久久久亚洲精品一区二区三区浴池| 91丁香色| 色色综合色视频| 99色免费视频| 国产午夜精品一区二区| 91av成人| 天天草狠狠擦| 狠狠做婷婷| 久久看九九90| 极品 少妇 内射| 思思热视频| 超碰国产在线| 色色色色五月天| 天天天日天天天干| 亚洲综合网在线| 久久久久8888| 六月婷婷在线| chaopengdaxiangjiao| 海外网站专业操老外| 99热精品一区| 婷婷丁香六月天| 丁香五月123| 99在线看片| 大香蕉综合在线| 最新AV在线观看| 激情五月丁香色婷婷| 亚洲精品在线视频| 99热亚洲综合| 丁香六月伊人| 亚洲岛国电影| 99免费视频精品| 男男野外做爰全过程69| 国产色色网址网站| 色色色色网站| 五月丁香91| 日亚二欧美| 996热re视频在线观看视频| 五月天色官网| 亚洲三级无码| 婷婷放心五日爱| 中文字幕人妻在线| 久久在线大香蕉| 深爱激情69热| 激情婷婷五月综合| 国产三级片91| 五月丁香啪啪啪综合网| 九月婷婷综合| 九九国产精视频| 久久视频这里有精品99| 俺也去婷婷五月天第五色| 九九精品综合| 五月丁香激情四射综合| 婷婷五月天激情小说| 欧美啪啪9| 97色色网| 亚洲天堂爱爱| 亚洲AV成人精品日韩在线播放| 另类综合激情| 婷婷五月在线观看| 日本特黄aaaaa| 性爱综合网| 成年AAAA色情| 亚洲综合五月天婷婷| 久久机只有这里精品| 五月丁香婷婷成人网| 蜜桃婷婷狠狠久久| 亚洲 精品 综合 精品| 99热这里只有精品免费| 伊人国产婷婷五月天| 青青青在线视频国产| 色色综合日韩| 色综合播放| 五月天俺去也| www久久久久| 亚洲国产精品VA在线看黑人| 亚洲精品无码久久| 99热久久这里只有精品| 婷婷丁香五月综合激情视频| 97极品在线| 婷婷色婷婷| 五月丁香婷婷福利| 五月丁香本色在线观看| 色综合色| 狠狠操.com| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 激情丰满熟妇五月| 天堂久久大香蕉| 五月天丁香久久| 成人在线网| 五月婷在线| 怡红院院久久| 精品久久99码| 九九丁香社区欧美激情| 婷婷六月激情| 五月天伊人日日噜影片AV| 色五月色情| 91丨九色丨白浆| 色五月丁香五月五月婷婷| 久99999热视频在线观看免费| 天天操夜夜爱| 天天色天天爽| 免费超碰在线| 99热国产| 久草视频一,二三四| 中国AV性爱观看| 国产性爱一级| 日操夜操天天操不卡| 激情开心五月天| 午夜青草资源| 日本97在线视频| 99在线观看| 六月婷婷九月丁香亚洲综合| 在线观看亚洲视频影院| 丁香五月综合狠狠| 色婷五月| 丁香婷婷成人网| 99无码视频| 日韩精品99久久| www色五月| 婷婷深爱五月丁香| 色狠狠综合网| 亚洲婷婷五月草久| 亚洲激情AV| 婷婷黄色网| 日韩成人电影AV| 久久东京热婷婷五月| 色宗合久久五月婷婷| 亚洲天堂爱爱| 大香蕉人人网| CAOBIBI| 亚洲视频一区| 人人干av| 久草五月| 狠狠插狠狠操| 东京热伊人| 婷婷五月情天| 色婷婷五月天综合网| 五月丁香色婷婷婷基地| 色婷婷综合网| 激情婷婷五月综合| 麻豆忘忧草午夜| 人妻内射一区二区在线视频| 狠狠色噜噜狠狠狠狠综合| 五月丁香综合影院| 伊人婷婷五月天| 亚洲天天综合| 日韩欧美一级大黄网站| 色婷婷香蕉丁丁网| 丁香五月综合福利视频导航| 狠狠擼综合| av婷婷丁香 六月| 日本精品99| 天天综合久久| 色丁香久久| 丁香五月人妻| 99啪啪视频| 狠狠99| 激情五月丁香社区| 亚洲成人综合在线| 久热精品视频在线观| 色婷婷伊人| 色呦呦免费观看| 丁香五月首页| 九九操操| 婷婷五月天激情综合| 一本道综合网| 天天摸人人摸| 可以看的AV网站| 天天色天天爱天天爱天天爱y| 亚洲日日日| 九九热这里只有精品6| 99精品视频免费观看| 欧美色色色色色| 五月婷婷色播| 久久人妻久久| 粉嫩AV久久一区二区三区| 丁香五月影院| 四色五月视频| 五月丁香久久| 东北婷婷五月天| 丁香久久久| 亚洲欧美一区二区三区四区爱爱动图| 五月丁香六月婷婷姐| 久久丁香五月| 97人人射| www.99.色| 伊人久久综合| 色五月婷婷天天干| 六月婷婷在线视频| 亚洲在线综合| 午夜69成人做爰视频| 日韩人妻在线播放| 天天爽爽日日做做| 亚洲综合婷婷六月丁香五月| 亚洲综合狠狠艹| 五月婷在线视频免费看| 婷婷色网| 五月天婷婷涩涩| 色色免费网站| 欧美色色色| 人妻操逼视频| 天天干天天做| 操逼五月天| 丁香九月综合激情| 99性爱无码| 日韩色五月| 亚洲综合在线视频| 草榴视频网| 婷婷丁香成人在线视频| 91丨九色丨高潮丰满日本| 欧类av怡春院| 91色逼| 久热中文字幕在线线观看| 亚洲综合另类| 日韩av手机在线观看| 97欧美在线| 无码人妻一区二区三区免费九色| 91热在线| 国产第99页| 丁香六月啪啪啪| 婷婷情色激情| 色色色五月婷婷| 色综合av超碰| 国产精品视频久久99| 丁香婷婷网| 激情婷婷激情在线不卡| 美女婷婷六月色| 91九色国产| 99热伊人综合| 天天日夜夜夜操操操操| 日韩操人| 高清成人综合| VfJxEwPH| 怎么样可以看免费的一级av| 天天日天天干天天爱| 婷婷五月天亚洲五码| 中国无码av| 丁香五月电影| 色色五月婷| 成人在线观看一区| 夜夜操天天爽| 国产精品VIDEOSSEX久久发布| 亚洲人妻Av| 人妻操逼视频| 热99热久| 亭亭五月色男人| 97伦乱| 婷婷激情五月综合基地| 国产亚洲精品久久久久久郑州| 99热九九这里只有精品| 日本久久精品| 五月丁香婷婷在线| 在线只有精品| 性日本激情| 91婷婷丁香| 日本网站久久| 五月在线| 色99婷婷五月天| 久热播这里只有精品| 玖玖91| 五月丁香婷婷人体| 九九色网专区| 97好吊操| 久久99久久久久久久噜噜| AAA亚洲AV| 日本色色影片| 丁香五月综合AV在线| 97男人天堂| 3www激情| 九九偷拍网| 久久女人天堂| 婷婷丁香熟妇综合网| 日本色道视频网站| 色黑鬼导航| 粉嫩AV久久一区二区三区| 五月婷六月综合在线观看| www五月| 99热精品一区| 久久久久久久,99精品视频| 99综合免费视频| 天堂色色色| 91视频精品99| wWwCom夜操wwW| 狠狠干天天日| 91啪级电影| 人人操婷婷| 99热国产免费| 久久一热免费视频| 九九综合九色欧美狠狠| 丁香五月天视频| 亚洲激情四射| 在线看片h站| 99热精品中文字幕| 色播五月婷婷综合| 日韩欧美性爱| 久久五月婷| 激情综合五月色在线| 九久久九精品视频| 97色女人在线| 天天在线久久综合 | 丁香五月天激情免费在线观看AV777| 色婷婷激情五月天| 成人在线99| 婷婷丁香人妻久久在线观看| www..999热久| 无码激情AAAAA片-区区| 亭亭五月丁香五月天激情| 日本乱论99| 日韩成人网址| 可以免费看的AV网站| 婷婷在线精品| 色播五月丁香综合| 午夜性做爰电影| 色色色色色色网站| 99久久思思| 色色日本欧美| 免费看欧美成人A片无码| 欧美这里只有精品| 色9色| 91一道本| 日日操夜夜爽| 五月亭亭性| 婷婷伊人无码| 丁香五月婷婷激情四射| 91人人人人人人人| 女人高潮内射99精品| 五月婷婷五月丁香| 色婷婷五月天堂资源| 丁香婷婷黄网站| 日韩啪啪自拍| 五月激情四射网站| 久久五月天婷婷| 噜噜国产| 久久偷拍综合五月天| 激情精品久久| 狼人久草| 久久看婷婷| 一本九九色| 国产毛多水多女人A片| 91丨九色丨熟女| 六月婷婷开心| 色永久| 五月丁香综合久久| 亚洲色婷婷网站| 亚洲婷婷视频| 99在线观看视频| 六月丁香色色色| 久久久日韩特色特黄AAAA| 天天操天天插| 伊人综合网站| 婷婷色网| 91Chinese在线| 天天日夜夜爽| 婷婷五月成人| 免费AV播放| 99在线观看| 99热这里只有精品在线观看| 操91| 婷婷五月天福利| 久久99网站| 99久.| 毛片色五月| 婷婷五月花丁香| 69色色视频| 爱婷婷五月| 丁香五月天在线| 天天日日夜夜爽。| 亚洲色激情| 色婷婷五月天在线观看| 久色| 激情四射网| 天天操天天曰| 99热色精品| 8090在线影视少妇| 久久久亚洲成人无码A片| 97碰碰草| 亚洲自拍天堂| 99er日韩| 五月丁香六月婷婷中文版| 色播播之激情五月婷婷| 九九九九这里只有精品| 久久怡红院| 亚洲激情综合网| 五月丁香狠狠爱| 久99999热视频在线观看免费| 小香蕉av| 2015WWW永久免费观看播放| 久久综合无| 色婷婷成人| 激情都市五月天| 99色精品视频| 日夜夜天天| 99色亚洲| 日韩啪| 九九热超碰| 激情婷婷五月丁香啪啪啪| 大伊香蕉玖玖爱| 五月婷婷啪啪| 色色欧美色色色| 色五月,婷婷大香蕉| 噜噜操操| 婷婷婷色五月| 久久婷婷国产| 乱精品一区字幕二区| 爱iii做iiii日日| 超碰大香蕉网| 另类激情五月| 婷婷午夜综合| 97人妻超级碰碰碰碰碰| 婷婷爱五月| 五月天合网| 草综合14| 五月综合色| 日本免费91| 日韩一66精品| 久久性爱视频| 香蕉久久国产AV一区二区| 丁香五月婷婷天堂大香蕉| 99热永久在线观看| 99视频激情四射| 婷婷精品| 婷婷婷久久久| 天天综合网亚洲综合网| 狠狠操狠狠爱| 日韩三级视频一区二区| 亚洲激情五月婷婷日日| 狠狠爱婷婷爱| AV色色天堂中文| 五月婷婷六月丁香| 色综合激情| 日韩精品AV一区二区三区| 久久婷青青草原| 婷婷综合网| 丁香六月五月天| 图片区 小说区 区 亚洲五月| 婷婷性爱综合| 久久网思思| 婷婷五月天网址| 美女爆乳18禁www久久久久久| 热99国产精品| 99A级片| 黄色片avv| 热的国产99热| 丁香五月色情| 九九色之九九色之88| 婷婷丁香激情| 久久AAAA片一区二区| 色人久久| 色婷婷五月中文字幕在线dvd| 4399无码视频| 99热精品网| 超碰免费人人| www久| 五月丁香在线| 天天操五月天| jizzdr| 久综合九综合99| 去干网最新版本亚洲版| 最近中文字幕大全免费版在线| 亚洲激情婷婷| 欧美97色| 久久久五月五丁香| 中文字幕综合| 婷婷五月精品中文字幕| 婷婷丁香五月色| 丁香五月婷婷欧美成人色图| 日本久久爱| 天天综合精品| 中国AV性爱观看| 国产美女无遮挡裸体毛片A片| 丁香婷婷五月天亚洲| 丁香五月成人| 九九国产视频| CHINESE熟女老女人HD视频| 丁香五月激情婷婷视频| 久久激情网| 九九色中文| 六月丁香久久| 五月天色在线| 伊大人久久| 婷婷色欧美激情| 天天肏天天肏| 操九色| 91碰碰视频| www激情| 五月天开心成人网| 人妻有码乱操| 另类激情首页| 激情啪啪五月| 婷婷色导航| 色综合五月婷婷狠狠干| 亚洲成人av在线观看| 激情丁香六月| 色你久久| 日韩免费视频| 五月花丁香婷婷| 97色在线观看视频| 99热6这里只有精品| 五月天婷婷久久日| 99久久综合狠狠综合久久| 岛国AV网| 亚洲成人高清在线| 国产欧美精品AAAAAA片| 97五月天婷婷| 五月婷婷综合久久| 久久婷综合| 九九热手机在线视频| 91丨九色丨老农村| 综合婷婷| 天天热夜夜操| 99操无码视频观看| 久色网| 五月婷婷 激情五月| 婷婷色五月激情强奸四射| 免费黄色视频网址| 丁香五月开心婷婷| 深夜男女福利刺激影院一区| 婷婷五月天99综合网站| 九九性爱网| 色综合色综合色综合高潮| 婷婷五月娱乐在线| 涩涩涩五月天| 狠狠色噜噜色狠狠狠综合久久成人波 | 丁香五月天堂网| 99av视频| 欧美一级色| 狠狠狠狠青草| 丁香六月激情综合| 手机免费福利视频| 激情啪啪五月天| 黄色99热| 91在线操逼视频| 秋霞A V毛片| 亭亭色天香| 九九99免费理论| Aaa久久| 婷婷激情六月| 久久婷婷综合五月天| 五月噜噜噜色综合| 久婷久婷激情肉| 国产性av| 久久精品99| 99色视频| 天天色综合图片| 五月丁香爱婷婷深深| 久热伊人在91| 丁香花社区av| 狠狠综合网| 亚洲欧洲国产精品| 热99只有里视频| 五月丁香六月色婷婷综合五月天| 91视频综合网| 欧美日韩成人h| 国产这里只有精品| 操碰97| 久久激情五月婷婷| 天天爽综合网| 青草久久五月婷伊人| 丁香五月婷婷激情小说| 九九热在线99| 99爱在线| 农村熟妇高潮精品A片| 生活片五区| 天天插天天爽| 乱轮A片| 丁香激情六月天婷婷| 五月天激情黄色小说在线观看| 五月天丁香花婷婷| 99久久久精品| 婷婷大香焦| 五月天丁香婷婷网| 五月天婷婷小说| 激情六月婷婷| 老司机伊人| 九热...av| 欧美六月| 婷婷人人操| 日韩人妻在线观看| 色欲婷婷五月天丁香| 婷婷五月天成人综合网| 亚洲AAA| 天天做天天双| 岛国av网| 婷婷玉月丁香五月在线视频| 99色热视频| 色五月天天| 久久婷婷色| 国产婷婷色五月| 国产激情综合| 亭亭丁香久久五月| 日日做A爰片久久毛片A片英语| 91视频免费后入强操| 99久久五月天| 天堂久久婷婷| 亚洲碰碰碰| 97在线精品| 欧美在线干| 色五月丁香五月激情五月激情| 操操啪| 97色婷婷成人综合在线观看| 五月网激情| 99热精品少| 激情激情激情网| 婷婷五月天a| 热99AV网站| 五月婷婷婷丁香播| 丁香六月五月天| 婷婷在线精品| 成人午夜天| 色色色五月| www.久久久久久| 他改变了拜占庭| 五月婷婷六月丁香激情综合网| 婷婷射图五月天| 五月激情婷婷在线| 123草逼网| 可以免费观看的AV| 国产真实乱了老女人视频| 丁香六月婷婷激情| 婷婷五月,偷窥偷拍网| 超碰九色| 婷婷丁香六月激情综合| 99视频精品在线| 另类A片| www.色婷婷.com| 色噜噜婷婷| 丁香花综合永久入口| AV色婷婷| 色婷婷精品小视频| 婷婷五月激情图片| www.99视频| 综合五月激情| 久久婷.com| 呦呦视频无码播放| 激情五月天开心| 久热这里只有精品6| 国产成人综合亚洲| 亚洲AV无码影院| 亚洲成色综合网站免费观看| 婷婷五月花西瓜| 激情五月影院| 九月婷婷人人操人人舔人人爱| 色v综合网| 我爱va亚洲va52| 丁香五月婷婷偷拍| 国产美女无遮挡裸体毛片A片| 久re热视频| 婷婷色五月天第7色| 色色日本欧美| 久久人妻视频| 日韩 中文 欧美| 六月婷婷日| 五月丁香综合激情| 99只有精品9| 这里有精品99| 色五月婷婷九月| 日本人人超碰| AV在线免费播放| 婷婷射丁香| 公的粗大挺进了我的密道 | 久99在线视频| 亚洲人人干| 日韩aaaaa| 久久久九九视频精品18| 99久久综合网| 五月婷婷六月丁香| 伊人五月天97| 天天透天天摸天天舔| 婷婷综合久久| 亚洲第一成人无码A片| 婷婷五月天综合在线| 四川BBB搡BBB爽爽视频| 五月丁香婷婷爱激情综合网| 日逼免费视频| 玖玖婷婷五月天| 激情九月婷婷| 99性爱| av电影在线播放| 狠狠色狠狠鲁| 欧美日综合| 成人网丁香五月| 免费精品66| 丝袜大香蕉| 激情中文在线| 能看的av| 99热人人操人人操| 日本AAAAAAAAAAAAAA片| 婷婷五月天福利| 色欲婷婷夜夜| 色色色999| 久久婷婷综合国产| 五月婷婷丁香六月| 午夜九九九九九九| 丁香五月天激情视频| 亚洲超碰青涩| 婷婷五月天成人综合网| 男女啪啪做爰高潮无遮挡| 思思视频这里是精品| 久久激情网| 丁香婷婷五月天网站| 五月婷丁香| 五月丁香六月在线欧美| 91精品久久久久久77777| 婷婷成人综合| www99精品| 超碰99在线观看| www.99热| 人人玩人人橾| www.夜夜| 色婷婷色五月丁香| 无码人妻AV久久久一区二区三区| 激情精品久久| 538在线精品| 这里只有精彩亚洲视频推荐| 91丨九色丨国产| 激情婷婷五月社区| 区啪精品| 91综合国免费久入| 色播综合| 疯狂做受XXXX高潮A片动画| 狠狠色丁婷婷日日,伊人激情综合网| 国产成人精品亚洲线观看| 色五月丁香激情视频| 丁香性爱在线视频| www.成人婷婷综合| 在线观看996精品| 久婷婷| 99热在线免费观看精品| 欧美成人AAA片一区国产精品| 色欲五月婷婷| 激情国产综合| 激情五月天影院| 五月天婷婷自拍图片在线观看| 99久久喉9| 久热这里只有| 在线观看五月婷婷网| 精品人妻伦九区久久AAA片| 五月丁香婷婷激情澎湃四射| 东京热人妻一区二区三区在线| 久热综合| 婷婷五月天无码视频| 丁香五月很很肏| 丁香六月婷婷开心| 亚洲成人电影aaaa| 激情五月婷婷丁香综合网| 色色色综合色| 色综合爽| 日本在线播放97| 啪啪婷婷五月天激情| 他改变了拜占庭| 九九精品大香蕉| 六月婷婷五月丁香| 国产成人VA| 婷婷丁香五月基地| 五月天激情网站| 丁香5月婷婷| 久热这里只精品| 五月日韩中文字幕| 外国碰视频网站97| 99亚洲综合| 色噜噜五月丁香婷婷| 天天干 夜夜爽| 99热这里只有精品免费观看| 铁牛TV人妻| 欧美日韩精品人妻狠狠躁免费视频| 久久婷婷五月| 婷婷在线观看五月天在线视频| 黄色短视频在线观看| 国产在这里只有精品| 日日操天天| 色狠狠狠干| 91人碰| 无码少妇高潮喷水A片免费| 美女激情综合| 激情五月婷在线精品| 亚洲精品色色| 就去色色五月丁香婷婷久久久| 色一情一乱一乱一区91Av| 五月成人综合| 性爱先锋AV| 狠狠五月激情丁香六月| 国产黄大片在线观看画质优化| 另类综合激情| 婷婷色五月综合| 天天色,天天操,天天射| 五月丁香无码| 9伊人网| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 色爽九九| 五月天综合在线观看| 啄木鸟黑丝一区二区| 五月综合久久| 色欲久久久久久综合网综合网| 久久9情免费| 超碰精品在线| 国产亚洲99久久精品| 欧美xx激情视频在线观看| m色激情网| 日日天天操| 色婷婷国产精品综合在线观看| 日本97人人| 99视频| 五月激情影院| 天天久久狠狠色综合| 五月天婷婷成人网| 色五月丁香五月婷婷五月成人网| WWW五月天| 热热久久精品视频| 久久9久| 成人婷99最新| 4399高清无码视频| 91色欲综合| 婷婷5月久久综合网站| 色狠狠色噜噜AV天堂五区| 五月丁香六月停停| 婷婷丁香色五月久久88| 思思99精品视频| 国产在线黄色| 五月丁香啪啪激情| 另类视在线| 中文精品在| 99re这里只有| 夜丁香综合| 久久这里只有国产精品视频| 亚洲AV无码久久精品色欲| 思思久久96热在精品国产,| 天天色天天色天天色天天色天天色天天色| 久9热| 五月丁香久久网| 天天色播| 九九热AV| yazhou seshipin| 欧美成人网婷婷综合在线| 五月天免费色| 天天摸天天高潮天天爽| 天天摸日日舔狠狠添婷婷婷| 久久在线人妻| 99热最新网址| 激情综合丁香五月| 激情丁香五月婷婷| 欧美性爱中文字幕| 丁香五月中文字幕| 97超碰人人操| 婷婷丁香五月综合| av在线免费播放| 日日夜夜狠狠| 黄色片久久| OYIWbGcPu8H| 香蕉97碰碰碰超视精品| 婷婷激情人妻| 狠狠色噜噜狠狠色噜噜噜999| www.minyis.com【JT】实力收量可预付TG@LXSPSW8| 久久激情五月| 中文无码精品一区二区三区| www.五月丁香av| 综合久久99| 9久久久久久久久久久| 五月天伊人网| 婷婷无五月无码视频| 免费V片在线| 婷婷五月丁香综合| 伊人五月天日日夜夜久久久天天| 亚洲小说欧美激情| 久久99热免费最新版| 97视频久久| 风流少妇A片一区二区蜜桃| 大香蕉 婷婷| 黄色激情久久| 丁香婷婷射| 色婷婷视频在线| 日韩无码色色| 国产乱妇乱子在线播视频播放网站| 国产女生爱爱AA| 大香蕉AV在线| 婷婷之六月丁香| 婷婷综合精品| 极品人妻VIDEOSSS人妻| 色色五月激情| 国产激情综合五月| 丁香月六月| 亚洲精品成人| 成人无码精品1区2区3区免费看| 五月婷久久综合| 国产日批视频免费播放| 狠狠狠狠狠草| 国产亚洲色婷婷久久99精品91| 五月四色激情| 香蕉狠狠爱视频| 国产一区男女| 五月婷婷综合久久| 大香伊人久色| 久久九九网| 色丁香影院| 色婷五月天| 色吊丝99| 开心五月婷婷激情| 舔色婷婷| 天天干一干| 99热亚洲| 婷婷五月另类网站| 婷婷激情六月| 日本精品干|