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

ARTICLE DETAIL

資訊詳情

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

Odoo SaaS Kit實(shí)戰(zhàn):Docker多租戶實(shí)例管理與部署

Odoo SaaS Kit實(shí)戰(zhàn):Docker多租戶實(shí)例管理與部署 簡介這是一份圍繞 Odoo SaaS Kit 的 PDF 技術(shù)文檔重點(diǎn)講解基于 Docker 的多租戶 Odoo 實(shí)例管理系統(tǒng)面向已有服務(wù)器管理和 Odoo 使用經(jīng)驗(yàn)、負(fù)責(zé)企業(yè)級應(yīng)用部署與運(yùn)維的 IT 專業(yè)人員。文檔覆蓋部署鏈路安裝 docker、erppeek、paramiko 等 Python 庫規(guī)劃 Odoo-SAAS-Data、docker_vhosts、common_addons 目錄構(gòu)建基礎(chǔ) Odoo Docker 鏡像配置 Nginx 虛擬主機(jī)與 PostgreSQL并為 Odoo 用戶授權(quán) Docker 與 Nginx 控制權(quán)限。隨后說明如何配置 SaaS 服務(wù)器、創(chuàng)建訂閱計(jì)劃使客戶自助生成實(shí)例同時(shí)設(shè)置計(jì)費(fèi)周期、試用期與模塊列表還特別提醒構(gòu)建鏡像時(shí)須保持主機(jī)與容器內(nèi) Odoo 用戶 ID 和組 ID 一致避免共享文件夾權(quán)限問題。針對實(shí)際運(yùn)維文檔整理模塊上傳、域名管理、日志查看、備份恢復(fù)和重啟客戶端進(jìn)程等常見問題解法便于快速排障。資源包共 1 個(gè) PDF 文件大小 3.99MB適合作為部署參考與運(yùn)維手冊。目前已有 140 人瀏覽學(xué)習(xí)適合有 Docker 與 Nginx 基礎(chǔ)的技術(shù)人員直接借鑒。1. Odoo SaaS Kit為什么多租戶實(shí)例管理是Odoo商業(yè)化繞不開的一道坎做Odoo實(shí)施的團(tuán)隊(duì)遲早會遇到同一個(gè)問題客戶從3家漲到30家不可能給每家單獨(dú)買一臺服務(wù)器也不可能在一套Odoo里塞三十個(gè)互不相干的業(yè)務(wù)庫。Odoo SaaS Kit這個(gè)方向解決的就是這件事——用Docker把每個(gè)租戶的Odoo實(shí)例、數(shù)據(jù)庫、資源配額管起來做到開新客戶像開賬號一樣快。它不是某個(gè)插件而是一整套“部署配置管理”的方案容器編排管實(shí)例生命周期PostgreSQL隔離租戶數(shù)據(jù)反向代理按域名分發(fā)請求再加一套運(yùn)維流程做備份、升級和擴(kuò)容。適合正在做Odoo實(shí)施交付的顧問、小團(tuán)隊(duì)SaaS創(chuàng)業(yè)者以及要給客戶提供Odoo訂閱服務(wù)的技術(shù)負(fù)責(zé)人。2. 先搭地基Odoo SaaS Kit 的架構(gòu)選型與Docker最小拓?fù)?.1 多租戶的三種隔離方式為什么最終選“一實(shí)例一庫一容器組”O(jiān)doo做多租戶隔離方式大致有三條路共享數(shù)據(jù)庫共享Schema、共享數(shù)據(jù)庫獨(dú)立Schema、獨(dú)立數(shù)據(jù)庫。第一條路在Odoo里基本走不通因?yàn)镺doo的模塊安裝在數(shù)據(jù)庫級別不同客戶裝了不同模塊之后公共表結(jié)構(gòu)根本沒法統(tǒng)一。第二條路要改造ORM層動到Odoo框架底子風(fēng)險(xiǎn)大且升級時(shí)每次都要打補(bǔ)丁不適合長期維護(hù)。SaaS Kit走的是第三條路每個(gè)租戶一個(gè)獨(dú)立PostgreSQL數(shù)據(jù)庫前端可以共用一套Odoo容器也可以每個(gè)租戶獨(dú)立容器組。新手階段建議從“共用Odoo容器獨(dú)立租戶庫”起步成本和運(yùn)維量最低等某個(gè)租戶的負(fù)載明顯影響其他人時(shí)再把這個(gè)租戶拆成獨(dú)立容器組。這套方案依賴Odoo官方就支持的多數(shù)據(jù)庫機(jī)制PostgreSQL里建了庫Odoo通過db_filter參數(shù)自動識別可用的租戶庫不需要改Odoo源碼。隔離性、升級靈活性、交付速度三個(gè)維度上它都是最穩(wěn)的折中。2.2 最小容器拓?fù)淅锩總€(gè)角色的職責(zé)與關(guān)鍵參數(shù)一套能跑起來的SaaS Kit最小拓?fù)涫撬膫€(gè)容器PostgreSQL、Odoo、Redis、Nginx。數(shù)據(jù)庫負(fù)責(zé)租戶數(shù)據(jù)隔離Odoo負(fù)責(zé)應(yīng)用邏輯Redis在Odoo里做session存儲和緩存Nginx負(fù)責(zé)按域名把請求路由到Odoo。四個(gè)容器放在同一個(gè)自定義bridge網(wǎng)絡(luò)里互相通過容器名通信。容器角色鏡像關(guān)鍵端口職責(zé)dbpostgres:165432每租戶一個(gè)獨(dú)立databaseodooodoo:208069處理HTTP請求與業(yè)務(wù)邏輯redisredis:7-alpine6379session存儲、緩存nginxnginx:1.27-alpine80/443域名路由、TLS終止、WebSocket轉(zhuǎn)發(fā)Odoo容器里有幾個(gè)參數(shù)直接影響多租戶行為必須在compose里顯式聲明。db_filter告訴Odoo哪些數(shù)據(jù)庫屬于租戶常見的做法是設(shè)為^odoo_只匹配以odoo_開頭的庫避免把PostgreSQL里其他管理庫暴露到前端。list_dbfalse關(guān)閉數(shù)據(jù)庫列表展示防止用戶在登錄頁看到全部租戶庫名。proxy_modetrue讓Odoo信任Nginx轉(zhuǎn)發(fā)過來的HTTP頭否則生成的回鏈URL會帶上內(nèi)網(wǎng)端口。workers數(shù)量一般按CPU核數(shù)*21估算max_cron_threads保留1個(gè)線程跑定時(shí)任務(wù)多租戶場景下cron線程太多會互相搶數(shù)據(jù)庫連接。2.3 版本鎖定為什么從Odoo 20和PostgreSQL 16起步鏡像tag選擇上我的建議是直接鎖定Odoo 20和PostgreSQL 16不要用latest。latest在Docker里是個(gè)黑匣子今天拉下來能用三個(gè)月后再拉可能就是新版本升級引發(fā)的兼容問題排查起來非常被動。Odoo 20是目前社區(qū)活躍度最高的版本線Docker鏡像、第三方模塊適配都齊全Python版本和依賴在鏡像里已經(jīng)固定省去不少手工編譯的麻煩。PostgreSQL 16對Odoo 20的支持成熟還有一個(gè)實(shí)際原因備份恢復(fù)工具pg_dump/pg_restore在大版本之間不能保證向下兼容。如果線上是PostgreSQL 16恢復(fù)演練和災(zāi)備環(huán)境也必須是16鎖死版本能避免“生產(chǎn)好好的備份恢復(fù)不回去”的血淚事故。Redis用7-alpine即可Odoo對Redis版本不敏感但alpine鏡像體積小、內(nèi)存占用低適合容器密集部署。最后一個(gè)建議統(tǒng)一從私有鏡像倉庫拉取這三個(gè)鏡像把版本號寫進(jìn)compose文件不要在日常操作里手動docker pull覆蓋tag。3. 部署落地用docker compose跑起第一套多租戶Odoo3.1 第一版docker-compose.yml先接受“一容器一庫”的簡單拓?fù)湎葘懙谝话鎐ompose文件不追求完美目標(biāo)是讓db、odoo、redis、nginx四個(gè)容器一次起來并且能通過db_filter識別租戶庫。后續(xù)要拆獨(dú)立租戶容器組時(shí)再擴(kuò)展但架構(gòu)骨架不變。version: 3.8 services: db: image: postgres:16 container_name: saas_db environment: POSTGRES_USER: odoo POSTGRES_PASSWORD: odoo_password POSTGRES_DB: postgres volumes: - db_data:/var/lib/postgresql/data healthcheck: test: [CMD-SHELL, pg_isready -U odoo] interval: 10s timeout: 5s retries: 5 networks: - saas_net odoo: image: odoo:20 container_name: saas_odoo depends_on: db: condition: service_healthy environment: HOST: db USER: odoo PASSWORD: odoo_password DB_FILTER: ^odoo_ LIST_DB: false PROXY_MODE: true WORKERS: 5 MAX_CRON_THREADS: 1 volumes: - odoo_data:/var/lib/odoo - ./addons:/mnt/extra-addons networks: - saas_net redis: image: redis:7-alpine container_name: saas_redis command: [redis-server, --appendonly, yes] networks: - saas_net nginx: image: nginx:1.27-alpine container_name: saas_nginx depends_on: - odoo ports: - 80:80 - 443:443 volumes: - ./nginx/conf.d:/etc/nginx/conf.d:ro - ./certs:/etc/nginx/certs:ro networks: - saas_net volumes: db_data: odoo_data: networks: saas_net: driver: bridge這段compose的邏輯是db容器先啟動healthcheck通過后odoo容器才會創(chuàng)建這套依賴機(jī)制在compose里用condition: service_healthy實(shí)現(xiàn)。DB_FILTER: ^odoo_是關(guān)鍵的正則Odoo啟動時(shí)會掃描PostgreSQL里所有數(shù)據(jù)庫只把以odoo_開頭的庫當(dāng)作租戶實(shí)例。LIST_DB: false對應(yīng)Odoo配置里的list_db False登錄頁不再展示數(shù)據(jù)庫下拉框。PROXY_MODE: true對應(yīng)proxy_mode True后面Nginx轉(zhuǎn)發(fā)時(shí)才不會出URL端口錯(cuò)誤。workers數(shù)量這里寫了5適合2核4G的初始機(jī)器。workers不是越大越好每個(gè)worker都持有數(shù)據(jù)庫連接池PostgreSQL默認(rèn)max_connections只有100workers太多反而拖垮數(shù)據(jù)庫這是第一次部署時(shí)最容易忽略的容量關(guān)系。3.2 初始化租戶數(shù)據(jù)庫并讓Odoo識別多庫compose文件寫好后先啟動數(shù)據(jù)庫容器確認(rèn)健康狀態(tài)再啟動Odoo然后手動創(chuàng)建第一個(gè)租戶庫。不要用docker compose up -d一把梭第一次跑先拆開做方便定位是數(shù)據(jù)庫沒起來還是Odoo連接失敗。docker compose up -d db docker compose exec db pg_isready -U odoo docker compose exec db createdb -U odoo -O odoo odoo_tenant_001 docker compose up -d第一行只啟動db容器第二行用pg_isready探測PostgreSQL是否接受連接。返回accepting connections說明就緒再執(zhí)行第三行創(chuàng)建租戶庫。-U odoo指定用戶-O odoo把新庫的屬主設(shè)為odoo用戶這一步不能漏否則Odoo用odoo用戶登錄后對這個(gè)庫沒有完整權(quán)限運(yùn)行時(shí)會報(bào)permission denied。第四行把odoo、redis、nginx一起拉起來Odoo啟動時(shí)讀到DB_FILTER自動把odoo_tenant_001識別為可訪問的租戶庫。打開瀏覽器訪問http://服務(wù)器IP/web/database/selector如果配置生效頁面不會列出數(shù)據(jù)庫列表需要手動輸入租戶庫名odoo_tenant_001才能進(jìn)入初始化安裝界面??吹竭@個(gè)行為說明多租戶入口已經(jīng)通了。首次進(jìn)入會在租戶庫里初始化Odoo基礎(chǔ)模塊耗時(shí)一兩分鐘耐心等頁面跳轉(zhuǎn)。3.3 Nginx反向代理與租戶域名路由Odoo本身不處理域名路由它只按數(shù)據(jù)庫名分發(fā)請求域名到租戶庫的映射要Nginx來做。最常見的方案是通配符解析每個(gè)租戶一個(gè)二級域名結(jié)構(gòu)是tenant001.yourdomain.comDNS里加一條*.yourdomain.com到服務(wù)器IP的A記錄Nginx用一個(gè)server塊接住所有租戶請求轉(zhuǎn)發(fā)給Odoo容器。upstream odoo_backend { server saas_odoo:8069; keepalive 64; } server { listen 80; server_name *.yourdomain.com; proxy_read_timeout 720s; proxy_connect_timeout 10s; proxy_send_timeout 720s; proxy_set_header Host $host; proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $connection_upgrade; location / { proxy_pass http://odoo_backend; } }關(guān)鍵在兩處server_name *.yourdomain.com匹配所有租戶子域proxy_pass http://odoo_backend把請求轉(zhuǎn)給compose網(wǎng)絡(luò)里的odoo容器。Odoo拿到請求后根據(jù)Host頭里的子域前綴結(jié)合dbfilter正則匹配對應(yīng)租戶庫這就是為什么dbfilter必須用^odoo_開頭來匹配數(shù)據(jù)庫名的原因——tenant001.yourdomain.com需要和庫名odoo_tenant_001在命名上強(qiáng)對應(yīng)。WebSocket要單獨(dú)處理Odoo的實(shí)時(shí)通信比如消息通知走WebSocket協(xié)議Nginx默認(rèn)轉(zhuǎn)發(fā)不了。需要先定義map $http_upgrade $connection_upgrade { default upgrade; close; }這段映射放到http塊里再在server塊里帶上Upgrade和Connection頭。不帶這段Odoo后臺的在線用戶列表和聊天功能會偶發(fā)斷連報(bào)錯(cuò)日志里能看到websocket connection failed。4. 實(shí)例管理打通租戶生命周期、備份恢復(fù)與資源配額4.1 租戶生命周期管理的常規(guī)操作序列SaaS Kit的管理對象是租戶實(shí)例實(shí)例管理的第一步是把生命周期標(biāo)準(zhǔn)化創(chuàng)建、暫停、遷移、歸檔、銷毀每個(gè)動作對應(yīng)一組確定的命令。不要手動去容器里亂改要把命令沉淀成腳本否則租戶一多必然出錯(cuò)。# 創(chuàng)建租戶 docker compose exec db createdb -U odoo -O odoo odoo_tenant_002 # 暫停租戶停止Odoo側(cè)服務(wù)保留數(shù)據(jù) docker compose stop odoo # 恢復(fù)服務(wù) docker compose start odoo # 歸檔租戶導(dǎo)出數(shù)據(jù)并下線 docker compose exec db pg_dump -U odoo -Fc odoo_tenant_002 backups/odoo_tenant_002.dump docker compose exec db dropdb -U odoo odoo_tenant_002創(chuàng)建租戶其實(shí)只做一件事建一個(gè)空數(shù)據(jù)庫。Odoo會在首次訪問時(shí)自動完成模塊初始化不需要事先安裝任何東西。暫停和恢復(fù)針對整個(gè)Odoo容器操作這在一容器多庫的架構(gòu)下是硬傷——停一個(gè)租戶所有人都訪問不了。所以暫停操作更適合用在“整體維護(hù)窗口”場景單獨(dú)的租戶停用要通過nginx層做路由攔截或者用數(shù)據(jù)庫級權(quán)限控制不能簡單stop Odoo容器。歸檔操作要特別注意順序先pg_dump導(dǎo)出確認(rèn)dump文件大小合理再dropdb刪除庫。順序反了就得從備份恢復(fù)多租戶系統(tǒng)里沒有后悔藥吃。dropdb之后dbfilter正則自動不再匹配這個(gè)庫租戶的域名訪問會直接404屬于安全的離線狀態(tài)。4.2 備份與恢復(fù)多租戶下恢復(fù)比備份難十倍單機(jī)單庫的備份很簡單多租戶場景下難點(diǎn)在恢復(fù)不能把整個(gè)PostgreSQL目錄拷貝覆蓋那會把所有租戶一起回滾也不能在恢復(fù)時(shí)讓dbfilter誤匹配到半初始化狀態(tài)的庫。我的建議是采用租戶級備份策略每個(gè)租戶庫獨(dú)立導(dǎo)出獨(dú)立恢復(fù)互不影響。# 備份單個(gè)租戶壓縮格式支持選擇性恢復(fù) docker compose exec db pg_dump -U odoo -Fc odoo_tenant_001 backups/odoo_tenant_001_$(date %F).dump # 恢復(fù)單個(gè)租戶到新庫 docker compose exec db createdb -U odoo -O odoo odoo_tenant_001_restored docker compose exec db pg_restore -U odoo -d odoo_tenant_001_restored --no-owner --no-privileges backups/odoo_tenant_001_20250601.dump恢復(fù)時(shí)務(wù)必用--no-owner --no-privileges否則dump里的屬主信息會和當(dāng)前容器里的odoo用戶不一致Odoo連上去后經(jīng)常報(bào)權(quán)限錯(cuò)誤?;謴?fù)完成后新庫名如果不符合dbfilter正則Odoo不會識別它這時(shí)把容器里的DB_FILTER臨時(shí)改成正則匹配新庫名或者直接在Nginx層加一條測試域名指過去驗(yàn)證數(shù)據(jù)完整后再把舊庫切換走。cron定時(shí)備份的腳本建議分成兩層每晚全量備份所有租戶庫每小時(shí)只對變更最頻繁的兩三個(gè)租戶做增量。PostgreSQL沒有內(nèi)置增量常見的做法是結(jié)合WAL歸檔但對SaaS Kit這種規(guī)模來說太重。實(shí)際夠用的方案是夜間cron跑全套pg_dump白天每兩小時(shí)對活躍租戶單獨(dú)跑一次輕量dump保留最近7天備份?;謴?fù)演練每月至少做一次不要等真出事了才試。4.3 容器資源配額與SaaS套餐定價(jià)的映射多租戶系統(tǒng)管理到后期最大的問題不是功能是資源分配。一個(gè)租戶寫死一個(gè)Odoo容器不現(xiàn)實(shí)資源浪費(fèi)嚴(yán)重但共用容器又沒法控制單個(gè)租戶的CPU和內(nèi)存占用。SaaS Kit的常見做法是在容器編排層給租戶定義配額模板用compose里的mem_limit和cpus字段控制。# 示例獨(dú)立租戶容器組的資源配額 services: odoo_tenant_001: image: odoo:20 mem_limit: 2g cpus: 1.0 environment: WORKERS: 3先把配額模板和服務(wù)套餐綁定基礎(chǔ)版1G內(nèi)存1核專業(yè)版2G內(nèi)存2核旗艦版4G內(nèi)存4核。Odoo的workers數(shù)量跟隨內(nèi)存配額走1G內(nèi)存最多配3個(gè)workers再高數(shù)據(jù)庫連接池會先撐不住。這個(gè)映射關(guān)系要在交付文檔里寫明否則銷售簽了高并發(fā)客戶部署時(shí)內(nèi)存配額給不夠后續(xù)全是性能投訴。docker update可以在容器運(yùn)行中動態(tài)調(diào)整配額比如某個(gè)租戶月底結(jié)賬時(shí)CPU飆高臨時(shí)docker update --cpus 2 --mem_limit 4g saas_odoo_tenant_001結(jié)完賬再調(diào)回來。調(diào)整后觀察容器重啟情況內(nèi)存配額調(diào)低到當(dāng)前占用以下容器會被內(nèi)核直接殺掉這個(gè)操作必須謹(jǐn)慎。quota和計(jì)費(fèi)系統(tǒng)聯(lián)動時(shí)建議按“配額階梯計(jì)費(fèi)”而不是“實(shí)際消耗計(jì)費(fèi)”否則AWS賬單波動會讓用戶投訴到懷疑人生SaaS套餐的費(fèi)用策略里這是最穩(wěn)的一種設(shè)計(jì)。5. 避坑清單Docker部署Odoo SaaS Kit的常見問題與排查路徑5.1 現(xiàn)象Docker Desktop啟動失敗提示virtualization support not detectedWindows環(huán)境跑Docker Desktop最常撞上的錯(cuò)誤就是啟動時(shí)彈出virtualization support not detected。原因是BIOS里的虛擬化技術(shù)沒開或者Windows的虛擬機(jī)平臺功能沒啟用。解決路徑重啟進(jìn)BIOS/UEFI找到Intel VT-x或AMD-V選項(xiàng)并開啟然后在Windows功能里勾選“適用于Linux的Windows子系統(tǒng)”和“虛擬機(jī)平臺”執(zhí)行bcdedit /set hypervisorlaunchtype auto后重啟。啟動不了Docker Desktop后面所有compose操作都無法進(jìn)行。Linux服務(wù)器上如果遇到docker: failed to start daemon先查內(nèi)核模塊lsmod | grep overlay和cgroup掛載大多數(shù)是內(nèi)核太舊或系統(tǒng)盤空間不足導(dǎo)致dockerd啟動失敗。5.2 現(xiàn)象連接不上Docker引擎報(bào)failed to connect to the docker apifailed to connect to the docker api at npipe:////./pipe/dockerDesktopLinuxEngine這個(gè)錯(cuò)誤在Windows和Mac上都很常見。表面意思是Docker客戶端連不上引擎實(shí)際是Docker Desktop啟動到一半卡住了或者引擎在后臺崩潰。解決路徑先打開Docker Desktop界面看引擎狀態(tài)圖標(biāo)是紅色說明引擎沒起來點(diǎn)Restart如果Restart無效執(zhí)行wsl --shutdown關(guān)掉WSL虛擬機(jī)再重開Docker Desktop。Windows服務(wù)里重啟com.docker.service也行。最直接的辦法是查Docker Desktop日志路徑在%LOCALAPPDATA%\Docker\log\看到EOF或connection reset基本是WSL2內(nèi)核問題執(zhí)行wsl --update更新內(nèi)核后解決。5.3 現(xiàn)象容器間網(wǎng)絡(luò)不通Odoo連接PostgreSQL失敗compose文件部署時(shí)一切正常一旦有人手動docker run補(bǔ)充容器就會出現(xiàn)Odoo容器連不上db容器的情況。原因很簡單docker run默認(rèn)加入的是bridge網(wǎng)絡(luò)而compose創(chuàng)建的是自定義網(wǎng)絡(luò)saas_net兩個(gè)網(wǎng)絡(luò)的容器無法通過容器名互相解析。解決路徑所有補(bǔ)充容器都加--network saas_net參數(shù)或者把已有容器連進(jìn)去docker network connect saas_net container_name。排查時(shí)用docker network inspect saas_net查看節(jié)點(diǎn)列表確認(rèn)目標(biāo)容器在不在網(wǎng)絡(luò)里。另一個(gè)常見故障是容器網(wǎng)絡(luò)模式設(shè)置了network_mode: host這會導(dǎo)致compose網(wǎng)絡(luò)無法管理和隔離流量SaaS Kit多租戶場景下不建議使用host網(wǎng)絡(luò)。5.4 現(xiàn)象docker pull odoo鏡像下載慢卡在等待層數(shù)據(jù)多租戶系統(tǒng)一旦跑起來擴(kuò)容時(shí)最不想遇到的就是拉鏡像卡死。odoo官方鏡像體積不小層數(shù)多國內(nèi)網(wǎng)絡(luò)環(huán)境下直接拉官方倉庫經(jīng)常幾KB每秒。解決路徑配置registry mirror是第一步。在/etc/docker/daemon.json里加registry-mirrors: [https://docker.mirrors.ustc.edu.cn]重啟docker daemon生效。如果公司網(wǎng)絡(luò)有緩存代理用registry-cache做內(nèi)網(wǎng)鏡像倉庫20個(gè)租戶的服務(wù)器都從內(nèi)網(wǎng)倉庫拉取速度質(zhì)變。切記不要在業(yè)務(wù)高峰期docker pull大鏡像這會擠占容器網(wǎng)絡(luò)帶寬出現(xiàn)整組服務(wù)響應(yīng)變慢的情況。實(shí)在拉不下來的鏡像換一臺網(wǎng)絡(luò)通暢的機(jī)器拉好再docker save成tar包scp過去docker load這是最土但最有效的后悔藥。5.5 現(xiàn)象所有租戶域名都進(jìn)入了同一個(gè)Odoo實(shí)例多個(gè)租戶域名配好后發(fā)現(xiàn)訪問tenant002.yourdomain.com卻打開了tenant001的登錄頁或者干脆提示數(shù)據(jù)庫不存在。這個(gè)坑十有八九是db_filter和域名路由失配。Odoo的多租戶識別鏈路是Nginx按Host轉(zhuǎn)發(fā)到OdooOdoo再用Host子域前綴去匹配數(shù)據(jù)庫名。任何一個(gè)環(huán)節(jié)的名字不對都會指向錯(cuò)誤的實(shí)例。解決路徑確認(rèn)數(shù)據(jù)庫名和子域名的映射關(guān)系。tenant002.yourdomain.com對應(yīng)的庫名必須是odoo_tenant_002dbfilter正則寫成^odoo_才能匹配上。再看Nginx配置里有沒有多個(gè)server塊互相搶流量server_name *.yourdomain.com和server_name tenant002.yourdomain.com同時(shí)存在時(shí)Nginx按精確優(yōu)先規(guī)則匹配但很多人把精確域名寫在通配前面導(dǎo)致所有請求都走精確匹配。最后檢查Odoo容器環(huán)境變量DB_FILTER有沒有被后面加載的配置文件覆蓋docker compose exec odoo env | grep DB_FILTER直接看運(yùn)行環(huán)境結(jié)果最可信。6. 進(jìn)階驗(yàn)證把SaaS Kit從“能跑”推到“敢上線”6.1 上線前要過的三關(guān)恢復(fù)演練、并發(fā)壓測、版本升級第一關(guān)是備份恢復(fù)演練選一個(gè)非生產(chǎn)租戶庫導(dǎo)出dump再恢復(fù)到全新庫全程記錄耗時(shí)。多租戶系統(tǒng)最容易翻車的就是災(zāi)備環(huán)節(jié)——備份天天跑恢復(fù)沒人試過。第二關(guān)是并發(fā)壓測用ab -n 1000 -c 20 http://localhost/觀察Odoo在20并發(fā)下的響應(yīng)時(shí)間和錯(cuò)誤率如果p95超過2秒先調(diào)workers數(shù)量再檢查PostgreSQL的shared_buffers。第三關(guān)是版本升級演練把odoo鏡像tag從20升到下一個(gè)版本前先在測試環(huán)境完整跑一遍odoo-bin -u all -d odoo_tenant_001確認(rèn)模塊遷移沒有破壞性變更。6.2 用兩條命令把多租戶狀態(tài)納入日常巡檢日常巡檢不一定要上監(jiān)控系統(tǒng)兩條命令足夠發(fā)現(xiàn)90%的問題。docker stats --no-stream看所有容器的CPU和內(nèi)存占用哪個(gè)租戶容器內(nèi)存持續(xù)飆到配額上限就該考慮拆分或升級套餐了。docker logs --since 30m saas_odoo | grep -E CRITICAL|ERROR看近半小時(shí)的應(yīng)用錯(cuò)誤日志Odoo的ERROR日志通常會帶租戶庫名能直接定位是哪個(gè)實(shí)例出了問題。我第一次上線SaaS Kit時(shí)最怕的不是某個(gè)容器掛了而是備份恢復(fù)沒人演練過結(jié)果第一個(gè)月就有一個(gè)租戶誤刪數(shù)據(jù)靠pg_dump恢復(fù)到十分鐘前才意識到這套方案的設(shè)計(jì)核心從來不是容器編排多花哨而是數(shù)據(jù)兜底夠不夠穩(wěn)。后來我把備份恢復(fù)腳本掛進(jìn)cron每月自動郵件通知演練結(jié)果再也沒有因?yàn)槿藶檎`操作失眠過。做多租戶Odoo先敬畏數(shù)據(jù)再追求效率希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
www色五月| site:pnnrt.com| 99激情在线| 婷婷五月天社区| 天天插天天| 婷婷丁香五月91| 日日操日日撸| 大香蕉精品视频| 一本综合丁香日日狠狠色| 9999三级片| 国产乱子轮XXX农村| 丁香五月天之婷婷影院| 天天情色五月天| 色婷婷视频| 丁香六月综合| 亚洲av综合在线| 激情伊人五月天| 丁香五月在线| 桔色成人在线| 婷婷丁香五月,狠狠综合| 婷婷99狠狠躁天天躁中| 91porn一起草| 九九九午夜视频| 国产人妻777人伦精品HD| 亚洲婷婷久久综合| 色五月婷婷基地| 色婷丨日丨天丨综合久久| 99在线公开视频| 中文字幕在线视频播放| 激情色五月天| 国产AV影片| 五月婷婷六月激情| 人人操AV| 亚洲色五月| 啪啪99| 久久er免费视频| 婷婷丁香成人五月天| 色哟呦av| 一本到不卡高清DVD| 人妻久久久久久| 92久久| 婷婷六月综合基地| 二色av| 五月婷婷婷| 思思精品久久艹| 亚洲激情高潮| 婷婷之六月丁香| 天干干夜夜操| 一本伊人色婷| www五月| 九九热99热| 五月停停丁香| 久久五月天激情| 亚洲99视频| 99成人精品六| 天天成人丁香美女AV| 极品 少妇 内射| 色婷婷内射| 97在线/亚洲| 超级碰碰碰久久网站| 性做爰A片免费视频A片直播| 欧美97超碰| 嫩草AV久久伊人妇女超级A| 丁香五月激情综合| 中文字幕无码AV| 婷婷在线播放| 久久99免费视频| 九九Y精品热播| 九九精品re免费视频| 久久久久五月丁香| 国产精品岛国片在线观看免费| 99se丁香| 蜜臀av粉嫩av懂色av| jiujiujiuwuyuetian| 9久9久| 視频福利乱色| 色色自拍视频网站| 狠狠五月天激情| 五月婷婷综合精品| 亚洲视频二区| 亚洲日韩乱码一区二区三区四区| 超碰免费电影| 91精品久久久久久| 色五月婷婷开心| 另类小说五月天综合网| 五月丁香六月玩女人| 日本丁香五月| 精品一区二区三区四区五区六区| 婷婷五月在线| 色色色综合色| 丁香婷婷伊人| 丁香六月激情| 激情五月丁香五月综合| 亚洲无码九九九| 婷五月天六| 大香蕉伊人爱在线| 97激情五月天| 黄色五月婷婷| 婷五月天影院| 色婷婷大香蕉| 色婷婷综合网站| 99热官网| 日本无码专区| 亚洲精品无码久久| 九月丁香五月婷婷| www.五月丁香| 婷五月天六| 激情综合五月| 思思热精品在线| 99热日韩| 激情五月天婷婷丁香| 97热视频| 成人五月天视频| www.色五月.com| 熟女人妻视频| 久久婷婷色| 99热这里只有精品69| 婷婷射婷婷舔| 免费看成人AA片无码视频吃奶| 97婷婷丁香五月综合| 色综合综合色| 五月丁香六月婷婷啪啪| 婷婷五月图片小说视频| 色色国产| 91欧美| 久久机热思思热| 99热丁香| 五月丁香六月婷婷综合| 狠狠插狠狠| 99在线精品观看99| 大伊香蕉玖玖爱| 婷婷五月天成人娱乐| 欧美日韩aaaa| 校花娇喘呻吟校长陈若雪视频| 99热高清在线| 26uuu精品国产| 丁香婷婷啪啪| 五月丁香香蕉| 啪到高潮激情丁香五月| 五月丁香大香蕉| 99ri精品在线观看| 久久在线人妻| 狠狠狠狠狠草| 色五月婷婷五月天| 在线观看的av| 婷婷五月色色| 五月五月婷婷| 天天摸天天透天天舔| 成人做爰A片免费看视频| 97碰碰碰| 九九成人视频| 五月婷婷综合影院| 久久这里只有精品热在99| 色欲一区二区三区精品A片 | 丁香五月综合在线视频| 久久精品一区二区三区四区| 开心激情色婷婷五月天| 婷婷色色网| 亚洲啪啪精品| 青青草五月天| 国产操肏网站| 免费观看大片视频 丁香婷婷 六月欧美| 丁香8月手机综合| 色情五月丁香婷婷网| 成人 在线 日韩| 丁香五月婷婷亚洲另类| 欧美 日韩 成人| 区啪精品| 九九在线精品| 久久婷婷五月天激情| 色婷婷五月天视频在线| 91综合色噜噜| 五月天婷婷操逼视频| 亚洲热久| 欧美激情综合色综合啪啪五月| 啪啪啪丁香五月| 伊人午夜综合色啪| 色爱综合五月| 色综合久久88色综合天天看| 色呦呦美女| 狠狠插狠狠插| 9有码中文| a在线观看| 最新日韩久热免费视频看看| 99视频在线观看网址| 人妻有码乱操| 精品久久这里热66| 国产成人+综合亚洲+天堂| 五月天丁香久久| 激情九色| 激情图片五月天| 日韩成人av在线| 九九精品99| 婷婷精品免费久久| 99ER热精品视频| 色综合开心五月深爱五月| 国产欧美熟妇另类久久久| www。88热在线视频免费观看| 99无码视频| 激情六月五月婷婷综合网| 欧美性猛交99久久久久99按摩| 午夜性爱影视一区77| 双性美人被调教到喷水A片| 丁香五月婷婷成人综合| 久久女人九九| 婷婷五月天久久| 99热这只有| 99re欧美精品| AV在线大香蕉| 国产丁香五月天婷婷| 狠狠操狠狠色| www婷婷| 亚洲综合色婷| 99在线视频播放| 久久久婷婷| 熟女人妻一区二区三区免费看| 五月色 亚洲| 91久久久久久| 国产成人99久久亚洲综合精品| 久久精品五月| 久久99久久99久久99人受| 婷婷黄色五月天在线视频| av首页在线| 色色99| 亚洲欧洲另类| 日韩啪啪自拍| 91综合在线| 五月丁香狠狠| 亚洲色久| 综合网色综合| 97久久久| 99热国内精品| 天天色综合网1| 99啪啪视频| 色五月激情五月| 五月天成人小说网| 婷婷五月天在线观看av| 婷婷娌伦网| 26uuu欧美| 亚洲亚洲永久无码777777| 日本久久婷| 亚洲五月六月婷婷| 99久久网站| 噜噜久| 色八月婷婷| 激情av网| 色婷婷丁香女女| 91干| 欧美丁香五月夫妻天| 久久最新色色色| 久久精品天| 九九热免费视频| 99爱99操| 久久一级免费黄色片| 97色色婷婷| 开心五月婷| 操97| 九九99热| 六月丁香天堂| 97超级碰人人| 欧美搡BBBBB摔BBBBB| 五月综合激情| 99久久6| 五月天婷婷在看| 91操在线视频| 婷婷色五月激情强奸四射| 亚洲A片成人无码久久精品青桔| 色色激情网| 国产精品日韩十五区| 18av天堂| 伊人五月天综合网| 日韩亚洲视频| 久操人妻| 激情综合无码| 日本久久综合| 亚洲 视频 导航 一区| 亚洲岛国电影| 亚洲成人av中文| 五月婷婷六月天| 成人亚洲精品| 人人草人人爱| 五月婷婷色五月| 能看的AV网站| 五月亭亭综合五码| 91热在线观看视频| 日本久碰| 婷婷婷五月香蕉| 色婷青青| 激情婷婷在线| 九九色情网五月天| 色综合狠狠色| 99啪啪视频| 夜夜资源站| 激情中文在线| 丁香九月久久| 深爱激情中文五月天av| 九九热只有这里是精品| www.狠狠干| 色国产五月| 影音先锋xfplay资源男人网| 丁香五月激情天AV无码| 日本高清久久| 91一起操| 性色欲情 网站| 久久免费精品小视频| 九九色人| 天天日狠狠| www.狠狠操.con| 丁香五月天在线直播观看| 欧美日韩大黄| 天天爽天天摸| 99热99精品| 久久3p| 久色网址| 伊人久久婷婷| 91蝌蚪窝视频在线| www.99久久久久99| 啪色综合| 欧美激情综合色综合啪啪五月| 色九月欧美| 99热爱爱干干日| 久热无码| 色情一区二区播放| 五月丁香啪啪啪| 色综合婷婷| 人妻久久久| 欧美槡BBBB槡BBB少妇| 爱超碰性| 中文字幕综合网| www.天天干| 国外亚洲成AV人片在线观看| 久草 tingting| 综合色吧| 伦乱美欧| 五月婷婷五月天激情网| 超碰狠狠操| 极品人妻VIDEOSSS人妻| 九九中文色色| 99热超碰| 色日本网| 国产67194| 天天干天天干天天| 91碰九色| 色婷婷4| 天天爽夜夜爽天天爽夜夜爽| 激情婷婷| 东北熟女视频99| 日韩超碰在线| 九九热视频免费的| 成人 在线 日韩| 欧美精品在线观看| 久久刺激网| 六月婷婷无码观看| 六月婷婷啪啪| 婷婷五月天综合久久日美女| 五月色亭丁香| 久婷久婷| 婷久久久| 99热这里只有精品手机在线观看| 青青草五月天| 综合久久激情久久| 丁香六月婷婷激情综合| 九九色人| 婷婷干五月综合在线播放| 久久99精品视频| 超碰操日| 五月丁香六月婷婷,婷| 99热99热在线| 色色三级视频| WWW.久久久久久久| 婷婷五月天综合中文| 97久久久久| 国产av天天插天天操天天爽| 五月天天丁香婷婷在线中| av操一操| 91性交在线播放| 六月丁香久久| 日韩黄色电影| 亚洲欧美国产A片免费观看| 99色在线视频观看| 另类专区在线观看| 日韩日比视频| 天天爽,夜夜爽| 香蕉AV777XXX色综合一区| 手机旧版看人妻1025| 婷婷在线午夜| 综合婷婷| 99热99在线| a久久| 丁香六月天婷婷色| 丁香婷婷射| 亚洲操操| 亚洲中文字幕AV| 99热官网| 久久大香免费| 久久 天天| 五月婷A V在线| 婷婷五月天改成什么了| 激情五月天婷婷丁香| 激情久久肏屄视频| 色色色五月婷| 亚洲六月婷婷| 久久五月天网| 日本天天色| 欧美黄色一级| 深夜A片| 一本大道伊人AV久久综合| 久久五月婷婷电影| 色色色成人网| 69堂午夜视频最新地址| 婷婷在线播放| 天天爽日日搞| 五月天福利影院导航| 第四色五月激情网| 精品一二三区久久AAA片 | 精品一区二区三区四区五区六区| 婷婷免费精品视频| 国产激情综合五月久久| 色五月婷婷久久爱| 极品少妇高潮啪啪AV无码| 久久精品63| 天天综合 99久久婷婷| 丁香五月123| 夜夜骑天天操| 99碰网站| 国产欧洲欧洲精品久久| 色之综合网| 色五月婷婷基地| 五月丁香六月婷婷亚洲天堂网站| 激情av| 99'无码| 疯狂做受XXXX高潮A片动画| 色婷婷久久综合久色| 亚洲黄色影视| 六月婷婷网站| se婷97| 婷婷五月天免费视频| 久久国产AV| 丁香五月偷拍| 色婷婷五月天中文字幕| 97在线观看| 激情婷婷五月天在线观看| 99热草草| 欧美日本黄色| 99久久这里只有精品免费官网| 97九色| 天天骑日日爽| 婷婷丁香91综合| 亚洲视频99| 亚洲成人av在线| 久操操| 另类综合激情| 婷婷五月娱乐在线| 99爱在线精品视频免费观看| WWW.开心五月天.COM| 伊人免费视频9| 日本色视| 丁香五月天色| 激情五月综合网| 午夜精品777| 久久久色情| AV在线中文| 六月色婷婷欧美| 婷婷丁香五月综合久久| 五月婷婷性爱| 色五月综合婷婷| 91美女艹逼网站| 影音先锋一区| 狠色狠色综合久久| 日本高清久久| 久草视频大香蕉99| 99激情视频| 激情综合网激情五月丁香| 丁香五月婷婷欧美激情-中文天堂最新版在线观看 | 玖玖精品视频| 色五月婷婷激情综合网| 97超碰在线观看免费| 丁香五月婷久久| 日本激情五月天‘| 婷婷六月丁香激情| 日本久久9| 丁香激情五月| A久久| 天天艹天天综合网| 日韩高清久久| 日本黄色三级片内射| 久久性刺激| 色综合久久天天综合网 | 成人资源在线| 农村熟妇高潮精品A片| 丁香五月天之婷婷影院| 婷婷五月免费在线| 丁香综合婷婷开心激情网| 丁香五月天影院| 狠狠操狠狠| 丁香五月婷婷六月丁香| 久久99这里只有精品视频| 丁香五月最新地址| 丁香花综合永久入口| 色欲婷婷五月天丁香| 天天干天天玩天天夜天天射天天操天天日蜜臀少妇 | 思思热久久阴99| 青青日韩| 色婷婷小视频| 在线中文AV| 亚洲成人五月天| 亚洲五月停停| 五月综合六月婷婷| 亚洲综合色丁香五月天| 久久婷婷五月国产色综合激情| 五月丁香婷色| 一起草日本| 97操操网| 色五月婷婷久久| 日日色综合| 久久AV电影| 淫荡家庭AV| 久9久成人精品视频| 99久久超级| 五月丁香六月激情| 大香蕉综合在线| 婷婷五月天综合久久| 天天做天天爱天天综合网| 国产精品电影| 五月丁香婷婷基地| 超碰在线精品| 久久婷狠狠色| 超碰人人超碰| 亚洲精品国产成人AV在线| 综合网狠狠| 99热99日天天干| 97精品人人A片免费看| 五月丁香网站| 99九九精品| 91干| 久久久久人妻网址| 久久婷综合| 天天干天天操天天爽| 丁香五月首页| www,天天干| 超碰人人在线| 丁香五月色| 丁香婷婷色五月| 久久Xx| 久热AA| 五月丁香操婷逼| 婷婷丁香九月| 婷婷久热| 91超级碰碰碰| 三级片AAA久久久AAA久久久AAA| www狠狠| 在线不卡视频| A片女女女女女女BBBB| 久久激情五月婷婷| 99精品免费| 色婷婷成人做爰A片免费看网站| 99网| 国产一级黄色影片,| 五月综合激情网| 69久久久| 9久国产| 久久久久久综合88| 超级碰碰碰91| www九九热| 久操b网| 日 日干 日日做| 亚洲色色精品| 亚洲操操操| 97操视频| 无码激情AAAAA片-区区| 丁香婷婷激情四射五月| 亚洲色夜| 99热这里只有精品1025| 天天色综合色色色色色。| 很操日本7| 在热视频精品| 色综合九九| 噜噜在线| 九九综合五月欧美| www.久久99| 五月天婷五月天综合网在线观| 亚洲欧洲色色| 99视频只有这里精品| 天天日天天舔| 激情五月天丁香| 婷婷激情久久| 激情综合网址| 色五月五月天| 欧美天堂久久| 国产婷婷色综合AV蜜臀AV | 中文字幕人妻一区二区| 欧日韩成人| 五月天天天开心激情网| 人人摸人人澡人人| 蜜臀AV在线观看| 国产永久一黄| 国产色色网址网站| 丁香五月天亚洲视频| 色色com| 五六月婷婷久久| 婷婷丁香激情综合色情| 激情小说之五月| 五月丁香自拍| 丁香影院五月综合| 五月婷婷开心深| 婷婷香五月天| a久久| 亚洲精品a成人在线播放| 婷婷六月综合| 婷婷五月色亚洲| 1024日韩| 97在线干| 天天摸日日舔狠狠添婷婷婷| 日韩999| 久久五月热| 秋霞黄色一级久久| 久久丁香久久| 99国产精品久久久久久久久久久| 99狠狠| 色噜噜婷婷| 丁香六月啪啪| 久久久97| 五月婷婷,狠狠操| 色色五月婷婷网| 色愛综合网| 天天色天天| 色五月婷婷在线观看第一页舔| 婷婷亚洲综合| 色五月大| 99re视频在线精品| 99爱视频在线免费观看| 亚洲无码99| 国产综合婷婷| 久久亚洲激情五码| 青青久久五月| 天天日日天天| 久99视频| 亭亭五月丁香综合欧美| 99在线视频资源| 丁香五月ⅤA久久久| 九九草热在线观看| 五月婷在线观看| 婷婷自拍| 热成人网| www...com黄在线观看| 日本狠狠爽| 日韩aaaaa| 五月久久婷婷| 日本久久高清| 超91在线视频| 久久久精品色色色| 99色在线观看视频者| 色五月婷婷成人视频| 亚洲激情网| 激情五月天视频| 日本精品99| 婷婷WWW久久| 五月激情婷婷开心| 五月丁香色色色| 午夜婷婷六月天| 9热在线| 狠狠干五码| 99燥99日| 久久婷婷五月天激情唯美| 日本一級黃色一級片| 婷婷五六日| 国产美女无遮挡裸体毛片A片| 婷婷五月激情热播| 五月婷婷影院| 99热这里只有精品热| 在线观看免费观看在线9久| 五月婷婷六月丁香激情综合网| 九九AV| 丁香五月婷婷亚洲综合精品在线| 国产熟妇的荡欲午夜视频| va中文资源在线观看| JAPANRCEP老熟妇乱子伦视频| 99高级会所久久| 亚洲五月婷婷在线| 色婷婷成人做爰A片免费看网站 | 99在线观看视频蜜臀| 色无码| 日本熟女三区| 伊人久久婷婷五月综合97色| 色综合天天天天做夜夜| 亚洲精品中文字幕成人片| 婷婷五月天AV在线| 99久久久| 五月丁香成人网| 精品人妻久久久| 91呦呦呦| 无码色| 五月天激情小说| 丁香六月综合激情| 热99热9| 99riAV成人在线视频| 久色视频| VA婷婷| 九月激情婷婷丁香| 久久亚洲无码| 丁香六月天AV| www.cao.com久久| 久草a片| 婷婷五月天成人娱乐| 婷婷五月花.97| 天天综合网站| 美女亚洲五月丁香| 免费色婷婷| 99在线视频资源| 国产阿姨日皮艹逼内射视频| 婷婷五月天久| 久草五月天| 午夜激情五月| 色综合中文色综合网| 五月丁香色综合| 五月天涩涩| 婷婷99狠狠| 久热A片| 九九99免费视频| 婷婷六月色情| 久久五月丁香婷婷| 在线免费视频caop| 亚洲99热| 国产熟女日日骚五月丁香爱| 91色综合网| 先锋影音av色五月天资源站| 激情六月丁香| 五月天成人在线播放丁香| 丁香九月婷婷综合| 婷婷丁香五月综合| 综合99久久天天综合| 激情伊人五月婷婷久久| 99精品在线观看视频| 三级黄色大片视频| 丁香色五月 97干| 人人视频色| 五月丁香啪啪网| 色色综合五月| 精品国产乱码久久久久夜深人妻| 91丨九色丨熟女| 91人妻视频| 狠狠搞五月天| 丁香五月停停基地| 婷婷九月久久| 少妇性按摩无码中文A片| 久热超碰91| 亚洲激情网站| 日日色五月天| 久热69| 欧美色必爱| 9+1视频网址| 91精品在线看| 久久精品人妻| 五月丁香六月婷婷的女人| 日本久久99| 国产九九一区二区三区| 免费看欧美成人A片无码| 51XX午夜影福利| www.minyis.com【JT】实力收量可预付QQ2101460746 | 婷婷激情五月天桃花网| 色播丁香| 操人无码| 久久久久丁香婷婷五月天| 麻豆123区| 99r久久这里只有精品| 996er热| 啪啪操操| 久热re在线视频| 年轻的妺妺伦理HD中文| 狠狠插狠狠操| 日本久久精品| 玖玖爱综合网| 超碰三级片| 欧美va在线观看| 色狠狠综合| 亚洲尤物在线| 丁香开心深爱| www.狠狠色.com| 91艹人| 亚洲性图一区二区三区| 五月丁香六月成人| 99色热视频| 成人精品人妻| 丁香六月激情四射| 五月丁香激情怕怕| 台湾无码A片一区二区| 亚洲综合999| 97婷婷在线| 99热九九在线| 色在线99| 色色色综合色| 中文字幕AV网址| pom538精品视频| 欧美日韩成人一区二区| 久久9热| 久久九九@| 五月综合丁香婷婷| 五月激情啪啪啪| 婷婷九月丁香| 99热乎| 丁香六月中文| 青青草视频福利| 岛国av电影网站| 桔色成人在线| 丁香久久久| 啊V视频在线观看| 久久婷婷综合五月天| 婷久久| 婷婷五月天精品| 中文av网站| 亚洲中文字幕在线观看| 丁香婷婷五月份| 国产一区二区三区影院| 亚洲欧美综合7777色亭亭| 久久33视频| 日韩精品成人在线| 久久99久久99久久99人受| 婷婷亚洲影院| 凹凸探花电影| 日本 @ va 免费| www.天天干| 午夜大香蕉| 久久国产色| 97在线观视频免费观看| 丁香五月婷婷久久久| 一本色道久久88加勒比—| 亚洲成人在线播放| 精品婷婷五月视| 五月丁香婷婷三级| 丁香六月激情四射| 狠狠色色| 亚洲视频另类| 碰人人操| 丁香色情五月天| 99热12| 综合99久久| 99视频| 国产首页在线| 色五月婷婷基地| 影音先锋 婷婷| 这里只有精品视频| 狠狠狠狠狠| 色婷婷综合久久| 大香蕉五月天婷婷丁香91| 国产日韩欧美性生活| 五月丁香天堂网| site:pnnrt.com| 26uuu色五月| 婷婷五月激情网| 久热a| 五月天丁香综合| 婷婷成人视频| 91啦丨九色丨刺激中文| 婷婷综合五月| 十月丁香九月婷婷综合| 99热国产免费| 欧美三级A做爰在线观看| 成人午夜在线视频| 久久婷婷成人视频| 99色网站| 中文字幕丰满孑伦无码专区| 任你擦免费视频| 久久这里只有精品16| 玖玖综合色| 成人无码精品1区2区3区免费看| 婷婷99丁香| 婷婷五月精品在线| 久久久激情| 一二线视频 另类| 91丨九色丨大屁股| 五月天色丁香| 亚洲视频一区| 久99热| 99网| 伊人丁香五月天丁香在线婷| 色噜噜狠狠色综| 丁香五月婷婷日本| 精品人妻一区二区三区在| 五月婷精品| 人人摸人人搞| 图片区 小说区 区 亚洲五月| 亚洲在线资源| 深爱激情丁香五月| www久视频com| 久久视频66| 亚洲AV网址| 91亚洲免费片| 色情一区二区播放| 色99视频| www.色综合| 日日夜夜干| 一区=区操屄高清大全av| 翔田千里aV中文字幕| 亚洲另类电影| 久综合九| 人人草人人看| 欧美碰碰碰| 九九久久综合网站| 五月天婷婷激情| 大香蕉手机视频| 五月丁香偷拍| 一级性感毛片| 久久这里有精品视频| 成人做爰黄A片免费看直播室男男 久草热8精品视频在线观看 | 丁香激情久久| 六月婷色| 国内外色色色色色成人视频| 亚洲无码猫咪| 日日操天天爽| 色婷婷成人做爰A片免费看网站| 婷婷色五月激情| 91玖玖| 翔田千里 50岁 无码| 色五婷婷| 大香蕉视频99| 狠狠色噜噜| 丁香五月亚洲综合| 婷婷丁香综合成人| 99在线视频观看| 天天做综合网色综合| 开心五月婷婷| 深爱激情九九五月天 | 亚洲精品亚洲人成人网| 色视频2025| www.91久久| 婷婷基地成人五月天| 99久久婷婷| 爱爱色五月天| 思思热在线播放| 色热久资源| 丁香五月影院| 热中文字幕| 99色视频| 99热只有精品综合| 99热这里都是精品| 91超碰九色| 六月婷婷中文字幕| 丁香五月图片| 超PEN精品在线| 婷婷十月丁香| 天天日中文| 丁香婷婷色| 色香久久| 99久久极情精品一区| 包操45分钟网站| 国产真实乱对白精彩| 99热视精品| 亚洲无码 图片区| 深夜激情网| 久久99精品久久久久久噜噜| 日韩AAAAAAAAAAA片| 亚洲免费观看高清完整版AV线| 久久99婷婷| 伊人久久大香网| 久热这里只有| 久久这里只有精品视频26| 天天久久婷婷| av在线激情| 丁香六月婷婷久久综合八月| 丰满少妇猛烈A片免费看观看 | 五月天婷婷激情网| 91热爆在线| 日本欧美成人片AAAA| 先锋男人99资源| 超级碰碰视频无码| 丁香激情网| 婷婷在线五月天观看| 欧美日本不卡黄色片| 激情婷婷五月天| 伊人春天av| 人妻久久久| 99热12| 五月天操逼网| 久久婷五月| 99九九精品| 久久久婷婷婷| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 亚洲综合新99视频| 色综合香蕉视频| 亚洲无码99| 五月成人综合| 婷婷无码视频| 日韩综合成人| 97资源碰碰| 热99这里只有精品视频| 热久国产| 亚洲六月综合激情久久下卡| 狼人狠狠操| 久久婷婷五月综合色播| 九九干视频| 国产成人一区二区三区在线观看| 六月婷婷在线| 九九五月天| 色情网综合| 五月丁香婷婷综合网| 99热这里只有精品50| 九九热99视频在线| 黄色热99| 丁香六月综合激情| 丁香六月婷婷姐网| 婷婷五月天AV网| 精品九九网| 久久A极片| 色婷婷久久综合| 五月天激情子轮| 五月天无码| 丁香五月婷婷国产av| 色播五月丁香| 日本婷色| 电影《战争与艾拉》免费观看| 色青五月天| 国产亚洲精品久久久久久久久动漫| 91久久精品无码一区二区三区| 久久机只有这里精品| 99综合在线| 在线看av| 色香蕉婷婷| 色综合天天| 8区视频在线| 天天天天做夜夜夜夜做| 秋霞黄色一级久久| 91大神在线免费看视频全集男男一起操| 4399成人黄A片| 久久婷婷网站| 五月婷在线观看| 色婷婷a三区麻| 秋霞午夜理论| www.99在线| 亚洲综合另类| 久久99jiu9| 伊人九热| 五月WWW| 日韩黄黄| WWW,色五月| 亚洲综合无码| 色色色婷婷| 久久综合9| 丁香五月婷婷图片综合| 337p大胆噜噜噜噜噜91Av| 92久久| 五月天伊人综合| 婷婷丁香小说| 色婷婷社区| 丁香五月天的网址。| 亚洲精品小视频| 大香蕉五月丁香| 亚卅毛片| 精品五月花| 丁香花大香蕉婷婷综合| 久久99热网| 国产黄大片在线观看画质优化| 六月色色| 91丨九色丨43老版熟女| 国产这里只有精品| 天天做天天爽| 99热这里只有精品9| 天天干天干| 99精彩视频| 可以看的av| 91性高潮久久久久久久久| 免费观看的av| 丁香五月电影| 少妇大叫太大太粗太爽了A片 | 亚洲色网络| 五月丁香综合激情网| 九九综合| 色五月六月| www.com五月天| 激情五月丁香亭亭 | 天天日天天干天天操| 97色婷| 亚洲网站观看视频| 日本丰满久久| 久大香蕉| 丁香五月在线人妻| 激情五月天之五月婷婷| 狠狠色丁香久久婷婷综合五月| 色XX综合网| 伊人婷婷大香蕉| 五月色丁香| 成人av在线网| 久久久九九九 99| 99热综合在线| 丁香六月 婷婷六月| 五月婷婷婷自由综合| 五月婷婷之综合激情| www.色综合.com| 国产亚洲在线观看| 91碰免费视频| 成人短视频在线免费观看| 婷婷性爱影院| 九九久久五月天综合伊人| 五月激情婷婷丁香| 久久五月视频| 中字幕视频在线永久在线观看免费| 在线成人国产| 色香蕉影院| 亚洲欧洲自拍图片专区五月天| 五月丁香六月婷婷综合| 青青草原亚洲天堂| 国产成人AV| 婷婷娌伦网| 亚洲avjiujiur91| 情趣视频66| 婷婷五月婷婷| 1024久婷| 99亚色色色| 色色网站免费| 99热这里只有精品66| 亚州男人天堂婷婷五月| 丁香五月婷婷AV| 九九热在这里只有精品| 99爽视频| 欧美怡红院黄站| 五月丁香啪啪综合| 深爱丁香激情| 久久伊人婷婷| 99亚洲精品综合在线| 国产亚洲色婷婷久久99精品91| 色爱终和网| 久久大香蕉| 五月色婷婷夜色| 色五月涩涩婷婷蜜桃| 99只有这里有精品在线视频| 极品人妻VIDEOSSS人妻| 国产午夜精品一区二区| 激情五月网站| 日韩成人AV在线| 操碰99在线视频观看| 婷婷五月天成人五月天| 深爱综合网| 免费观看全黄做爰的视频| 9福利性视频欧美| 亚洲综合在线丁香五月| 天天色宗合| 色噜久| 天天干天天色天天干| 色色色色五月| 色色色色区| 99re热视频| 91性高潮久久久久久久久| www.97干视频| 淫水导航| 婷婷五月天成人网| 男人天堂99| 婷婷婷婷婷婷婷五月丁香| 中文字幕日产A片在线看| YJLZZJLZZ亚洲乱熟无码| 成人免费va| http://www.com久久久精品一区| 婷婷丁香色五月亚洲| 亚洲色五月婷婷| 99在线视频。| 五月丁香WWW| 一起草性爱不卡视频| 超碰资源在线| 激情五月丁香六月| 婷婷色色综合| 女人天堂av| 天天日综合| 99热主页日本| 激情婷婷五月天| 91大神在线免费看视频全集男男一起操| 伊人综合网4| 99精品在这里| 狠狠综合久久| 天天操中文字幕| 91精品啪| 99综合色| www。五月,com| 久香草视频在线观看| 国产AV一区二区三区日韩| 思思久久99热| www久久久| 九九久久99精品免费观看www| 思思热在线观看| 婷婷丁香www视频日本韩国| 天天色天天色天天色天天色天天色| 无码AV久久久久久久久| 五月丁香色婷婷婷基地| 26uuu精品一区二区| 久久99网站| 99久久婷婷国产综合精品草原| 97色片| 九九色精品| 九月丁香婷婷综合| 激情性爱五月天| 99九九热在线观看| 91丨九色丨白浆秘| 99热综合网| 亚洲另类婷婷综合| 五月婷色色| 色婷婷婷婷| 五月亭亭六月色| 91一起操| 久久99最新| 图片区 小说区 区 亚洲五月 | 五月天亭亭俺也| 99热一本久道| 久久久久人妻| 91人人操人人爱| 久久久五月天| 久久久精品99亚洲综合| 五月大香蕉| 国产五月婷| 亚洲九九99精品视频在线播放| 日韩在线五月天婷婷| 亚洲黄色av网站| 六月丁香色色| 婷婷激情五月综合| 国产超碰在线| 五月婷婷婷婷婷婷艺术| 五月天小说激情| 夜夜爱网站| 婷婷五月AV| 国产成人综合网| 另类激情五月| 99在线视频喷水| 91AV婷婷| 丁香六月婷婷综合激情欧美| 99精品国产在热久久| 99色爱| a色婷婷| 99热18| 狠狠五月丁香色婷| 亚洲狠狠终合停停终合| 婷婷六月丁香欧美视频在线| 欧美色色干| 99热这里只有精| 婷婷丁香基地在线| 久久婷婷六月综合综合| 中文字幕在线不卡| 亚洲精99| 国产精品男人AV不卡| 中文字幕激情综合| 99热99ai| 五月婷婷影视| 国产激情在线| 五月天婷婷一起草| 果冻传媒A片一二三区| 久久久人妻| 色欲婷婷夜夜| 国产精品A片在线| www.色综合| 天堂五月婷婷| 色婷婷丁香社综合| 99热精品在这里| 久久婷婷欧美| 超碰资源在线| 精品一二三区久久AAA片| 狠狠干无码| 狠狠色丁香久久久婷| 亚洲av电影网站| 99ri国产| 九九九午夜影院成人| 97色图片中文字幕视频在线观看| www.五月天婷婷| 亚洲九九99精品视频在线播放| 五月丁香偷拍| 天天看A片| 国产日日操夜夜操的肉棒视频| 欧美色图天堂网色| 五月激情天| 超碰99热精品| 五月丁香 啪啪啪| 丁香六月色婷婷|