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

Istio 可觀測性之日志,深入了解 Istio 通過 Envoy 來提供訪問日志功能

運維
在現在的 Telemetry V2 版本的架構中,訪問日志直接通過服務網格的數據平面 Envoy 上生成并上報給日志后端。根據后端日志采集方式的不同,會有不同的通道和方式。

訪問日志提供了一種從單個工作負載實例的角度監控和理解行為的方法,同樣訪問日志是我們在生產環境中必不可少的一種監控手段,Istio 通過 Envoy 來提供訪問日志功能,Envoy Proxy 打印訪問信息到標準輸出,Envoy 容器的標準輸出能夠通過 kubectl logs 命令打印出來。

Istio 能夠以一組可配置的格式為服務流量生成訪問日志,使運維人員可以完全控制日志記錄的方式、內容、時間和地點。下面是一個典型的 Istio 訪問日志示例:

[2023-12-04T06:17:42.719Z] "GET /productpage HTTP/1.1" 200 - via_upstream - "-" 0 5289 23 22 "10.244.0.0" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36" "f3a98cd1-6970-42c0-9c86-d179b93aa779" "192.168.0.100:31896" "10.244.1.254:9080" inbound|9080|| 127.0.0.6:45629 10.244.1.254:9080 10.244.0.0:0 outbound_.9080_._.productpage.default.svc.cluster.local default

在現在的 Telemetry V2 版本的架構中,訪問日志直接通過服務網格的數據平面 Envoy 上生成并上報給日志后端。根據后端日志采集方式的不同,會有不同的通道和方式。Envoy 可以通過控制臺或者文件輸出,由各種日志代理采集,也可以通過 gRPC 協議直接上報日志給標準的訪問日志服務 ALS(Envoy Access Log Service),比如 Skywalking 就支持,一般流程如下所示

  • Envoy 根據服務網格配置提取應用的訪問信息。
  • 上報訪問日志,比如通過 gRPC 協議上報給 ALS 服務。
  • ALS 服務 對接后端,將日志寫到 Elasticsearch、Kafka 等后端服務中。
  1. 通過 Kibanba、Grafana 等工具從后端服務檢索日志。

開啟 Envoy 訪問日志

同樣的方式在 Istio 中我們可以通過 MeshConfig 和 Telemetry API 的方式來啟用訪問日志。如果想通過 MeshConfig 方式來配置,需要在安裝配置中添加以下字段(默認已經配置了):

spec:
  meshConfig:
    accessLogFile: /dev/stdout

或者,在原來的 istioctl install 命令中添加相同的設置,例如:

istioctl install <flags-you-used-to-install-Istio> --set meshConfig.accessLogFile=/dev/stdout

此外還可以通過設置 accessLogEncoding 為 JSON 或 TEXT 來配置日志的格式。另外還可以設置 accessLogFormat 來自定義訪問日志的格式,如果沒有指定 accessLogFormat 的話 Istio 將使用以下默認的訪問日志格式:

