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

查日志只有ES好使?那是你沒這樣用Clickhouse……

開發 架構 新聞
我們寫了一套Clickhouse日志系統貢獻給開源社區,并將Clickhouse的日志采集架構的經驗做了總結。

一、背景

石墨文檔全部應用部署在Kubernetes上,每時每刻都會有大量的日志輸出,我們之前主要使用SLS和ES作為日志存儲。但是我們在使用這些組件的時候,發現了一些問題。

1、成本問題

SLS個人覺得是一個非常優秀的產品,速度快,交互方便,但是SLS索引成本比較貴

  • 我們想減少SLS索引成本的時候,發現云廠商并不支持分析單個索引的成本,導致我們無法知道是哪些索引構建得不夠合理
  • ES使用的存儲非常多,并且耗費大量的內存

2、通用問題

  • 如果業務是混合云架構,或者業務形態有SAAS和私有化兩種方式,那么SLS并不能通用
  • 日志和鏈路,需要用兩套云產品,不是很方便

3、精確度問題

  • SLS存儲的精度只能到秒,但我們實際日志精度到毫秒,如果日志里面有traceid,SLS中無法通過根據traceid信息,將日志根據毫秒時間做排序,不利于排查錯誤

我們經過一番調研后,發現使用Clickhouse能夠很好地解決以上問題,并且Clickhouse省存儲空間,非常省錢,所以我們選擇了Clickhouse方案存儲日志。但當我們深入研究后,Clickhouse作為日志存儲有許多落地的細節,但業界并沒有很好闡述相關Clickhouse采集日志的整套流程,以及沒有一款優秀的Clickhouse日志查詢工具幫助分析日志,為此我們寫了一套Clickhouse日志系統貢獻給開源社區,并將Clickhouse的日志采集架構的經驗做了總結。先上個Clickhouse日志查詢界面,讓大家感受下石墨最懂前端的后端程序員。

圖片

二、架構原理圖

我們將日志系統分為四個部分:日志采集、日志傳輸、日志存儲、日志管理。

  • 日志采集:LogCollector采用Daemonset方式部署,將宿主機日志目錄掛載到LogCollector的容器內,LogCollector通過掛載的目錄能夠采集到應用日志、系統日志、K8S審計日志等
  • 日志傳輸:通過不同Logstore映射到Kafka中不同的Topic,將不同數據結構的日志做了分離
  • 日志存儲:使用Clickhouse中的兩種引擎數據表和物化視圖
  • 日志管理:開源的Mogo系統,能夠查詢日志,設置日志索引,設置LogCollector配置,設置Clickhouse表,設置報警等

圖片

以下我們將按照這四大部分,闡述其中的架構原理。

三、日志采集

1、采集方式

Kubernetes容器內日志收集的方式通常有以下三種方案。

  • DaemonSet方式采集:在每個node節點上部署LogCollector,并將宿主機的目錄掛載為容器的日志目錄,LogCollector讀取日志內容,采集到日志中心。
  • 網絡方式采集:通過應用的日志SDK,直接將日志內容采集到日志中心 。
  • SideCar方式采集:在每個pod內部署LogCollector,LogCollector只讀取這個pod內的日志內容,采集到日志中心。

以下是三種采集方式的優缺點:

圖片

我們主要采用DaemonSet方式和網絡方式采集日志。DaemonSet方式用于ingress、應用日志的采集,網絡方式用于大數據日志的采集。以下我們主要介紹下DeamonSet方式的采集方式。

2、日志輸出

從上面的介紹中可以看到,我們的DaemonSet會有兩種方式采集日志類型,一種是標準輸出,一種是文件。

引用元乙的描述:雖然使用 Stdout 打印日志是 Docker 官方推薦的方式,但大家需要注意:這個推薦是基于容器只作為簡單應用的場景,實際的業務場景中我們還是建議大家盡可能使用文件的方式,主要的原因有以下幾點:

  • Stdout 性能問題,從應用輸出 stdout 到服務端,中間會經過好幾個流程(例如普遍使用的JSONLogDriver):應用 stdout -> DockerEngine -> LogDriver -> 序列化成 JSON -> 保存到文件 -> Agent 采集文件 -> 解析 JSON -> 上傳服務端。整個流程相比文件的額外開銷要多很多,在壓測時,每秒 10 萬行日志輸出就會額外占用 DockerEngine 1 個 CPU 核;
  • Stdout 不支持分類,即所有的輸出都混在一個流中,無法像文件一樣分類輸出,通常一個應用中有 AccessLog、ErrorLog、InterfaceLog(調用外部接口的日志)、TraceLog 等,而這些日志的格式、用途不一,如果混在同一個流中將很難采集和分析;
  • Stdout 只支持容器的主程序輸出,如果是 daemon/fork 方式運行的程序將無法使用 stdout;
  • 文件的 Dump 方式支持各種策略,例如同步/異步寫入、緩存大小、文件輪轉策略、壓縮策略、清除策略等,相對更加靈活。