[%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %RESPONSE_CODE_DETAILS% %CONNECTION_TERMINATION_DETAILS%
\"%UPSTREAM_TRANSPORT_FAILURE_REASON%\" %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\"
\"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\" %UPSTREAM_CLUSTER% %UPSTREAM_LOCAL_ADDRESS% %DOWNSTREAM_LOCAL_ADDRESS% %DOWNSTREAM_REMOTE_ADDRESS% %REQUESTED_SERVER_NAME% %ROUTE_NAME%\n

當然我們還是強烈推薦使用 Telemetry API 來開啟或關閉訪問日志,如下所示:

apiVersion: telemetry.istio.io/v1alpha1
kind: Telemetry
metadata:
  name: mesh-default
  namespace: istio-system
spec:
  accessLogging:
    - providers:
        - name: envoy

上面的示例使用默認的 envoy 訪問日志提供程序,當然我們也可以應用于單獨的命名空間或單獨的工作負載,以在細粒度級別控制日志記錄。

Loki

接下來我們來將訪問日志發送到 Grafana Loki 進行統一的日志管理,Loki 是一個水平可擴展、高可用的多租戶日志聚合系統。

首先我們需要先確保 Loki 已經安裝,我們這里同樣只是為了測試,直接使用下面的方式安裝即可,如果在生產環境中使用,則需要參考官方文檔進行分布式部署。

kubectl apply -f samples/addons/loki.yaml -n istio-system

由于 Istio 默認并沒有直接支持 Loki 這個 Provider,我們可以查看 MeshConfig 的 ExtensionProvider 字段,可以看到 Istio 默認支持的 Provider 有:

字段

類型

描述

是否必需

name

string

必填。用于唯一標識擴展提供商的名稱。

envoyExtAuthzHttp

EnvoyExternalAuthorizationHttpProvider (oneof)

配置實現了 Envoy ext_authz 過濾器授權檢查服務的外部授權器,使用 HTTP API。

envoyExtAuthzGrpc

EnvoyExternalAuthorizationGrpcProvider (oneof)

配置實現了 Envoy ext_authz 過濾器授權檢查服務的外部授權器,使用 gRPC API。

zipkin

ZipkinTracingProvider (oneof)

配置使用 Zipkin API 的跟蹤提供商。

datadog

DatadogTracingProvider (oneof)

配置 Datadog 跟蹤提供商。

stackdriver

StackdriverProvider (oneof)

配置 Stackdriver 提供商。

skywalking

SkyWalkingTracingProvider (oneof)

配置 Apache SkyWalking 提供商。

opentelemetry

OpenTelemetryTracingProvider (oneof)

配置 OpenTelemetry 跟蹤提供商。

prometheus

PrometheusMetricsProvider (oneof)

配置 Prometheus 指標提供商。

envoyFileAccessLog

EnvoyFileAccessLogProvider (oneof)

配置 Envoy 文件訪問日志提供商。

envoyHttpAls

EnvoyHttpGrpcV3LogProvider (oneof)

針對 HTTP 流量配置 Envoy 訪問日志服務提供商。

envoyTcpAls

EnvoyTcpGrpcV3LogProvider (oneof)

針對 TCP 流量配置 Envoy 訪問日志服務提供商。

envoyOtelAls

EnvoyOpenTelemetryLogProvider (oneof)

配置 Envoy Open Telemetry 訪問日志服務提供商。

沒有 Loki 這個 Provider,那么我們需要怎樣才能將日志發送到 Loki 中呢?這里我們可以使用 OpenTelemetry 來收集日志,然后再通過 OpenTelemetry Collector 來將日志發送到 Loki 中。

OpenTelemetry

OpenTelemetry(簡稱 OTel) 是一個開源的可觀測框架,用于生成、收集和描述應用程序的觀測數據。它提供了一組 API、庫、Agent 和 Collector,用于捕獲分布式跟蹤和度量數據,并將其發送到分析軟件、存儲庫或其他服務,OTel 的目標是提供一套標準化、與廠商無關的 SDK、API 和工具集,用于將數據攝取、轉換和發送到可觀測性后端(開源或商業廠商)。

OpenTelemetry Collector

OpenTelemetry Collector 提供了一個與廠商無關的實現方式,用于接收、處理和導出遙測數據,它消除了運行、操作和維護多個代理/收集器的需求。

事實上收集器也并不是必需的,有的時候我們可以直接將遙測數據發送到外部的可視化工具中,比如 Jaeger、Zipkin 等等,但是這樣的話我們就需要在每個應用中都進行配置,這樣的話就會導致配置非常繁瑣,而且也不利于統一管理,所以這里我們就可以使用 OpenTelemetry Collector 來解決這個問題。

而且 OpenTelemetry Collector 本身部署起來也非常靈活,可以將其部署為代理或網關。區別在于作為代理時,收集器實例與應用程序在同一主機上運行(sidecar 容器、daemonset 等)。此外一個或多個收集器實例也可以作為獨立服務以每個集群、數據中心和地區的網關形式運行。

一般來說建議新應用選擇代理部署,現有應用選擇網關部署的方式,如果是 Kubernetes 環境,當然更建議部署為守護進程(代理模式)的方式。

收集器由四個組件組成,通過管道(Pipeline)進行啟用:

  • 接收器(Receiver)將數據發送到收集器中,可以通過推送或拉取方式發送
  • 處理器(Processor)決定如何處理接收到的數據
  • 導出器(Exporter)決定將數據發送到哪里,可以通過拉取或推送方式完成,上面代碼中的 OTLPTraceExporter 就是一個導出器
  • 連接器(Connectors):連接器既是輸出者又是接收者。連接器連接兩個管道:它作為一個管道末端的導出器消耗數據,并作為另一個管道開始處的接收器發出數據。它可以消耗和發出相同數據類型或不同數據類型的數據。

OTel Collector

當然我們也可以基于社區的組件進行自定義,以增強和擴展收集器管道。例如我們可以創建一個專用的導出器來接收并攝取指標、追蹤和日志。

OpenTelemetry Collector 部署

在了解了 OpenTelemetry 的相關概念后,接下來我們需要部署 OpenTelemetry Collector,同樣我們直接使用 Istio 提供的 samples 中的配置即可:

kubectl apply -f samples/open-telemetry/loki/otel.yaml -n istio-system

該命令會部署一個 OpenTelemetry 采集器,其中比較重要的是該采集器的配置:

apiVersion: v1
kind: ConfigMap
metadata:
  name: opentelemetry-collector-conf
  labels:
    app: opentelemetry-collector
data:
  opentelemetry-collector-config: |
    receivers:
      otlp:
        protocols:
          grpc:
          http:
    processors:
      batch:
      attributes:
        actions:
        - action: insert
          key: loki.attribute.labels
          value: pod, namespace,cluster,mesh
    exporters:
      loki:
        endpoint: "http://loki.istio-system.svc:3100/loki/api/v1/push"
      logging:
        loglevel: debug
    extensions:
      health_check:
    service:
      extensions:
      - health_check
      pipelines:
        logs:
          receivers: [otlp]
          processors: [attributes]
          exporters: [loki, logging]

上面的配置中我們主要關注 exporters 字段,其中 loki 就是我們要將日志發送到的 Loki 服務,endpoint 字段指定了 Loki 服務的地址,這里我們直接使用 Loki 的 Service 名稱即可,因為 Loki 服務暴露了 3100 端口,所以我們可以直接使用 http://loki.istio-system.svc:3100/loki/api/v1/push 來訪問 Loki 服務。而 receivers 字段表示接收器,這里配置的是 otlp,表示使用 OpenTelemetry 的 OTLP 標準協議來接收數據。processors 字段表示處理器,這里我們使用了 attributes 處理器,它的作用是向日志中添加一些自定義的屬性,比如 pod、namespace、cluster、mesh 等等,這樣我們在 Loki 中就可以通過這些屬性來進行檢索了。最后需要注意的是必須要在 service.pipelines 中明確聲明要啟用的管道以及管道中使用的接收器、處理器和導出器,否則不會生效。

現在在 Istio 根命名空間中包含如下的一些工作負載:

$ kubectl get pods -n istio-system
NAME                                       READY   STATUS    RESTARTS         AGE
grafana-5f9b8c6c5d-jv65v                   1/1     Running   16 (5h12m ago)   32d
istio-egressgateway-556f6f58f4-mqp5z       1/1     Running   0                4h26m
istio-ingressgateway-9c8b9b586-p2w67       1/1     Running   0                4h26m
istiod-644f5d55fc-dlktv                    1/1     Running   0                4h26m
jaeger-db6bdfcb4-9s8lr                     1/1     Running   0                3h47m
kiali-7c9d5f9f96-cp4mb                     1/1     Running   18 (5h12m ago)   32d
loki-0                                     1/1     Running   0                32m
opentelemetry-collector-5ccc9c9c55-msg5x   1/1     Running   0                60s
prometheus-5d5d6d6fc-lfz87                 2/2     Running   2 (5h12m ago)    2d19h

接下來我們就需要在 Istio 中添加一個 OpenTelemetry 訪問日志服務的 Provider,添加如下配置:

# iop.yaml
apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
spec:
  profile: demo
  meshConfig:
    extensionProviders:
      - name: otel
        envoyOtelAls:
          service: opentelemetry-collector.istio-system.svc.cluster.local
          port: 4317
          logFormat:
            labels:
              pod: "%ENVIRONMENT(POD_NAME)%"
              namespace: "%ENVIRONMENT(POD_NAMESPACE)%"
              cluster: "%ENVIRONMENT(ISTIO_META_CLUSTER_ID)%"
              mesh: "%ENVIRONMENT(ISTIO_META_MESH_ID)%"

在上面的配置中我們添加了一個名為 otel 的 Provider,該 Provider 是一個 envoyOtelAls,表示使用 OpenTelemetry 的訪問日志服務,對應的后端服務為 opentelemetry-collector.istio-system.svc.cluster.local,端口為 4317,這里我們直接使用 OpenTelemetry Collector 的 Service 名稱即可。最后我們還配置了 logFormat,表示日志的格式,這里我們添加了一些自定義的屬性,比如 pod、namespace、cluster、mesh 等等,然后在 OpenTelemetry 采集器中會把這些屬性轉換為 Loki 的標簽,這樣我們在 Loki 中就可以通過這些屬性來進行檢索了。

直接使用 istioctl 命令來安裝配置該對象即可:

istioctl install -f iop.yaml -y

到這里我們的準備工作就完成了。

使用 Telemetry API 配置訪問日志

接下來我們只需要通過 Telemetry API 來啟用上面我們配置的日志 Provider 就可以開始收集日志了,如下所示:

apiVersion: telemetry.istio.io/v1alpha1
kind: Telemetry
metadata:
  name: mesh-logging-default
  namespace: istio-system
spec:
  accessLogging:
    - providers:
        - name: otel

應用該資源對象后,整個服務網格的日志就都會被上報到 OTel 采集器,然后在 Loki 中就可以看到日志了。

這里我們直接打開 Grafana 的 Loki Dashboard 即可:

istioctl dashboard grafana

首先要在 Grafana 中添加 Loki 數據源:

Loki 數據源

然后接下來我們去訪問 Productpage 應用產生一些日志數據,再切換回到 Grafana 中,切換到 Explore 頁面,然后選擇 Loki 數據源,就可以看到 Loki 中的日志了:

日志查詢

同樣的我們還可以使用 Telemetry API 來做一些更加細粒度的配置。

比如可以使用以下配置禁用 sleep 服務的訪問日志:

apiVersion: telemetry.istio.io/v1alpha1
kind: Telemetry
metadata:
  name: disable-sleep-logging
  namespace: default
spec:
  selector:
    matchLabels:
      app: sleep
  accessLogging:
    - providers:
        - name: otel
      disabled: true

還可以使用 match 字段來指定要過濾的流量,比如可以使用以下配置禁用 httpbin 服務的入站訪問日志:

apiVersion: telemetry.istio.io/v1alpha1
kind: Telemetry
metadata:
  name: disable-httpbin-logging
spec:
  selector:
    matchLabels:
      app: httpbin
  accessLogging:
    - providers:
        - name: otel
      match:
        mode: SERVER # 入站模式
      disabled: true # 禁用

此外我們可以通過 CEL 表達式過濾訪問日志。只有響應碼大于等于 500 時,才會顯示訪問日志,如下所示:

apiVersion: telemetry.istio.io/v1alpha1
kind: Telemetry
metadata:
  name: filter-sleep-logging
spec:
  selector:
    matchLabels:
      app: sleep
  accessLogging:
    - providers:
        - name: otel
      filter:
        expression: response.code >= 500

比如只有響應碼大于等于 400 或請求轉到 BlackHoleCluster 或 PassthroughCluster 時,才顯示訪問日志:

apiVersion: telemetry.istio.io/v1alpha1
kind: Telemetry
metadata:
  name: default-exception-logging
  namespace: istio-system
spec:
  accessLogging:
    - providers:
        - name: otel
      filter:
        expression: "response.code >= 400 || xds.cluster_name == 'BlackHoleCluster' ||  xds.cluster_name == 'PassthroughCluster' "

參考文檔

  • https://istio.io/latest/docs/tasks/observability/。
  • https://opentelemetry.io/docs/。
責任編輯:姜華 來源: k8s技術圈
相關推薦

2022-09-27 21:32:14

Dapr指標與日志

2013-10-09 11:07:31

日志文件系統

2022-05-10 07:46:08

Envoy網絡通訊

2023-12-12 07:30:54

IstioWasm前端

2010-11-29 14:06:42

Sybase數據庫日志

2023-12-04 07:29:34

指標Istio

2023-11-07 07:46:02

GatewayKubernetes

2020-06-28 13:54:22

Apache Spar窗口函數數據

2021-10-28 05:48:15

零信任網絡訪問 ZTNA網絡

2024-09-27 10:05:02

2023-10-06 00:04:02

2023-10-26 08:47:30

云原生數據采集

2025-03-17 07:59:58

2023-11-10 15:03:08

2021-11-08 10:17:48

gRPC Istio網格

2023-03-09 08:00:22

2023-05-18 22:44:09

2023-09-21 23:29:59

2024-07-09 11:48:47

點贊
收藏

51CTO技術棧公眾號

激情aⅴ欧美一区二区欲海潮| 免费国产羞羞网站视频| 亚洲啊v在线观看| 精品少妇一区二区三区| 美女福利视频在线| 免费av在线网站| 成人精品电影在线观看| 国产精品久久久久久亚洲调教 | 97精品人妻一区二区三区香蕉| 欧美a级在线| 亚洲桃花岛网站| 一个人看的视频www| 天堂资源在线| 一区二区三区不卡在线观看 | 成人综合网网址| 天天综合天天干| 欧美伊人影院| 日韩在线观看免费全集电视剧网站| 黑人玩弄人妻一区二区三区| 亚洲成人a级片| 日韩欧美综合在线视频| 日韩免费在线观看av| 国产h在线观看| 91在线观看高清| 粉嫩高清一区二区三区精品视频 | xxxxx性欧美特大| 亚洲综合成人网| 中文字幕日韩精品一区二区| 韩国精品视频| 久久久久久亚洲综合影院红桃| 高清国产在线一区| 99久久久国产精品无码网爆| 青椒成人免费视频| 国产激情久久久| 毛片在线免费视频| 中日韩视频在线观看| 久久99久久久久久久噜噜| 国产视频精品免费| 日韩精品一区二区久久| 亚洲性视频网站| 无码人妻精品一区二区中文| 在线亚洲a色| 日韩精品视频在线免费观看| 成人做爰www看视频软件| 精品成人18| 欧美一级在线免费| 男男受被啪到高潮自述| 欧美午夜网站| 精品久久香蕉国产线看观看gif| 国产va亚洲va在线va| 久久久久黄久久免费漫画| 亚洲一二三区在线观看| 欧美乱做爰xxxⅹ久久久| 日韩精品亚洲人成在线观看| 亚洲一区二区三区三| 国产精品一色哟哟| 蜜桃av在线播放| 欧美香蕉大胸在线视频观看| 免费观看日韩毛片| 成人日韩精品| 欧美精选一区二区| 深夜做爰性大片蜜桃| 秋霞影院一区| 亚洲精品国产福利| 久久av无码精品人妻系列试探| 亚洲精品亚洲人成在线观看| 尤物yw午夜国产精品视频| 欧美老女人性生活视频| 久久影院100000精品| 不用播放器成人网| 日韩精品视频免费看| 男人的天堂成人在线| 国产精品偷伦免费视频观看的| 中文字幕人妻互换av久久| 极品美女销魂一区二区三区| 国产高清精品一区| 欧美在线 | 亚洲| 久久久久国产精品免费免费搜索| 色噜噜狠狠一区二区三区| 色影院视频在线| 亚洲最新视频在线播放| aⅴ在线免费观看| 在线成人免费| 精品视频在线播放免| 在线观看免费黄色网址| 国产精品多人| 国产成人一区二区三区电影| 国产美女永久免费| 99在线热播精品免费| 天堂精品视频| 爱情岛亚洲播放路线| 欧美在线小视频| 亚洲美女精品视频| 清纯唯美亚洲综合一区| 国产69精品久久久| 中文在线字幕免费观| 粉嫩绯色av一区二区在线观看| 欧美一区观看| 欧美videossex另类| 欧美在线免费视屏| 亚洲少妇中文字幕| 91久久久精品国产| 国产成人综合亚洲| 男人天堂网在线视频| 亚洲欧洲av另类| 虎白女粉嫩尤物福利视频| 日本99精品| 日韩在线观看免费全集电视剧网站| 91午夜视频在线观看| 国产一区二区三区美女| 日韩一本精品| 亚洲美女尤物影院| 精品久久久久久久久久久久久久久久久 | 成人搞黄视频| 久久精品国产视频| 国产在线一级片| 91视视频在线观看入口直接观看www| 一区二区三区四区欧美| 精品日韩视频| 亚洲精品视频免费在线观看| 九九视频免费看| 韩国一区二区视频| 天堂精品视频| 亚洲不卡系列| 亚洲人成在线观看网站高清| 成人免费区一区二区三区| 国产传媒一区在线| 麻豆一区二区三区在线观看| 人人精品久久| 日韩在线免费观看视频| 丰满人妻一区二区三区四区| 国产亚洲欧美中文| 日日摸天天爽天天爽视频| 亚洲欧洲av| 国产91av在线| 亚洲色图21p| 午夜精品aaa| 国产精品无码在线| 一本色道久久综合亚洲精品不卡| 成人欧美一区二区三区视频xxx| 国产黄色在线观看| 欧美一级二级在线观看| 亚洲av无码一区二区三区在线| 免费人成精品欧美精品| 亚洲一卡二卡三卡| 4438五月综合| 美日韩精品免费观看视频| aaa一区二区| 亚洲综合色视频| 亚州av综合色区无码一区| 亚洲精品少妇| 免费久久一级欧美特大黄| 黑人巨大精品| 宅男66日本亚洲欧美视频| 亚洲中文一区二区三区| 国产精品女同一区二区三区| 亚洲欧美天堂在线| 午夜久久99| 精品综合在线| 日韩不卡视频在线观看| 久久久成人av| 手机看片1024国产| 色菇凉天天综合网| 久久久久久久久久97| 国产91精品久久久久久久网曝门| 高清欧美精品xxxxx| 亚洲v天堂v手机在线| 国产精品99久久久久久www| 免费大片黄在线| 欧美成人福利视频| 黄瓜视频在线免费观看| 国产精品激情偷乱一区二区∴| 在线免费黄色小视频| 9国产精品视频| 亚洲黄色成人久久久| 日韩在线网址| 日韩av观看网址| 麻豆视频免费在线观看| 精品少妇一区二区三区在线播放| 国产成人亚洲欧洲在线| 国产精品拍天天在线| 韩国黄色一级片| 日日摸夜夜添夜夜添亚洲女人| 制服国产精品| 欧美大胆视频| 成人免费在线视频网站| 男人久久天堂| 欧美精品在线播放| 精品美女视频在线观看免费软件| 欧美乱妇一区二区三区不卡视频| 日韩高清免费av| 中文字幕在线不卡视频| 激情综合丁香五月| 国产一区二三区| 好男人www社区| 亚洲先锋成人| 影音欧美亚洲| 久久av网址| 国产精品推荐精品| 99久久999| 国产精品高潮呻吟久久av黑人| 免费av不卡在线观看| 尤物yw午夜国产精品视频| 无码国精品一区二区免费蜜桃| 欧美巨大另类极品videosbest| 999这里只有精品| 一区二区三区在线影院| 国精产品视频一二二区| 91社区在线播放| 日本女人性视频| 韩国av一区二区三区在线观看| av观看免费在线| 1024成人| bt天堂新版中文在线地址| 色综合天天综合网中文字幕| 欧美一区二区三区四区在线观看地址 | 欧美精选午夜久久久乱码6080| 91精品国产综合久久久蜜臀九色| 亚洲资源在线观看| 欧美卡一卡二卡三| 最新欧美精品一区二区三区| 综合 欧美 亚洲日本| 久久综合久久综合久久| 日本一区二区在线观看视频| 国产大陆精品国产| 超碰人人cao| 国产精品888| 亚洲第一天堂久久| 美女视频一区二区三区| 五月婷婷激情久久| 青青草国产成人av片免费| 又色又爽又高潮免费视频国产| 性娇小13――14欧美| 99999精品视频| 国产精品久久久亚洲一区| 免费观看国产精品视频| 在线观看亚洲| 久久久久久久午夜| 宅男噜噜噜66一区二区| 99精品人妻少妇一区二区| 在线综合视频| 黄色一级大片在线观看| 日韩不卡一二三区| 亚洲久久中文字幕| 久久99精品国产麻豆婷婷| 手机免费av片| 国产一区二区在线电影| 无码人妻少妇色欲av一区二区| 国产不卡视频在线播放| 精品伦一区二区三区| 91一区二区三区在线播放| 三级黄色片网站| 国产农村妇女精品| 国产激情无码一区二区三区| 亚洲精品少妇30p| 伊人365影院| 一本色道久久综合狠狠躁的推荐| 欧美一级淫片免费视频黄| 欧美日韩免费不卡视频一区二区三区| 国产又粗又长视频| 精品欧美久久久| 四虎在线观看| 日韩一区av在线| 欧美1—12sexvideos| 91精品国产91久久久久久吃药| 不卡av影片| 国产精品亚洲综合天堂夜夜| 精品99re| 欧美日韩精品不卡| 888久久久| 欧美变态另类刺激| 蜜桃传媒麻豆第一区在线观看| 交换做爰国语对白| caoporen国产精品视频| 中文字幕在线观看免费高清| 亚洲三级在线免费| 在线天堂中文字幕| 欧美日韩国产天堂| 老牛影视av牛牛影视av| 在线视频日韩精品| 日本在线观看高清完整版| 国产不卡在线观看| 亚洲经典视频| 日本不卡高清视频一区| 亚洲欧美伊人| 88av.com| 成人av免费网站| 99国产精品无码| 亚洲不卡一区二区三区| 91精东传媒理伦片在线观看| 亚洲高清福利视频| 日本黄色片在线观看| 91国内精品久久| 国产精品一区二区精品视频观看| 久99久在线| 亚洲综合五月| 一区二区三区国产免费| 成人性生交大片免费看中文网站| 久久视频精品在线观看| 香蕉乱码成人久久天堂爱免费| 91成人国产综合久久精品| 日韩精品一区二区视频| 欧美人与禽性xxxxx杂性| 国产欧美久久一区二区| 色婷婷综合久久久久久| 91成人综合网| 精品综合久久久久久8888| 粉嫩av蜜桃av蜜臀av| 亚洲一区二区三区影院| 国产又粗又黄又爽视频| 在线精品国产欧美| 神马久久午夜| 国产伦视频一区二区三区| 亚洲草久电影| 女人高潮一级片| 欧美极品少妇xxxxⅹ高跟鞋| 亚洲精品午夜国产va久久成人| 日韩欧美久久一区| 超碰超碰在线| 国产在线一区二区三区| 欧美偷拍综合| 成人3d动漫一区二区三区| 99国内精品久久| 日韩美女视频网站| 日韩精品一区二区在线观看| 黄色视屏免费在线观看| 国产精品香蕉国产| 欧美色爱综合| 人人爽人人av| 亚洲国产精品黑人久久久| 久久人人爽人人爽人人片av免费| 日韩电影中文字幕av| 看黄在线观看| 另类视频在线观看+1080p| 国产精品亚洲综合久久| 亚洲久久久久久| 精品日本美女福利在线观看| 日本激情一区二区| 欧美亚洲激情在线| 亚洲精品无吗| 国产精品拍拍拍| 国产精品天天看| 97在线视频人妻无码| 久久精品成人欧美大片| 国产精品一区二区精品| 屁屁影院ccyy国产第一页| 国产成a人无v码亚洲福利| 精品一区在线视频| 日韩精品久久久久久福利| 美女18一级毛片一品久道久久综合| 久久综合狠狠综合久久综青草 | 亚洲图色中文字幕| 1区2区3区欧美| 精品国产av鲁一鲁一区| 久久久久国色av免费观看性色| 国产精品久av福利在线观看| 亚洲午夜无码av毛片久久| 国产午夜三级一区二区三| 伊人网免费视频| 欧美美女18p| 欧美黄色网视频| 中文字幕永久视频| 亚洲欧洲综合另类| 日韩在线观看视频网站| 欧美专区国产专区| 日韩三级在线| 蜜桃色一区二区三区| 欧美日韩激情视频| 777电影在线观看| 成人三级在线| 久久福利精品| 久久国产高清视频| 精品国产免费人成电影在线观看四季 | 蜜桃91麻豆精品一二三区| 国产91精品青草社区| 欧美自拍偷拍| 国产综合精品在线| 亚洲天堂2014| 成 人片 黄 色 大 片| 69av在线视频| 欧美精品一二| 欧美色图校园春色| 精品日本美女福利在线观看| 在线观看日本一区二区| 国产精品视频yy9299一区| 亚洲精品免费在线观看视频| 欧美一二三视频| 五月激情久久久| 性久久久久久久久久| 8x8x8国产精品| 免费成人直播| 黄色成人在线免费观看| 久久久综合视频| 99视频在线观看免费| 日本精品久久久久影院| 中文字幕一区二区三区欧美日韩| 国产交换配乱淫视频免费| 日韩一区二区免费电影| 欧美大片免费高清观看| 国产免费裸体视频|