從這個描述中,我們可以看出在docker中輸出文件再采集到日志中心是一個更好的實踐。所有日志采集工具都支持采集文件日志方式,但是我們在配置日志采集規則的時候,發現開源的一些日志采集工具,例如fluentbit、filebeat在DaemonSet部署下采集文件日志是不支持追加例如pod、namespace、container_name、container_id等label信息,并且也無法通過這些label做些定制化的日志采集。

圖片

基于無法追加label信息的原因,我們暫時放棄了DeamonSet部署下文件日志采集方式,采用的是基于DeamonSet部署下標準輸出的采集方式。

3、日志目錄

以下列舉了日志目錄的基本情況。

圖片

因為我們采集日志是使用的標準輸出模式,所以根據上表我們的LogCollector只需要掛載/var/log,/var/lib/docker/containers兩個目錄。

1)標準輸出日志目錄

應用的標準輸出日志存儲在/var/log/containers目錄下,文件名是按照K8S日志規范生成的。這里以nginx-ingress的日志作為一個示例。我們通過ls /var/log/containers/ | grep nginx-ingress指令,可以看到nginx-ingress的文件名。

圖片

nginx-ingress-controller-mt2wx_kube-system_nginx-ingress-controller-be3741043eca1621ec4415fd87546b1beb29480ac74ab1cdd9f52003cf4abf0a.log

我們參照K8S日志的規范:/var/log/containers/%{DATA:pod_name}_%{DATA:namespace}_%{GREEDYDATA:container_name}-%{DATA:container_id}.log??梢詫ginx-ingress日志解析為:

  • pod_name:nginx-ingress-controller-mt2w
  • namespace:kube-system
  • container_name:nginx-ingress-controller
  • container_id:be3741043eca1621ec4415fd87546b1beb29480ac74ab1cdd9f52003cf4abf0a

通過以上的日志解析信息,我們的LogCollector就可以很方便地追加pod、namespace、container_name、container_id的信息。

2)容器信息目錄

應用的容器信息存儲在/var/lib/docker/containers目錄下,目錄下的每一個文件夾為容器ID,我們可以通過cat config.v2.json獲取應用的docker基本信息。

圖片

4、LogCollector采集日志

1)配置

我們LogCollector采用的是fluent-bit,該工具是cncf旗下的,能夠更好地與云原生相結合。通過Mogo系統可以選擇Kubernetes集群,很方便地設置fluent-bit configmap的配置規則。

圖片

2)數據結構

fluent-bit的默認采集數據結構

  • @timestamp字段:string or float,用于記錄采集日志的時間
  • log字段:string,用于記錄日志的完整內容

Clickhouse如果使用@timestamp的時候,因為里面有@特殊字符,會處理得有問題。所以我們在處理fluent-bit的采集數據結構,會做一些映射關系,并且規定雙下劃線為Mogo系統日志索引,避免和業務日志的索引沖突。

  • _time_字段:string or float,用于記錄采集日志的時間
  • _log_字段:string,用于記錄日志的完整內容

例如你的日志記錄的是{"id":1},那么實際fluent-bit采集的日志會是{"_time_":"2022-01-15...","_log_":"{\"id\":1}" 該日志結構會直接寫入到kafka中,Mogo系統會根據這兩個字段_time_、_log_設置clickhouse中的數據表。

3)采集

如果我們要采集ingress日志,我們需要在input配置里,設置ingress的日志目錄,fluent-bit會把ingress日志采集到內存里

圖片

然后我們在filter配置里,將log改寫為_log_

圖片

然后我們在ouput配置里,將追加的日志采集時間設置為_time_,設置好日志寫入的kafka borkers和kafka topics,那么fluent-bit里內存的日志就會寫入到kafka中

圖片

日志寫入到Kafka中_log_需要為json,如果你的應用寫入的日志不是json,那么你就需要根據fluent-bit的parser文檔,調整你的日志寫入的數據結構:https://docs.fluentbit.io/manual/pipeline/filters/parser

四、日志傳輸

Kafka主要用于日志傳輸。上文說到我們使用fluent-bit采集日志的默認數據結構,在下圖kafka工具中我們可以看到日志采集的內容。

圖片

在日志采集過程中,會由于不用業務日志字段不一致,解析方式是不一樣的。所以我們在日志傳輸階段,需要將不同數據結構的日志,創建不同的Clickhouse表,映射到Kafka不同的Topic。這里以ingress為例,那么我們在Clickhouse中需要創建一個ingress_stdout_stream的Kafka引擎表,然后映射到Kafka的ingress-stdout Topic里。

五、日志存儲

我們會使用三種表,用于存儲一種業務類型的日志。

1、Kafka引擎表

將數據從Kafka采集到Clickhouse的ingress_stdout_stream數據表中。

create table logger.ingress_stdout_stream
(
_source_ String,
_pod_name_ String,
_namespace_ String,
_node_name_ String,
_container_name_ String,
_cluster_ String,
_log_agent_ String,
_node_ip_ String,
_time_ Float64,
_log_ String
)
engine = Kafka SETTINGS kafka_broker_list = 'kafka:9092', kafka_topic_list = 'ingress-stdout', kafka_group_name = 'logger_ingress_stdout', kafka_format = 'JSONEachRow', kafka_num_consumers = 1;

2、物化視圖

將數據從ingress_stdout_stream數據表讀取出來,_log_根據Mogo配置的索引,提取字段再寫入到ingress_stdout結果表里。

CREATE MATERIALIZED VIEW logger.ingress_stdout_view TO logger.ingress_stdout AS
SELECT
toDateTime(toInt64(_time_)) AS _time_second_,
fromUnixTimestamp64Nano(toInt64(_time_*1000000000),'Asia/Shanghai') AS _time_nanosecond_,
_pod_name_,
_namespace_,
_node_name_,
_container_name_,
_cluster_,
_log_agent_,
_node_ip_,
_source_,
_log_ AS _raw_log_,JSONExtractInt(_log_, 'status') AS status,JSONExtractString(_log_, 'url') AS url
FROM logger.ingress_stdout_stream where 1=1;

3、結果表

存儲最終的數據

create table logger.ingress_stdout
(
_time_second_ DateTime,
_time_nanosecond_ DateTime64(9, 'Asia/Shanghai'),
_source_ String,
_cluster_ String,
_log_agent_ String,
_namespace_ String,
_node_name_ String,
_node_ip_ String,
_container_name_ String,
_pod_name_ String,
_raw_log_ String,
status Nullable(Int64),
url Nullable(String),
)
engine = MergeTree PARTITION BY toYYYYMMDD(_time_second_)
ORDER BY _time_second_
TTL toDateTime(_time_second_) + INTERVAL 7 DAY
SETTINGS index_granularity = 8192;

六、總結流程

圖片

1、日志會通過fluent-bit的規則采集到kafka,在這里我們會將日志采集到兩個字段里。

_time_字段用于存儲fluent-bit采集的時間

_log_字段用于存放原始日志

2、通過mogo,在clickhouse里設置了三個表。

app_stdout_stream:將數據從Kafka采集到Clickhouse的Kafka引擎表

app_stdout_view:視圖表用于存放mogo設置的索引規則

app_stdout:根據app_stdout_view索引解析規則,消費app_stdout_stream里的數據,存放于app_stdout結果表中

3、最后mogo的UI界面,根據app_stdout的數據,查詢日志信息

七、Mogo界面展示

1、查詢日志界面

圖片

2、設置日志采集配置界面

圖片

以上文檔描述是針對石墨Kubernetes的日志采集。

責任編輯:張燕妮 來源: 高可用架構
相關推薦

2020-08-04 07:49:41

Oracle數據庫

2018-07-31 14:03:09

JVM內存數據

2018-11-09 15:23:14

績效考核激勵機制

2021-06-09 10:59:13

數字化轉型CIO數字化

2020-08-12 09:44:10

AI 數據人工智能

2020-07-09 08:37:13

ES6

2023-11-27 18:09:46

Redis內存數據庫

2021-05-13 09:27:13

JavaThreadLocal線程

2022-05-25 11:17:33

日志系統維護

2021-03-30 11:55:15

內核源碼宏定義Linux

2022-07-30 23:45:09

內存泄漏檢測工具工具

2025-11-03 03:00:00

2023-10-10 07:24:59

SRE日志OnCall

2025-10-11 08:11:53

JavaScript語法糖ES2025

2025-07-28 01:11:00

2022-08-15 18:31:18

PythonGUI

2017-12-19 11:00:54

Linux系統日志

2021-07-08 06:52:41

ESClickHouse Lucene

2022-09-21 09:27:51

日志系統

2023-01-04 08:17:21

Typescript技巧欺騙性
點贊
收藏

51CTO技術棧公眾號

91小视频在线免费看| 黄色不卡一区| 欧美日韩在线免费观看| 日本一区二区三区免费看| 亚洲熟女乱色一区二区三区久久久| 婷婷亚洲五月| 亚洲国产成人精品一区二区| 日日碰狠狠丁香久燥| 26uuu亚洲电影在线观看| 不卡av在线网| 成人午夜两性视频| 亚洲精品午夜国产va久久成人| 欧美一级精品| 亚洲国产日韩欧美在线图片| 天天操天天摸天天爽| 在线免费观看污| 久久精品无码一区二区三区| 99久久国产免费免费| 中文字幕精品无码亚| 91久久黄色| 久久夜色精品国产| japanese中文字幕| 国产精品2023| 91精品国产综合久久久蜜臀图片| 久久国产乱子伦免费精品| 18av在线播放| 国产精品电影院| 麻豆av一区二区三区| 国产视频在线观看视频| 日韩国产欧美三级| 97视频在线观看网址| 日韩在线中文字幕视频| 青青一区二区三区| 亚洲老头同性xxxxx| 久久久久无码精品| 深夜福利亚洲| 欧美一a一片一级一片| 亚洲国产成人精品无码区99| av电影高清在线观看| 国产精品久久久久久久裸模| 久久综合狠狠综合久久综青草 | 综合久久综合| 中文字幕国产亚洲2019| 法国空姐电影在线观看| 日韩三区视频| 亚洲黄色片网站| 熟妇高潮一区二区| 97久久综合精品久久久综合| 日韩欧美区一区二| 1314成人网| 亚洲精品在线a| 日韩精品一区在线| 性生交大片免费看l| 亚洲专区**| 欧美不卡一二三| 337p日本欧洲亚洲大胆张筱雨| 成人在线啊v| 日韩欧美久久一区| 国产chinesehd精品露脸| 一区中文字幕电影| 精品播放一区二区| 黄色a一级视频| 精品一区在线| 中文字幕亚洲二区| 成人欧美一区二区三区黑人一| 久久亚洲影视| 美日韩在线视频| 国产在线视频二区| 99av国产精品欲麻豆| 欧美最猛性xxxxx(亚洲精品)| 日韩欧美三级视频| 久久久久一区| 国产欧美日韩免费| 国产普通话bbwbbwbbw| 国产高清成人在线| 久久久com| 77导航福利在线| 亚洲精品中文字幕乱码三区| 大伊香蕉精品视频在线| jizz内谢中国亚洲jizz| 欧美日韩中字一区| 亚洲av无一区二区三区久久| 国产欧美自拍一区| 欲色天天网综合久久| 国产成人av免费在线观看| 欧美一区二区三区久久精品茉莉花 | 国产精品影片在线观看| 国产精品久久久久毛片| 成人一区二区三区在线观看| 欧美日韩免费精品| 动漫一区在线| 狠狠做深爱婷婷久久综合一区| 国内自拍视频一区| 日本精品一区二区三区在线观看视频| 日韩av在线免费播放| 欧美精品日韩在线| 国产在线日韩| 国产精品高潮呻吟久久av野狼| 国产高清视频免费观看| 久久日韩粉嫩一区二区三区 | 激情亚洲网站| 国产精品久久久久久网站| 精品国产九九九| 国产亚洲欧美一区在线观看| 91国在线高清视频| 午夜无码国产理论在线| 精品免费日韩av| 91无套直看片红桃在线观看| 亚洲黄色视屏| 亚洲www视频| 国产高清免费av在线| 亚洲一本大道在线| 国产美女18xxxx免费视频| 偷拍精品福利视频导航| 蜜臀久久99精品久久久久久宅男| 欧美一级淫片免费视频黄| 国产一区二区在线看| 免费在线成人av电影| 色呦呦在线视频| 欧美日韩精品欧美日韩精品| 日本黄色片在线播放| 欧美1区视频| 国产美女精彩久久| 欧美日韩视频精品二区| 亚洲第一狼人社区| 亚洲一级片免费观看| 99久久视频| 国产精品精品一区二区三区午夜版 | 精品五月天久久| 久久久久亚洲AV| 国产真实乱子伦精品视频| 日韩色妇久久av| 永久免费毛片在线播放| 精品99一区二区三区| 激情视频在线播放| 国产一区二区在线视频| 椎名由奈jux491在线播放 | 国产精品嫩草99av在线| 99久久自偷自偷国产精品不卡| 日本暖暖在线视频| 欧美日韩在线三级| 波多野结衣一二三四区| 久久久人人人| 青青成人在线| 素人啪啪色综合| 综合欧美国产视频二区| 中国一区二区视频| 国产精品久久久久9999吃药| 在线免费观看av的网站| 四季av一区二区三区免费观看| 国产精品偷伦免费视频观看的| 国产在线视频网址| 欧美视频日韩视频在线观看| 日韩一级片在线免费观看| 免费观看日韩电影| 亚洲精品一区二区三区av| 国产精品66| 久久久久999| 精品二区在线观看| 亚洲午夜私人影院| 免费的av网站| 日韩黄色片在线观看| 亚洲国产精品视频一区| 图片一区二区| 欧美激情奇米色| 五十路在线视频| 91国偷自产一区二区使用方法| 美国一级黄色录像| 国内精品免费在线观看| 精品人妻大屁股白浆无码| 欧美三级午夜理伦三级在线观看| 日韩av手机在线看| av中文字幕在线| 欧美一区午夜视频在线观看| 久草精品视频在线观看| 91视频免费播放| 高清一区二区视频| 亚洲精品成人影院| 精品久久久久久中文字幕动漫| 超碰一区二区| 久热精品视频在线免费观看| 日本黄色不卡视频| 欧美在线色视频| 玖玖爱免费视频| 久久欧美中文字幕| 爽爽爽在线观看| 99香蕉国产精品偷在线观看 | 99视频在线免费观看| 色戒汤唯在线观看| 久久精品国产精品| 少妇av一区二区| 欧美日精品一区视频| 国产在线观看成人| 国产精品久久久久久妇女6080| 伊人av在线播放| 日产国产欧美视频一区精品| 今天免费高清在线观看国语| 亚洲人亚洲人色久| 成人亚洲欧美一区二区三区| 制服丝袜专区在线| 久久91亚洲精品中文字幕| 国产高清一级毛片在线不卡| 精品久久久久久久久久久院品网 | 午夜欧美巨大性欧美巨大| 久久久精品国产一区二区| 日韩大胆人体| 日韩欧美国产wwwww| 在线免费观看av网址| 夜夜揉揉日日人人青青一国产精品 | 久久美女福利视频| 中文字幕一区二区三区欧美日韩| 欧美在线激情| 加勒比色综合久久久久久久久 | 国产黄色片网站| 91国在线观看| 国产免费av一区二区| 亚洲精品久久久蜜桃| 成人性视频免费看| 久久先锋影音av| xfplay5566色资源网站| 国产精品自拍网站| 色一情一区二区| 日产国产高清一区二区三区| 男女高潮又爽又黄又无遮挡| 欧美日韩调教| 少妇高潮大叫好爽喷水| 91嫩草亚洲精品| 亚洲不卡一卡2卡三卡4卡5卡精品| 99香蕉久久| 成人资源av| 久久免费精品| 91欧美精品午夜性色福利在线| 成人免费视频观看| 国产精品视频1区| 性高爱久久久久久久久| 51精品在线观看| 欧美13videosex性极品| 午夜精品久久久久久久久久久久久 | 神马久久久久久久久久| 日韩欧美中文字幕一区| 国产精品久久欧美久久一区| 欧美精品久久久久久久多人混战| 中文字幕视频免费观看| 欧美色视频一区| 一区二区的视频| 欧美日韩成人一区| 一级特黄录像免费看| 欧美精品aⅴ在线视频| 国产精品自偷自拍| 777午夜精品视频在线播放| 91久久久久久久久久久久| 欧美精品1区2区3区| 国产按摩一区二区三区| 欧美mv日韩mv国产网站| 国产成人手机在线| 亚洲国产精品人人爽夜夜爽| 日本免费不卡| 深夜福利亚洲导航| 国产cdts系列另类在线观看| 欧美黑人性猛交| 麻豆mv在线看| 国产精品成熟老女人| 99精品美女视频在线观看热舞| 51精品国产人成在线观看| aaa国产精品视频| 精品视频一区在线| 婷婷综合一区| 一区二区在线观看网站| 欧美福利网址| 国产亚洲精品网站| 免费黄网站欧美| 人妻精品久久久久中文字幕69| bt欧美亚洲午夜电影天堂| 瑟瑟视频在线观看| 中文字幕在线不卡| 久久综合综合久久| 一本色道久久综合精品竹菊| 亚洲性生活大片| 亚洲国产99精品国自产| 懂色av中文在线| 欧美乱妇高清无乱码| 日韩脚交footjobhdboots| 国产精品日韩在线播放| 伊人精品综合| 欧洲在线视频一区| 欧美a级一区| 国产成人精品视频ⅴa片软件竹菊| 精品中文字幕一区二区小辣椒| 大尺度在线观看| 国产精品久久久久影院亚瑟| 久久免费小视频| 欧美三级资源在线| 高清乱码毛片入口| 中文日韩在线观看| av在线小说| 国产日韩欧美在线| 精品欧美午夜寂寞影院| 中文字幕在线亚洲精品 | 日韩av.com| 91在线你懂得| avtt天堂在线| 欧美日韩在线三区| 欧美孕妇孕交xxⅹ孕妇交| 欧美超级乱淫片喷水| 国产亚洲一区二区手机在线观看 | 国产二区在线播放| 欧美高清在线视频观看不卡| 成人免费毛片嘿嘿连载视频…| 精品国产乱码久久久久久久软件| 国产精品久久久久一区二区三区厕所| 国产精品沙发午睡系列| 国产精品99久久久久久久女警 | 国产精品视频不卡| 欧美三级电影在线| 91传媒免费视频| 久久99精品国产麻豆不卡| 受虐m奴xxx在线观看| 午夜成人免费视频| av在线资源观看| 最新的欧美黄色| 电影亚洲精品噜噜在线观看| 国产自产精品| 国产精品hd| 日本网站在线看| 中文字幕在线一区二区三区| 成年人视频免费| 亚洲色图欧美制服丝袜另类第一页| 波多野结衣在线观看| 97久久夜色精品国产九色| 99久久夜色精品国产亚洲96| 激情婷婷综合网| 久久精品视频在线免费观看 | 久久久久久夜| 久久久久久久久久久国产精品| 婷婷丁香久久五月婷婷| 色噜噜在线播放| 性欧美xxxx视频在线观看| 日本精品在线观看| 国产91在线亚洲| 丰满放荡岳乱妇91ww| 久久久久成人精品无码| 日韩欧美色综合| 大香伊人久久| 国产综合动作在线观看| 亚洲国产午夜| 99re久久精品国产| 欧美日韩美女在线| 亚洲国产精品久久人人爱潘金莲| 欧美大成色www永久网站婷| 看亚洲a级一级毛片| 大陆极品少妇内射aaaaaa| 国产成人8x视频一区二区| 国产亚洲精品久久777777| 精品国产免费久久 | 欧美性生交xxxxxdddd| 五月婷婷丁香六月| 欧美一级在线亚洲天堂| 国产精品自拍区| 日本黄大片一区二区三区| 中文字幕一区二区三区蜜月 | 精品视频在线一区二区在线| 亚洲欧美日本国产有色| 国产美女一区二区| 国产一级做a爱免费视频| 日韩精品免费综合视频在线播放 | 999热视频| 亚洲久久一区| 蜜桃久久精品成人无码av| 欧美日韩一级片网站| 污视频在线看网站| 国内精品久久久久久久果冻传媒| 久久精品国产清高在天天线| 最新中文字幕av| 91精品国产综合久久久蜜臀图片| 丁香花在线电影小说观看| 日本高清视频一区二区三区| 精品一区二区三区在线视频| 国产一级片播放| 国产一区二区日韩| 精品中文字幕一区二区三区四区| av免费观看国产| 国产精品热久久久久夜色精品三区 | 99成人在线观看| 精品1区2区在线观看| 国产成人精品一区二三区在线观看| 亚洲成年人专区| 91丨九色丨黑人外教| 91国内精品久久久| 午夜精品久久久久久久男人的天堂| 精品一区二区三区在线| 中文字幕在线观看视频www| 色菇凉天天综合网| 91在线中文| 日韩精品一线二线三线| 国产成人午夜精品影院观看视频 | 电影亚洲一区| 真人抽搐一进一出视频| 国产精品视频第一区| 欧美自拍偷拍第一页| 国产日韩欧美视频|