日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

云原生日志管理瑞士军刀 Fluent Operator 中文入门教程

發(fā)布時(shí)間:2023/12/9 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 云原生日志管理瑞士军刀 Fluent Operator 中文入门教程 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

公眾號關(guān)注?「奇妙的 Linux 世界」

設(shè)為「星標(biāo)」,每天帶你玩轉(zhuǎn) Linux !



Fluent Operator 介紹

隨著云原生技術(shù)的快速發(fā)展,技術(shù)的不斷迭代,對于日志的采集、處理及轉(zhuǎn)發(fā)提出了更高的要求。云原生架構(gòu)下的日志方案相比基于物理機(jī)或者是虛擬機(jī)場景的日志架構(gòu)設(shè)計(jì)存在很大差別。作為 CNCF 的畢業(yè)項(xiàng)目,Fluent Bit 無疑為解決云環(huán)境中的日志記錄問題的首選解決方案之一。但是在 Kubernetes 中安裝部署以及配置 Fluent Bit 都具有一定的門檻,加大了用戶的使用成本。

2019 年 1 月 21 日,KubeSphere 社區(qū)為了滿足以云原生的方式管理 Fluent Bit 的需求開發(fā)了?Fluentbit Operator,并在 2020 年 2 月 17 日發(fā)布了 v0.1.0 版本。此后產(chǎn)品不斷迭代,在?2021 年 8 月 4?正式將 Fluentbit Operator 捐獻(xiàn)給 Fluent 社區(qū)。

Fluentbit Operator 降低了 Fluent Bit 的使用門檻,能高效、快捷的處理日志信息,但是 Fluent Bit 處理日志的能力稍弱,我們還沒有集成日志處理工具,比如 Fluentd,它有更多的插件可供使用。基于以上需求,Fluentbit Operator 集成了 Fluentd,旨在將 Fluentd 集成為一個(gè)可選的日志聚合和轉(zhuǎn)發(fā)層,并重新命名為?Fluent Operator(GitHub 地址:https://github.com/fluent/fluent-operator)。在 2022 年 3 月 25 日 Fluent Operator 發(fā)布了 v1.0.0 版本,并將繼續(xù)迭代 Fluentd Operator,預(yù)計(jì)在 2022 年第 2 季度發(fā)布 v1.1.0 版本,增加更多的功能與亮點(diǎn)。

使用 Fluent Operator 可以靈活且方便地部署、配置及卸載 Fluent Bit 以及 Fluentd。同時(shí), 社區(qū)還提供支持 Fluentd 以及 Fluent Bit 的海量插件,用戶可以根據(jù)實(shí)際情況進(jìn)行定制化配置。官方文檔提供了詳細(xì)的示例,極易上手,大大降低了 Fluent Bit 以及 Fluentd 的使用門檻。

日志流水線的各個(gè)階段

Fluent Operator 可以單獨(dú)部署 Fluent Bit 或者 Fluentd,并不會強(qiáng)制要求使用 Fluent Bit 或 Fluentd,同時(shí)還支持使用 Fluentd 接收 Fluent Bit 轉(zhuǎn)發(fā)的日志流進(jìn)行多租戶日志隔離,這極大地增加了部署的靈活性和多樣性。為了更全面的了解 Fluent Operator,下圖以完整的日志流水線為例,將流水線分為三部分:采集和轉(zhuǎn)發(fā)、過濾以及輸出。

采集和轉(zhuǎn)發(fā)

Fluent Bit 與 Fluentd 均可以采集日志。

單獨(dú)部署時(shí),可以通過 Fluent Bit 的 intput 插件或者 Fluentd 的 forward 以及 http 等插件來滿足對日志收集的需求。兩者結(jié)合時(shí),Fluentd 可使用 forward 接受 Fluent Bit 的日志流轉(zhuǎn)發(fā)。

在性能方面,Fluent Bit 相比 Fluentd 更輕量,內(nèi)存消耗更小(約為 650KB),所以主要由 Fluent Bit 負(fù)責(zé)采集與轉(zhuǎn)發(fā)日志。在各個(gè)節(jié)點(diǎn)上通過以 DaemonSet 形式安裝的 Fluent Bit 來收集和轉(zhuǎn)發(fā)日志。

過濾

日志收集的數(shù)據(jù)往往過于雜亂與冗余,這要求日志處理中間件提供對日志信息進(jìn)行過濾和處理的能力。Fluent Bit 或 Fluentd 均支持 filter 插件,用戶可以根據(jù)自身需求,整合和定制日志數(shù)據(jù)。

輸出

Fluent Bit output 或 Fluentd output 插件將處理后的日志信息輸出到多個(gè)目的地,目的地可以是 Kafka、Elasticsearch 等第三方組件。

CRD 簡介

Fluent Operator 為 Fluent Bit 和 Fluentd 分別定義了兩個(gè) Group:fluentbit.fluent.io 和 fluentd.fluent.io。

fluentbit.fluent.io

fluentbit.fluent.io 分組下包含以下 6 個(gè) CRDs:

  • Fluentbit CRD 定義了 Fluent Bit 的屬性,比如鏡像版本、污點(diǎn)、親和性等參數(shù)。

  • ClusterFluentbitConfig CRD 定義了 Fluent Bit 的配置文件。

  • ClusterInput CRD 定義了 Fluent Bit 的 input 插件,即輸入插件。通過該插件,用戶可以自定義采集何種日志。

  • ClusterFilter CRD 定義了 Fluent Bit 的 filter 插件,該插件主要負(fù)責(zé)過濾以及處理 fluentbit 采集到的信息。

  • ClusterParser CRD 定義了 Fluent Bit 的 parser 插件,該插件主要負(fù)責(zé)解析日志信息,可以將日志信息解析為其他格式。

  • ClusterOutput CRD 定義了 Fluent Bit 的 output 插件,該插件主要負(fù)責(zé)將處理后的日志信息轉(zhuǎn)發(fā)到目的地。

fluentd.fluent.io

fluentd.fluent.io 分組下包含以下 7 個(gè) CRDs:

  • Fluentd CRD 定義了 Fluentd 的屬性,比如鏡像版本、污點(diǎn)、親和性等參數(shù)。

  • ClusterFluentdConfig CRD 定義了 Fluentd 集群級別的配置文件。

  • FluentdConfig CRD 定義了 Fluentd 的 namespace 范圍的配置文件。

  • ClusterFilter CRD 定義了 Fluentd 集群范圍的 filter 插件,該插件主要負(fù)責(zé)過濾以及處理 Fluentd 采集到的信息。如果安裝了 Fluent Bit,則可以更進(jìn)一步的處理日志信息。

  • Filter CRD 該 CRD 定義了 Fluentd namespace 的 filter 插件,該插件主要負(fù)責(zé)過濾以及處理 Fluentd 采集到的信息。如果安裝了 Fluent Bit,則可以更進(jìn)一步的處理日志信息。

  • ClusterOutput CRD 該 CRD 定義了 Fluentd 的集群范圍的 output 插件,該插件主要負(fù)責(zé)將處理后的日志信息轉(zhuǎn)發(fā)到目的地。

  • Output CRD 該 CRD 定義了 Fluentd 的 namespace 范圍的 output 插件,該插件主要負(fù)責(zé)將處理后的日志信息轉(zhuǎn)發(fā)到目的地。

編排原理簡介 (instance + mounted secret + CRD 的抽象能力)

盡管 Fluent Bit 與 Fluentd 都有收集、處理(解析和過濾)以及輸出日志的能力,但它們有著不同的優(yōu)點(diǎn)。Fluent Bit 相對 Fluentd 更為輕量與高效,而 Fluentd 插件更為豐富。

為了兼顧這些優(yōu)點(diǎn),Fluent Operator 允許用戶以多種方式靈活地使用 Fluent Bit 和 Fluentd:

  • Fluent Bit only 模式:如果您只需要在收集日志并在簡單處理后將日志發(fā)送到最終目的地,您只需要 Fluent Bit。

  • Fluentd only 模式:如果需要通過網(wǎng)絡(luò)以 HTTP 或 Syslog 等方式接收日志,然后將日志處理并發(fā)送到最終的目的地,則只需要 Fluentd。

  • Fluent Bit + Fluentd 模式:如果你還需要對收集到的日志進(jìn)行一些高級處理或者發(fā)送到更多的 sink,那么你可以組合使用 Fluent Bit 和 Fluentd。

Fluent Operator 允許您根據(jù)需要在上述 3 種模式下配置日志處理管道。Fluentd 與 Fluent Bit 具有豐富的插件以滿足用戶的各種自定義化需求,由于 Fluentd 與 Fluent Bit 的配置掛載方式相似,所以以 Fluent Bit 配置文件的掛載方式來進(jìn)行簡單介紹。

在 Fluent Bit CRD 中每個(gè) ClusterInput, ClusterParser, ClusterFilter,ClusterOutput 代表一個(gè) Fluent Bit 配置部分,由 ClusterFluentBitConfig 標(biāo)簽選擇器選擇。Fluent Operator 監(jiān)視這些對象,構(gòu)建最終配置,最后創(chuàng)建一個(gè) Secret 來存儲安裝到 Fluent Bit DaemonSet 中的配置。整個(gè)工作流程如下所示:

因?yàn)?Fluent Bit 本身沒有重新加載接口(詳細(xì)信息請參閱此已知問題[1]),為了使 Fluent Bit 能夠在 Fluent Bit 配置更改時(shí)獲取并使用最新配置,添加了一個(gè)名為 fluentbit watcher 的包裝器,以便在檢測到 Fluent Bit 配置更改時(shí)立即重新啟動(dòng) Fluent Bit 進(jìn)程。這樣,無需重新啟動(dòng) Fluent Bit pod 即可重新加載新配置。

為了使用戶配置更為方便,我們基于 CRD 強(qiáng)大的抽象能力將應(yīng)用以及配置的參數(shù)提取出來。用戶可以通過定義的 CRD 來對 Fluent Bit 以及 Fluentd 進(jìn)行配置。Fluent Operator 監(jiān)控這些對象的變化從而更改 Fluent Bit 以及 Fluentd 的狀態(tài)及配置。特別是插件的定義,為了使用戶更為平滑地過渡,我們在命名上基本與 Fluent Bit 原有的字段保持一致,降低使用的門檻。

如何實(shí)現(xiàn)多租戶日志隔離

Fluent Bit 可以高效的采集日志,但是如果需要對日志信息進(jìn)行復(fù)雜處理,Fluent Bit 則稍顯力不從心,而 Fluentd 則可以借助其豐富的插件完成對日志信息的高級處理。fluent-operator 為此抽象了 Fluentd 的各種插件,以便可以對日志信息進(jìn)行處理來滿足用戶的自定義需求。

從上面 CRD 的定義可以看出,我們將 Fluentd 的 config 及插件的 CRD 分成了 cluster 級別與 namespace 級別的 CRD。通過將 CRD 定義為兩種范圍,借助 Fluentd 的 label router 插件,就可以達(dá)到多租戶隔離的效果。

我們在 clusterfluentconfig 添加了 watchNamespace 字段,用戶可以根據(jù)自己的需求選擇監(jiān)聽哪些 namespace,如果為空,則表示監(jiān)控所有的 namespace。而 namesapce 級別的 fluentconfig 只能監(jiān)聽自己所位于的 namespace 中的 CR 及全局級別的配置。所以 namespace 級別的日志既可以輸出到該 namespace 中的 output,也可以輸出到 clsuter 級別的 output,從而達(dá)到多租戶隔離的目的。

Fluent Operator vs logging-operator

差別

  • 兩者皆可自動(dòng)部署 Fluent Bit 與 Fluentd。logging-operator 需要同時(shí)部署 Fluent Bit 和 Fluentd,而 Fluent Operator 支持可插拔部署 Fluent Bit 與 Fluentd,非強(qiáng)耦合,用戶可以根據(jù)自己的需要自行選擇部署 Fluentd 或者是 Fluent Bit,更為靈活。

  • 在 logging-operator 中 Fluent Bit 收集的日志都必須經(jīng)過 Fluentd 才能輸出到最終的目的地,而且如果數(shù)據(jù)量過大,那么 Fluentd 存在單點(diǎn)故障隱患。Fluent Operator 中 Fluent Bit 可以直接將日志信息發(fā)送到目的地,從而規(guī)避單點(diǎn)故障的隱患。

  • logging-operator 定義了 loggings,outputs,flows,clusteroutputs 以及 clusterflows 四種 CRD,而 Fluent Operator 定義了 13 種 CRD。相較于 logging-operator,Fluent Operator 在 CRD 定義上更加多樣,用戶可以根據(jù)需要更靈活的對 Fluentd 以及 Fluent Bit 進(jìn)行配置。同時(shí)在定義 CRD 時(shí),選取與 Fluentd 以及 Fluent Bit 配置類似的命名,力求命名更加清晰,以符合原生的組件定義。

  • 兩者均借鑒了 Fluentd 的 label router 插件實(shí)現(xiàn)多租戶日志隔離。

展望:

  • 支持 HPA 自動(dòng)伸縮;

  • 完善 Helm Chart,如收集 metrics 信息;

  • ...

用法詳解

借助 Fluent Operator 可以對日志進(jìn)行復(fù)雜處理,在這里我們可以通過?fluent-operator-walkthrough[2]?中將日志輸出到 elasticsearch 與 kafka 的例子對 Fluent Operator 的實(shí)際功能進(jìn)行介紹。要獲得 Fluent Operator 的一些實(shí)際操作經(jīng)驗(yàn),您需要一個(gè) Kind 集群。同時(shí)你還需要在這種類型的集群中設(shè)置一個(gè) Kafka 集群和一個(gè) Elasticsearch 集群。

#?創(chuàng)建一個(gè)?kind?的集群并命名為?fluent ./create-kind-cluster.sh#?在?Kafka?namespace?下創(chuàng)建一個(gè)?Kafka?集群 ./deploy-kafka.sh#?在?elastic?namespace?下創(chuàng)建一個(gè)?Elasticsearch?集群 ./deploy-es.sh

Fluent Operator 控制 Fluent Bit 和 Fluentd 的生命周期。您可以使用以下腳本在 fluent 命名空間中啟動(dòng) Fluent Operator:

./deploy-fluent-operator.sh

Fluent Bit 和 Fluentd 都已被定義為 Fluent Operator 中的 CRD,您可以通過聲明 FluentBit 或 Fluentd 的 CR 來創(chuàng)建 Fluent Bit DaemonSet 或 Fluentd StatefulSet。

Fluent Bit Only 模式

Fluent Bit Only 將只啟用輕量級的 Fluent Bit 對日志進(jìn)行采集、處理以及轉(zhuǎn)發(fā)。

使用 Fluent Bit 收集 kubelet 的日志并輸出到 Elasticsearch

cat?<<EOF?|?kubectl?apply?-f?- apiVersion:?fluentbit.fluent.io/v1alpha2 kind:?FluentBit metadata:name:?fluent-bitnamespace:?fluentlabels:app.kubernetes.io/name:?fluent-bit spec:image:?kubesphere/fluent-bit:v1.8.11positionDB:hostPath:path:?/var/lib/fluent-bit/resources:requests:cpu:?10mmemory:?25Milimits:cpu:?500mmemory:?200MifluentBitConfigName:?fluent-bit-only-configtolerations:-?operator:?Exists --- apiVersion:?fluentbit.fluent.io/v1alpha2 kind:?ClusterFluentBitConfig metadata:name:?fluent-bit-only-configlabels:app.kubernetes.io/name:?fluent-bit spec:service:parsersFile:?parsers.confinputSelector:matchLabels:fluentbit.fluent.io/enabled:?"true"fluentbit.fluent.io/mode:?"fluentbit-only"filterSelector:matchLabels:fluentbit.fluent.io/enabled:?"true"fluentbit.fluent.io/mode:?"fluentbit-only"outputSelector:matchLabels:fluentbit.fluent.io/enabled:?"true"fluentbit.fluent.io/mode:?"fluentbit-only" --- apiVersion:?fluentbit.fluent.io/v1alpha2 kind:?ClusterInput metadata:name:?kubeletlabels:fluentbit.fluent.io/enabled:?"true"fluentbit.fluent.io/mode:?"fluentbit-only" spec:systemd:tag:?service.kubeletpath:?/var/log/journaldb:?/fluent-bit/tail/kubelet.dbdbSync:?NormalsystemdFilter:-?_SYSTEMD_UNIT=kubelet.service --- apiVersion:?fluentbit.fluent.io/v1alpha2 kind:?ClusterFilter metadata:name:?systemdlabels:fluentbit.fluent.io/enabled:?"true"fluentbit.fluent.io/mode:?"fluentbit-only" spec:match:?service.*filters:-?lua:script:key:?systemd.luaname:?fluent-bit-luacall:?add_timetimeAsTable:?true --- apiVersion:?v1 data:systemd.lua:?|function?add_time(tag,?timestamp,?record)new_record?=?{}timeStr?=?os.date("!*t",?timestamp["sec"])t?=?string.format("%4d-%02d-%02dT%02d:%02d:%02d.%sZ",timeStr["year"],?timeStr["month"],?timeStr["day"],timeStr["hour"],?timeStr["min"],?timeStr["sec"],timestamp["nsec"])kubernetes?=?{}kubernetes["pod_name"]?=?record["_HOSTNAME"]kubernetes["container_name"]?=?record["SYSLOG_IDENTIFIER"]kubernetes["namespace_name"]?=?"kube-system"new_record["time"]?=?tnew_record["log"]?=?record["MESSAGE"]new_record["kubernetes"]?=?kubernetesreturn?1,?timestamp,?new_recordend kind:?ConfigMap metadata:labels:app.kubernetes.io/component:?operatorapp.kubernetes.io/name:?fluent-bit-luaname:?fluent-bit-luanamespace:?fluent --- apiVersion:?fluentbit.fluent.io/v1alpha2 kind:?ClusterOutput metadata:name:?eslabels:fluentbit.fluent.io/enabled:?"true"fluentbit.fluent.io/mode:?"fluentbit-only" spec:matchRegex:?(?:kube|service)\.(.*)es:host:?elasticsearch-master.elastic.svcport:?9200generateID:?truelogstashPrefix:?fluent-log-fb-onlylogstashFormat:?truetimeKey:?"@timestamp" EOF

使用 Fluent Bit 收集 Kubernetes 的應(yīng)用日志并輸出到 Kafka

cat?<<EOF?|?kubectl?apply?-f?- apiVersion:?fluentbit.fluent.io/v1alpha2 kind:?FluentBit metadata:name:?fluent-bitnamespace:?fluentlabels:app.kubernetes.io/name:?fluent-bit spec:image:?kubesphere/fluent-bit:v1.8.11positionDB:hostPath:path:?/var/lib/fluent-bit/resources:requests:cpu:?10mmemory:?25Milimits:cpu:?500mmemory:?200MifluentBitConfigName:?fluent-bit-configtolerations:-?operator:?Exists --- apiVersion:?fluentbit.fluent.io/v1alpha2 kind:?ClusterFluentBitConfig metadata:name:?fluent-bit-configlabels:app.kubernetes.io/name:?fluent-bit spec:service:parsersFile:?parsers.confinputSelector:matchLabels:fluentbit.fluent.io/enabled:?"true"fluentbit.fluent.io/mode:?"k8s"filterSelector:matchLabels:fluentbit.fluent.io/enabled:?"true"fluentbit.fluent.io/mode:?"k8s"outputSelector:matchLabels:fluentbit.fluent.io/enabled:?"true"fluentbit.fluent.io/mode:?"k8s" --- apiVersion:?fluentbit.fluent.io/v1alpha2 kind:?ClusterInput metadata:name:?taillabels:fluentbit.fluent.io/enabled:?"true"fluentbit.fluent.io/mode:?"k8s" spec:tail:tag:?kube.*path:?/var/log/containers/*.logparser:?dockerrefreshIntervalSeconds:?10memBufLimit:?5MBskipLongLines:?truedb:?/fluent-bit/tail/pos.dbdbSync:?Normal --- apiVersion:?fluentbit.fluent.io/v1alpha2 kind:?ClusterFilter metadata:name:?kuberneteslabels:fluentbit.fluent.io/enabled:?"true"fluentbit.fluent.io/mode:?"k8s" spec:match:?kube.*filters:-?kubernetes:kubeURL:?https://kubernetes.default.svc:443kubeCAFile:?/var/run/secrets/kubernetes.io/serviceaccount/ca.crtkubeTokenFile:?/var/run/secrets/kubernetes.io/serviceaccount/tokenlabels:?falseannotations:?false-?nest:operation:?liftnestedUnder:?kubernetesaddPrefix:?kubernetes_-?modify:rules:-?remove:?stream-?remove:?kubernetes_pod_id-?remove:?kubernetes_host-?remove:?kubernetes_container_hash-?nest:operation:?nestwildcard:-?kubernetes_*nestUnder:?kubernetesremovePrefix:?kubernetes_ --- apiVersion:?fluentbit.fluent.io/v1alpha2 kind:?ClusterOutput metadata:name:?kafkalabels:fluentbit.fluent.io/enabled:?"false"fluentbit.fluent.io/mode:?"k8s" spec:matchRegex:?(?:kube|service)\.(.*)kafka:brokers:?my-cluster-kafka-bootstrap.kafka.svc:9091,my-cluster-kafka-bootstrap.kafka.svc:9092,my-cluster-kafka-bootstrap.kafka.svc:9093topics:?fluent-log EOF

Fluent Bit + Fluentd 模式

憑借 Fluentd 豐富的插件,Fluentd 可以充當(dāng)日志聚合層,執(zhí)行更高級的日志處理。您可以使用 Fluent Operator 輕松地將日志從 Fluent Bit 轉(zhuǎn)發(fā)到 Fluentd。

將日志從 Fluent Bit 轉(zhuǎn)發(fā)到 Fluentd

要將日志從 Fluent Bit 轉(zhuǎn)發(fā)到 Fluentd,您需要啟用 Fluent Bit 的 forward 插件,如下所示:

cat?<<EOF?|?kubectl?apply?-f?- apiVersion:?fluentbit.fluent.io/v1alpha2 kind:?ClusterOutput metadata:name:?fluentdlabels:fluentbit.fluent.io/enabled:?"true"fluentbit.fluent.io/component:?logging spec:matchRegex:?(?:kube|service)\.(.*)forward:host:?fluentd.fluent.svcport:?24224 EOF

部署 Fluentd

Fluentd forward Input 插件會在部署 Fluentd 時(shí)默認(rèn)啟用,因此你只需要部署下列 yaml 來部署 Fluentd:

apiVersion:?fluentd.fluent.io/v1alpha1 kind:?Fluentd metadata:name:?fluentdnamespace:?fluentlabels:app.kubernetes.io/name:?fluentd spec:globalInputs:-?forward:bind:?0.0.0.0port:?24224replicas:?1image:?kubesphere/fluentd:v1.14.4fluentdCfgSelector:matchLabels:config.fluentd.fluent.io/enabled:?"true"

ClusterFluentdConfig: Fluentd 集群范圍的配置

如果你定義了 ClusterFluentdConfig,那么你可以收集任意或者所有 namespace 下的日志。我么可以通過 watchedNamespaces 字段來選擇所需要采集日志的 namespace。以下配置是采集?kube-system?以及?default?namespace 下的日志:

cat?<<EOF?|?kubectl?apply?-f?- apiVersion:?fluentd.fluent.io/v1alpha1 kind:?ClusterFluentdConfig metadata:name:?cluster-fluentd-configlabels:config.fluentd.fluent.io/enabled:?"true" spec:watchedNamespaces:-?kube-system-?defaultclusterOutputSelector:matchLabels:output.fluentd.fluent.io/scope:?"cluster"output.fluentd.fluent.io/enabled:?"true" --- apiVersion:?fluentd.fluent.io/v1alpha1 kind:?ClusterOutput metadata:name:?cluster-fluentd-output-eslabels:output.fluentd.fluent.io/scope:?"cluster"output.fluentd.fluent.io/enabled:?"true" spec:outputs:-?elasticsearch:host:?elasticsearch-master.elastic.svcport:?9200logstashFormat:?truelogstashPrefix:?fluent-log-cluster-fd EOF

FluentdConfig: Fluentd namespace 范圍的配置

如果你定義了 FluentdConfig,那么你只能將與該 FluentdConfig 同一 namespace 下的日志發(fā)送到 Output,通過這種方式實(shí)現(xiàn)了不同 namespace 下的日志隔離。

cat?<<EOF?|?kubectl?apply?-f?- apiVersion:?fluentd.fluent.io/v1alpha1 kind:?FluentdConfig metadata:name:?namespace-fluentd-confignamespace:?fluentlabels:config.fluentd.fluent.io/enabled:?"true" spec:outputSelector:matchLabels:output.fluentd.fluent.io/scope:?"namespace"output.fluentd.fluent.io/enabled:?"true" --- apiVersion:?fluentd.fluent.io/v1alpha1 kind:?Output metadata:name:?namespace-fluentd-output-esnamespace:?fluentlabels:output.fluentd.fluent.io/scope:?"namespace"output.fluentd.fluent.io/enabled:?"true" spec:outputs:-?elasticsearch:host:?elasticsearch-master.elastic.svcport:?9200logstashFormat:?truelogstashPrefix:?fluent-log-namespace-fd EOF

根據(jù) namespace 將日志路由到不同的 Kafka topic

同樣您可以使用 Fluentd 的 filter 插件根據(jù)不同的 namespace 將日志分發(fā)到不同的 topic。在這里我們包含在 Fluentd 內(nèi)核中的插件 recordTransformer,該插件可以對事件進(jìn)行增刪改查。

cat?<<EOF?|?kubectl?apply?-f?- apiVersion:?fluentd.fluent.io/v1alpha1 kind:?ClusterFluentdConfig metadata:name:?cluster-fluentd-config-kafkalabels:config.fluentd.fluent.io/enabled:?"true" spec:watchedNamespaces:-?kube-system-?defaultclusterFilterSelector:matchLabels:filter.fluentd.fluent.io/type:?"k8s"filter.fluentd.fluent.io/enabled:?"true"clusterOutputSelector:matchLabels:output.fluentd.fluent.io/type:?"kafka"output.fluentd.fluent.io/enabled:?"true" --- apiVersion:?fluentd.fluent.io/v1alpha1 kind:?ClusterFilter metadata:name:?cluster-fluentd-filter-k8slabels:filter.fluentd.fluent.io/type:?"k8s"filter.fluentd.fluent.io/enabled:?"true" spec:filters:-?recordTransformer:enableRuby:?truerecords:-?key:?kubernetes_nsvalue:?${record["kubernetes"]["namespace_name"]} --- apiVersion:?fluentd.fluent.io/v1alpha1 kind:?ClusterOutput metadata:name:?cluster-fluentd-output-kafkalabels:output.fluentd.fluent.io/type:?"kafka"output.fluentd.fluent.io/enabled:?"true" spec:outputs:-?kafka:brokers:?my-cluster-kafka-bootstrap.default.svc:9091,my-cluster-kafka-bootstrap.default.svc:9092,my-cluster-kafka-bootstrap.default.svc:9093useEventTime:?truetopicKey:?kubernetes_ns EOF

同時(shí)使用集群范圍與 namespace 范圍的 FluentdConfig

當(dāng)然,你可以像下面一樣同時(shí)使用 ClusterFluentdConfig 與 FluentdConfig。FluentdConfig 會將?fluent?namespace 下的日志發(fā)送到 ClusterOutput,而 ClusterFluentdConfig 同時(shí)也會將 watchedNamespaces 字段下的 namespace(即 kube-system 以及 default 兩個(gè) namespace)發(fā)送到 ClusterOutput。

cat?<<EOF?|?kubectl?apply?-f?- apiVersion:?fluentd.fluent.io/v1alpha1 kind:?ClusterFluentdConfig metadata:name:?cluster-fluentd-config-hybridlabels:config.fluentd.fluent.io/enabled:?"true" spec:watchedNamespaces:-?kube-system-?defaultclusterOutputSelector:matchLabels:output.fluentd.fluent.io/scope:?"hybrid"output.fluentd.fluent.io/enabled:?"true" --- apiVersion:?fluentd.fluent.io/v1alpha1 kind:?FluentdConfig metadata:name:?namespace-fluentd-config-hybridnamespace:?fluentlabels:config.fluentd.fluent.io/enabled:?"true" spec:clusterOutputSelector:matchLabels:output.fluentd.fluent.io/scope:?"hybrid"output.fluentd.fluent.io/enabled:?"true" --- apiVersion:?fluentd.fluent.io/v1alpha1 kind:?ClusterOutput metadata:name:?cluster-fluentd-output-es-hybridlabels:output.fluentd.fluent.io/scope:?"hybrid"output.fluentd.fluent.io/enabled:?"true" spec:outputs:-?elasticsearch:host:?elasticsearch-master.elastic.svcport:?9200logstashFormat:?truelogstashPrefix:?fluent-log-hybrid-fd EOF

在多租戶場景下同時(shí)使用集群范圍與 namespace 范圍的 FluentdConfig

在多租戶場景下,我們可以同時(shí)使用集群范圍與 namespace 范圍的 FluentdConfig 達(dá)到日志隔離的效果。

cat?<<EOF?|?kubectl?apply?-f?- apiVersion:?fluentd.fluent.io/v1alpha1 kind:?FluentdConfig metadata:name:?namespace-fluentd-config-user1namespace:?fluentlabels:config.fluentd.fluent.io/enabled:?"true" spec:outputSelector:matchLabels:output.fluentd.fluent.io/enabled:?"true"output.fluentd.fluent.io/user:?"user1"clusterOutputSelector:matchLabels:output.fluentd.fluent.io/enabled:?"true"output.fluentd.fluent.io/user:?"user1" --- apiVersion:?fluentd.fluent.io/v1alpha1 kind:?ClusterFluentdConfig metadata:name:?cluster-fluentd-config-cluster-onlylabels:config.fluentd.fluent.io/enabled:?"true" spec:watchedNamespaces:-?kube-system-?kubesphere-systemclusterOutputSelector:matchLabels:output.fluentd.fluent.io/enabled:?"true"output.fluentd.fluent.io/scope:?"cluster-only" --- apiVersion:?fluentd.fluent.io/v1alpha1 kind:?Output metadata:name:?namespace-fluentd-output-user1namespace:?fluentlabels:output.fluentd.fluent.io/enabled:?"true"output.fluentd.fluent.io/user:?"user1" spec:outputs:-?elasticsearch:host:?elasticsearch-master.elastic.svcport:?9200logstashFormat:?truelogstashPrefix:?fluent-log-user1-fd --- apiVersion:?fluentd.fluent.io/v1alpha1 kind:?ClusterOutput metadata:name:?cluster-fluentd-output-user1labels:output.fluentd.fluent.io/enabled:?"true"output.fluentd.fluent.io/user:?"user1" spec:outputs:-?elasticsearch:host:?elasticsearch-master.elastic.svcport:?9200logstashFormat:?truelogstashPrefix:?fluent-log-cluster-user1-fd --- apiVersion:?fluentd.fluent.io/v1alpha1 kind:?ClusterOutput metadata:name:?cluster-fluentd-output-cluster-onlylabels:output.fluentd.fluent.io/enabled:?"true"output.fluentd.fluent.io/scope:?"cluster-only" spec:outputs:-?elasticsearch:host:?elasticsearch-master.elastic.svcport:?9200logstashFormat:?truelogstashPrefix:?fluent-log-cluster-only-fd EOF

為 Fluentd 輸出使用緩沖區(qū)

您可以添加一個(gè)緩沖區(qū)來緩存 output 插件的日志。

cat?<<EOF?|?kubectl?apply?-f?- apiVersion:?fluentd.fluent.io/v1alpha1 kind:?ClusterFluentdConfig metadata:name:?cluster-fluentd-config-bufferlabels:config.fluentd.fluent.io/enabled:?"true" spec:watchedNamespaces:-?kube-system-?defaultclusterFilterSelector:matchLabels:filter.fluentd.fluent.io/type:?"buffer"filter.fluentd.fluent.io/enabled:?"true"clusterOutputSelector:matchLabels:output.fluentd.fluent.io/type:?"buffer"output.fluentd.fluent.io/enabled:?"true" --- apiVersion:?fluentd.fluent.io/v1alpha1 kind:?ClusterFilter metadata:name:?cluster-fluentd-filter-bufferlabels:filter.fluentd.fluent.io/type:?"buffer"filter.fluentd.fluent.io/enabled:?"true" spec:filters:-?recordTransformer:enableRuby:?truerecords:-?key:?kubernetes_nsvalue:?${record["kubernetes"]["namespace_name"]} --- apiVersion:?fluentd.fluent.io/v1alpha1 kind:?ClusterOutput metadata:name:?cluster-fluentd-output-bufferlabels:output.fluentd.fluent.io/type:?"buffer"output.fluentd.fluent.io/enabled:?"true" spec:outputs:-?stdout:?{}buffer:type:?filepath:?/buffers/stdout.log-?elasticsearch:host:?elasticsearch-master.elastic.svcport:?9200logstashFormat:?truelogstashPrefix:?fluent-log-buffer-fdbuffer:type:?filepath:?/buffers/es.log EOF

Fluentd Only 模式

你同樣可以開啟 Fluentd Only 模式,該模式只會部署 Fluentd statefulset。

使用 Fluentd 從 HTTP 接收日志并輸出到標(biāo)準(zhǔn)輸出

如果你想單獨(dú)開啟 Fluentd 插件,你可以通過 HTTP 來接收日志。

cat?<<EOF?|?kubectl?apply?-f?- apiVersion:?fluentd.fluent.io/v1alpha1 kind:?Fluentd metadata:name:?fluentd-httpnamespace:?fluentlabels:app.kubernetes.io/name:?fluentd spec:globalInputs:-?http:bind:?0.0.0.0port:?9880replicas:?1image:?kubesphere/fluentd:v1.14.4fluentdCfgSelector:matchLabels:config.fluentd.fluent.io/enabled:?"true"--- apiVersion:?fluentd.fluent.io/v1alpha1 kind:?FluentdConfig metadata:name:?fluentd-only-confignamespace:?fluentlabels:config.fluentd.fluent.io/enabled:?"true" spec:filterSelector:matchLabels:filter.fluentd.fluent.io/mode:?"fluentd-only"filter.fluentd.fluent.io/enabled:?"true"outputSelector:matchLabels:output.fluentd.fluent.io/mode:?"true"output.fluentd.fluent.io/enabled:?"true"--- apiVersion:?fluentd.fluent.io/v1alpha1 kind:?Filter metadata:name:?fluentd-only-filternamespace:?fluentlabels:filter.fluentd.fluent.io/mode:?"fluentd-only"filter.fluentd.fluent.io/enabled:?"true" spec:filters:-?stdout:?{}--- apiVersion:?fluentd.fluent.io/v1alpha1 kind:?Output metadata:name:?fluentd-only-stdoutnamespace:?fluentlabels:output.fluentd.fluent.io/enabled:?"true"output.fluentd.fluent.io/enabled:?"true" spec:outputs:-?stdout:?{} EOF

引用鏈接

[1]

已知問題:?https://github.com/fluent/fluent-bit/issues/365

[2]

fluent-operator-walkthrough:?https://github.com/kubesphere-sigs/fluent-operator-walkthrough

本文轉(zhuǎn)載自:「KubeSphere云原生」,原文:https://tinyurl.com/2p8td5h7,版權(quán)歸原作者所有。歡迎投稿,投稿郵箱: editor@hi-linux.com。



最近,我們建立了一個(gè)技術(shù)交流微信群。目前群里已加入了不少行業(yè)內(nèi)的大神,有興趣的同學(xué)可以加入和我們一起交流技術(shù),在 「奇妙的 Linux 世界」 公眾號直接回復(fù) 「加群」 邀請你入群。

你可能還喜歡

點(diǎn)擊下方圖片即可閱讀

23 個(gè)必知必會的 Kubernetes 高頻面試題


點(diǎn)擊上方圖片,『美團(tuán)|餓了么』外賣紅包天天免費(fèi)領(lǐng)

更多有趣的互聯(lián)網(wǎng)新鮮事,關(guān)注「奇妙的互聯(lián)網(wǎng)」視頻號全了解!

總結(jié)

以上是生活随笔為你收集整理的云原生日志管理瑞士军刀 Fluent Operator 中文入门教程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

免费视频99| 91福利在线导航 | 伊人狠狠色丁香婷婷综合 | 一级片黄色片网站 | 中文字幕在线观看视频一区二区三区 | 国产成人福利在线观看 | 欧美日韩视频在线观看一区二区 | 91激情在线视频 | 精品理论片 | 中文有码在线 | 国产黄色精品网站 | 免费热情视频 | 999视频在线观看 | 深爱激情五月婷婷 | 综合在线色 | 最近中文字幕 | 国产免费又粗又猛又爽 | av片中文字幕 | 黄污在线看| 欧美日韩伦理在线 | 九色琪琪久久综合网天天 | aa级黄色大片 | 久久99最新地址 | 日韩欧美视频一区 | 国产91aaa | 久久成人综合视频 | 欧美激情在线网站 | 久久在现| 在线观看免费av网 | 久久在线视频在线 | 亚洲成人精品 | 日韩精品一区二区三区不卡 | 国产精品美女视频 | 在线a亚洲视频播放在线观看 | 久久毛片网站 | 日韩欧美视频免费在线观看 | 日日摸日日添日日躁av | 97人人艹 | 欧美日韩激情视频8区 | 超碰在线中文字幕 | 亚洲国产剧情 | 免费黄色在线播放 | 中文字幕成人一区 | 久久天天操 | www久久国产 | 久草视频中文在线 | 久久观看最新视频 | 色婷婷亚洲精品 | www国产亚洲精品久久网站 | 99精品欧美一区二区蜜桃免费 | av黄色免费看 | 国产精品久久久久久久久久 | a黄在线观看 | 亚洲一级黄色大片 | 少妇搡bbbb搡bbb搡aa | 欧美性色综合 | 国产精品成人aaaaa网站 | 久久久久久久久久网 | 亚洲视频在线免费看 | 久久久国产精华液 | 欧美日韩亚洲一 | 欧美一级看片 | 亚州av免费 | 日韩乱码在线 | 久久国产视频网站 | 91麻豆视频网站 | 亚洲区视频在线观看 | 欧美乱大交 | 午夜av一区 | 天天综合久久 | 17婷婷久久www | 国产1级视频 | 国产在线传媒 | 高清国产午夜精品久久久久久 | 国产福利精品一区二区 | 免费国产在线精品 | 成人精品影视 | 在线影院 国内精品 | 亚洲国产免费 | 国产精品久久久久久久久久直播 | 国产网站av | 色婷婷狠狠18 | 日黄网站| 香蕉97视频观看在线观看 | 免费国产亚洲视频 | 激情综合色综合久久综合 | 九九在线国产视频 | 久久9精品 | 婷婷久久一区二区三区 | 婷婷色综合网 | 亚洲一级特黄 | 亚洲精品毛片一级91精品 | 九九九热精品免费视频观看 | 欧美地下肉体性派对 | 日韩三级不卡 | 51久久成人国产精品麻豆 | 少妇视频在线播放 | 五月天激情视频 | 2023亚洲精品国偷拍自产在线 | 超碰国产在线观看 | 丝袜美腿av | 亚洲人成在线电影 | 91成年视频 | 激情欧美国产 | 国产午夜影院 | 国产91免费在线观看 | 精品一区二区在线观看 | 天天看天天干天天操 | 国产特级毛片aaaaaa | 日日弄天天弄美女bbbb | 久久久午夜电影 | 欧美日韩不卡在线 | 丝袜精品视频 | 久久精品视频免费观看 | 西西人体www444 | 久久婷综合 | 91亚洲成人| 免费99精品国产自在在线 | 国产高清一级 | 九九综合久久 | wwwwww国产| 综合久久久| 91精品一区国产高清在线gif | 国产99久久| 免费看在线看www777 | 91精品蜜桃 | 国内精品久久久久久中文字幕 | 久久99久久99精品 | 欧美成年人在线观看 | 国产精品11| 五月开心激情网 | 高潮久久久久久久久 | 黄色片网站大全 | 全久久久久久久久久久电影 | 国产精品综合av一区二区国产馆 | 五月婷影院 | 日韩精品久久久久久久电影99爱 | 婷婷亚洲五月 | av字幕在线| 成人小视频在线 | 亚州精品在线视频 | 成人毛片一区二区三区 | 精品久久美女 | 久草在线视频网 | 99精品久久精品一区二区 | 亚洲精品中文在线观看 | 丁香六月伊人 | 国产一级视屏 | 天天激情| 午夜精品在线看 | 狠狠干夜夜操 | 国产午夜三级一区二区三桃花影视 | 精品嫩模福利一区二区蜜臀 | 97超级碰碰碰视频在线观看 | 久久久久久毛片精品免费不卡 | 青草视频在线 | 999男人的天堂 | 九九热精| 国产麻豆精品免费视频 | 久久一本综合 | 天天摸天天干天天操天天射 | 色网站在线免费 | 亚洲精品在线免费 | 色婷婷综合久久久久中文字幕1 | 免费在线观看一区二区三区 | 国产精品私人影院 | 亚洲国产精品va在线 | 毛片美女网站 | 亚洲国产人午在线一二区 | 在线影院av | 成人福利av | 日日婷婷夜日日天干 | www99精品 | 丁香 婷婷 激情 | 91精品国产99久久久久久红楼 | 狠狠色丁香久久婷婷综合五月 | 日韩手机视频 | 色综合久久久久综合体 | 欧美激情精品久久久久 | 国产成人精品一区二区三区免费 | 久久精品一二三区白丝高潮 | 91九色综合 | 国色天香在线 | 国产精品24小时在线观看 | 粉嫩av一区二区三区四区五区 | 国产午夜精品久久 | 国产日韩精品一区二区三区在线 | 亚洲高清免费在线 | 日韩专区在线播放 | 国产精品久久久久永久免费 | 99视频网站 | 精品久久九九 | 91精品国产高清自在线观看 | 日韩欧美在线免费观看 | 国产一区欧美日韩 | 四虎国产 | 午夜久久福利视频 | 97精品国产97久久久久久免费 | 中文字幕国产视频 | 国产亚洲综合在线 | 免费视频三区 | 亚洲欧美日韩一区二区三区在线观看 | 91亚洲国产成人久久精品网站 | 国产精品久久久精品 | 国产亲近乱来精品 | 黄污视频网站大全 | 国产精品网址在线观看 | 天天艹| 欧美日韩精品在线一区二区 | 国产最顶级的黄色片在线免费观看 | 狠狠色丁香婷婷综合基地 | 久草视频免费 | 精品亚洲欧美无人区乱码 | 日韩一区二区三免费高清在线观看 | 激情在线网站 | 狠狠躁夜夜躁人人爽视频 | 成人免费视频免费观看 | 毛片网在线 | av电影在线不卡 | 中文字幕在线观看国产 | 五月婷婷六月综合 | 欧洲一区二区三区精品 | 波多野结衣精品在线 | 中文字幕最新精品 | 国语自产偷拍精品视频偷 | 中文字幕精品一区久久久久 | 蜜臀av夜夜澡人人爽人人桃色 | 久久精品牌麻豆国产大山 | 91免费观看| 一区二区三区四区五区在线 | 国产精品国产三级国产不产一地 | 成人在线观看日韩 | 成人在线一区二区三区 | 香蕉视频一级 | 国产成人久久精品亚洲 | 久久综合九色综合网站 | 久久手机视频 | 黄色午夜网站 | 中日韩欧美精彩视频 | 天天色天天综合 | 三级黄色欧美 | 久久免费视频国产 | 在线最新av | 日韩激情在线 | 日韩免费福利 | 成人免费xxx在线观看 | 国产在线成人 | 精品一二三区视频 | 日韩欧美在线免费观看 | 国产精品久久久久永久免费观看 | 亚洲一区二区三区miaa149 | 欧美日本啪啪无遮挡网站 | 国产精品久久久久免费 | 国产成人av免费在线观看 | 91精品国产三级a在线观看 | 黄网站免费久久 | 99久久精| 亚洲一区在线看 | 日本三级不卡视频 | 91免费观看视频网站 | 一区二区三区四区在线免费观看 | 国产精品99在线播放 | 在线观看成年人 | 久久亚洲私人国产精品 | 欧美色图88 | 亚洲.www| 国产精品久久久久永久免费看 | 欧美成人精品欧美一级乱黄 | 极品久久久久 | 美女黄频免费 | 欧美一区二区三区激情视频 | 亚洲第一av在线播放 | 精品久久久久久久久亚洲 | 色99之美女主播在线视频 | 超级碰碰碰碰 | 99精品视频网站 | 免费国产在线观看 | 在线日韩视频 | 久热av在线 | 黄色网址中文字幕 | 国产明星视频三级a三级点| 久久艹人人 | 日韩在线网 | 日韩高清毛片 | 99久久99久久精品免费 | 国产99久久九九精品免费 | 国产黄色精品在线 | 国产一区av在线 | 国产一区观看 | 亚洲黄色小说网址 | 97色在线视频 | 99精品乱码国产在线观看 | 激情文学丁香 | 爱色婷婷 | 午夜 久久 tv | 6080yy精品一区二区三区 | 国产精品久久久久一区二区国产 | 国产精品久久久久免费观看 | 成年人免费在线观看网站 | av日韩av| 午夜精品一区二区三区四区 | 亚洲国产三级在线观看 | 国产麻豆精品在线观看 | 草久久久久 | 午夜精品一区二区三区免费视频 | 在线中文字幕网站 | 干天天| 久久久久久久久久影视 | 国产精品久久久久久久久毛片 | 日日操日日干 | 久久天天综合网 | 美女久久网站 | 久久99深爱久久99精品 | 伊人精品影院 | 亚洲国产福利视频 | 日韩av男人的天堂 | 不卡视频国产 | 日韩特级毛片 | 国产精品涩涩屋www在线观看 | 国产一卡二卡在线 | 激情五月综合网 | 亚洲国产精品女人久久久 | a级一a一级在线观看 | 九草在线观看 | 国产男男gay做爰 | 狠狠躁日日躁狂躁夜夜躁av | 欧美 亚洲 另类 激情 另类 | av电影中文字幕 | 97精品超碰一区二区三区 | 黄污视频网站大全 | 久久精品亚洲精品国产欧美 | 在线a亚洲视频播放在线观看 | 亚洲精品国产精品久久99热 | 91观看视频 | www夜夜| 久久久久激情视频 | 欧美一二三视频 | 西西www444 | 亚洲精品www.| 久久久久中文字幕 | 久久久免费视频播放 | 亚洲视频网站在线观看 | 精品国产综合区久久久久久 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 天天摸夜夜操 | 欧美福利视频 | 丁香五婷| 久久热亚洲 | 日韩欧美视频在线观看免费 | 91污视频在线 | 91视频三区 | 欧美另类网站 | 色中色资源站 | 激情婷婷在线 | 麻豆 free xxxx movies hd | 一区二区影院 | 波多野结衣在线视频一区 | 国产99一区二区 | 亚洲午夜精品久久久 | 国产视频不卡一区 | 久久y| 91亚洲夫妻 | 国产精品久久久久一区二区国产 | 香蕉视频网址 | 欧美aa一级片 | 中文字幕在线观看视频一区二区三区 | 一区二区在线不卡 | 精品国产乱码一区二区三区在线 | 丁香电影小说免费视频观看 | 四月婷婷在线观看 | 天天爱天天操天天射 | 黄在线免费看 | 国产视频精品久久 | 99久久精品久久久久久清纯 | 国产亚洲综合性久久久影院 | 日韩欧美视频一区二区三区 | 黄色成人av| 在线免费精品视频 | 亚洲欧美婷婷六月色综合 | 午夜精品久久久久久久99婷婷 | 日韩专区在线观看 | 成人一级在线 | 久久经典国产视频 | 日韩欧美电影网 | 免费视频一区二区 | 日日精品 | 亚洲精品乱码久久久一二三 | 成年在线观看 | 国产永久免费观看 | av片中文 | 中文在线a∨在线 | 天天操比 | 国产专区在线播放 | 99久久激情视频 | 久久免费国产精品1 | 中文字幕一区在线 | 久久久精品国产免费观看一区二区 | 综合色亚洲 | 国产在线不卡精品 | 五月天婷亚洲天综合网鲁鲁鲁 | 免费视频xnxx com| 亚洲国产精彩中文乱码av | 在线观看不卡视频 | 中文字幕视频免费观看 | 国产视频一区二区在线 | 9999国产| 国产一二三在线视频 | 99国产精品久久久久老师 | 精品久久一二三区 | 国产黄色高清 | 国产一区二区在线观看免费 | 丁香花中文在线免费观看 | 二区在线播放 | 国产一区91| 中文字幕91在线 | 日韩高清一区二区 | 狠色在线 | 久久三级毛片 | 久久精品99国产精品酒店日本 | 国产日韩欧美在线免费观看 | 亚洲免费av观看 | 国产精品粉嫩 | 亚洲精品综合在线观看 | 99成人免费视频 | 精品视频99 | 国产福利资源 | 久久久精品综合 | 99热这里| 欧美日韩精品电影 | 亚洲精品乱码久久久久久9色 | 中文字幕视频一区 | 久久高清av | 91免费的视频在线播放 | 国产伦精品一区二区三区免费 | 亚洲成av片人久久久 | 91禁在线看| 中文在线中文资源 | 国产高清在线免费 | av三级在线免费观看 | 久久精品成人 | 国产精品一区免费观看 | 日日夜夜精品网站 | 在线а√天堂中文官网 | 午夜精品一区二区三区在线观看 | 国产原创中文在线 | 国产91aaa| 久久99精品国产91久久来源 | 欧美日产在线观看 | 精品国产一二三四区 | 丁香婷婷激情啪啪 | 亚洲成人精品久久 | www.天天操| 亚洲成av人片 | 麻豆国产精品永久免费视频 | 亚洲综合视频在线播放 | 成人a大片 | 成人va在线观看 | 永久免费毛片在线观看 | 中文字幕人成人 | 中文字幕中文字幕在线中文字幕三区 | 96精品视频 | 久草在线资源观看 | 亚洲开心色 | 国产精品高潮呻吟久久av无 | 国产又粗又硬又长又爽的视频 | 91久久一区二区 | 懂色av懂色av粉嫩av分享吧 | 一本到视频在线观看 | 天天射天天射天天 | 一区二区三区中文字幕在线观看 | 久99久精品| 久草干 | 欧美福利精品 | 六月丁香久久 | 日韩成人精品 | 精品国偷自产在线 | 久久99亚洲热视 | 国产免费成人av | 97操操操| 亚洲乱码在线观看 | 在线观看国产麻豆 | 国产日韩精品在线观看 | 色婷婷综合久久久久中文字幕1 | 亚洲黄色av | 99自拍视频在线观看 | 国产精品一级视频 | 天天爱天天插 | 亚洲深夜影院 | 国产不卡免费视频 | 久久久久久久久久伊人 | 香蕉影视| 亚洲黄色免费电影 | 欧美一区二区精美视频 | 亚洲最新毛片 | 免费在线观看av网站 | 狠狠色伊人亚洲综合网站色 | 狠狠色狠狠色综合日日92 | 中文字幕黄色 | 亚洲理论电影 | 国产视频在线观看一区 | 欧美地下肉体性派对 | 亚洲免费在线视频 | 在线观看免费成人av | 91精品国产麻豆国产自产影视 | 色婷婷久久久 | 国产黄 | 国产91学生粉嫩喷水 | 国产一级电影 | 国产视频一区二区在线 | zzijzzij亚洲日本少妇熟睡 | 成人久久久久久久久久 | 国产视频资源 | 高清在线一区 | 久久首页 | 久草在线官网 | 国产精品久久久久aaaa九色 | 91超在线 | 精品亚洲成a人在线观看 | 亚洲视频综合在线 | 国产精品自产拍 | 在线观看精品视频 | 色婷婷激婷婷情综天天 | 81国产精品久久久久久久久久 | 免费精品在线视频 | 麻豆成人网 | 91精品视频免费在线观看 | 97人人模人人爽人人喊中文字 | 国产玖玖在线 | 国产高清在线不卡 | 婷婷久久婷婷 | 欧美精品少妇xxxxx喷水 | 成人网在线免费视频 | 色婷婷www| 国产视频色 | 久久se视频| 欧美污在线观看 | 黄色片视频免费 | 国产视频欧美视频 | 激情小说网站亚洲综合网 | 国产91丝袜在线播放动漫 | 伊香蕉大综综综合久久啪 | 精品v亚洲v欧美v高清v | 96久久精品 | 国产精品毛片完整版 | 99久久精品网 | 日韩精品中文字幕在线不卡尤物 | 免费情缘 | 国产日韩高清在线 | 色婷婷久久 | 一本色道久久综合亚洲二区三区 | 丁香色天天| 激情xxxx | 97成人精品视频在线播放 | 中文字幕亚洲欧美日韩 | 最近免费在线观看 | 在线观看片| 久久99久| 色视频成人在线观看免 | 狠狠躁天天躁综合网 | 国产一区影院 | av福利在线播放 | 日本成人黄色片 | adn—256中文在线观看 | av免费电影在线观看 | 久久综合九色综合欧美狠狠 | 93久久精品日日躁夜夜躁欧美 | 久草在线这里只有精品 | av资源免费在线观看 | 午夜久久久久久久久 | 国产艹b视频 | 久久这里只有精品久久 | 日本不卡一区二区 | 色国产视频 | 精品视频在线播放 | 九九在线视频 | 日韩手机视频 | 国产一区免费在线观看 | 五月婷婷综合在线观看 | 蜜臀av性久久久久av蜜臀三区 | 黄色毛片电影 | 99久久精品久久久久久清纯 | 日本精品一区二区在线观看 | 国内视频在线观看 | 国产一区二区三区视频在线 | 国产亚洲成人精品 | 日韩三级精品 | 国产精品剧情在线亚洲 | 午夜三级在线 | 91网免费看 | 免费在线一区二区 | 亚洲精选在线观看 | 黄色三级视频片 | 久久欧美在线电影 | 人人插人人爱 | 最近2019年日本中文免费字幕 | 麻豆91精品视频 | 丁香婷婷在线 | 97超碰人人模人人人爽人人爱 | 狠狠操狠狠干天天操 | 国产成人精品一区二三区 | 亚洲精品在线一区二区 | 伊人久久婷婷 | 日韩精品免费在线观看视频 | 日韩精品不卡在线观看 | 四虎5151久久欧美毛片 | 中文字幕在线专区 | 蜜臀av性久久久久蜜臀av | 亚洲午夜久久久影院 | 就操操久久 | 日日爽夜夜操 | 久av电影 | 久久久久久久久久久免费 | 久久久久久久久久久久亚洲 | 日韩中文字幕视频在线观看 | 丁香六月在线 | 人人看人人 | 西西www4444大胆在线 | 91色在线观看视频 | 日日草视频 | 久久久久国产精品免费网站 | 日本精品视频在线 | 99视频精品全国免费 | 蜜臀av性久久久久蜜臀av | 国产裸体无遮挡 | 午夜在线看片 | 亚洲最新视频在线播放 | 国产欧美在线一区二区三区 | 日韩系列 | 亚洲日本成人网 | 五月激情天| www.成人久久 | 伊人中文字幕在线 | 四虎最新入口 | 97超视频免费观看 | 天天操天天爱天天爽 | 色黄久久久久久 | 亚洲精品久久视频 | 国产传媒中文字幕 | 亚洲精品乱码久久久久久蜜桃动漫 | 国产精品网址在线观看 | 人人草人人草 | 特级xxxxx欧美| 99热官网| 国产99久久久国产精品免费二区 | 99热这里精品 | 午夜黄色影院 | 成年人在线视频观看 | 久久九九影视 | 久久不色| 五月开心六月伊人色婷婷 | 高清有码中文字幕 | 国产高清视频在线播放 | 综合激情伊人 | 日韩亚洲在线视频 | 香蕉视频4aa | 久久99中文字幕 | 国产色啪 | 国产精久久久 | 欧美成天堂网地址 | 丁香激情婷婷 | 国产日韩在线视频 | 亚洲欧美激情精品一区二区 | 国产网红在线观看 | 国产美女视频一区 | 亚洲精品午夜一区人人爽 | 成年人黄色免费看 | 日韩亚洲在线 | 久久激情视频免费观看 | 国产视频欧美视频 | 色99色 | 国产精品一区二区免费视频 | 福利区在线观看 | 日韩免费中文 | 欧美激情视频久久 | a久久久久久| 在线一二三四区 | 韩日三级在线 | 99精品黄色 | av网站在线观看免费 | 在线精品视频免费观看 | 1区2区3区在线观看 三级动图 | 亚洲视频在线观看网站 | 久久电影国产免费久久电影 | www.在线看片.com | 日韩在线视频一区二区三区 | 超级碰碰免费视频 | 亚洲精品小视频 | 五月天久久综合 | 天操夜夜操 | 国际精品网 | 丁香花在线观看免费完整版视频 | 在线免费观看麻豆视频 | 97av色| 五月婷婷在线播放 | 中文字幕欧美日韩va免费视频 | 亚洲一区二区视频在线 | 精品久久影院 | 久久久96| 99热精品久久| 久久久999免费视频 日韩网站在线 | 亚洲高清视频在线观看 | h网站免费在线观看 | 经典三级一区 | 韩日av一区二区 | 国产小视频福利在线 | 91九色蝌蚪视频网站 | av女优中文字幕在线观看 | 亚洲精品中文在线观看 | 丁香六月五月婷婷 | 特级黄色一级 | 午夜电影久久久 | 国产精品一区二区久久久 | 国产欧美精品一区二区三区 | 99精品视频一区 | 天天操天天舔天天爽 | 少妇资源站 | 亚洲一本视频 | 久久99精品久久只有精品 | h文在线观看免费 | 99久久精品国产免费看不卡 | 超碰九九| 欧美专区日韩专区 | 91精品小视频 | 最近能播放的中文字幕 | av片在线观看免费 | 日韩精品一区二区三区在线视频 | 国产在线播放观看 | 国产日韩精品欧美 | 亚洲影院色 | 日韩综合一区二区三区 | 亚洲成人麻豆 | 超碰在线个人 | 国产精品久久久777 成人手机在线视频 | 国产一级特黄电影 | 天堂v中文| 色中文字幕在线观看 | 国产精品久久电影网 | 黄色一级在线观看 | 亚洲欧美日韩精品久久久 | 亚洲国产午夜精品 | 首页av在线 | 久久亚洲成人网 | 国产亚洲精品美女久久 | 亚洲人人av| 91九色porny在线 | 久久免费精品国产 | 四虎伊人 | 玖玖在线播放 | 天堂av在线免费观看 | 日韩欧美一区二区在线播放 | 丝袜美腿在线 | 久青草电影 | 插婷婷 | 欧美成人在线网站 | 丁香五香天综合情 | 亚洲日本va午夜在线影院 | 在线中文字母电影观看 | 69精品| 欧美精品中文字幕亚洲专区 | 成人a视频片观看免费 | 久久高清国产 | 日本中文字幕观看 | 色.www| 精品国产乱码久久久久久天美 | 午夜手机电影 | 五月婷婷操 | 亚洲最快最全在线视频 | 麻豆视传媒官网免费观看 | 久久久影片 | 欧美国产日韩久久 | 国产污视频在线观看 | 欧美精品视 | 亚洲精品黄 | 国产黄色片免费在线观看 | 91视频一8mav | 欧美性色黄 | 96精品视频 | 最新日韩在线 | 玖玖在线资源 | 国产 日韩 欧美 自拍 | 免费网站污 | 国产在线精品福利 | 国产精品成人在线观看 | 黄色一级大片在线观看 | 在线视频 影院 | 中文字幕美女免费在线 | 99久久99久久精品国产片果冰 | 亚洲精品在线国产 | 狠狠狠色丁香综合久久天下网 | 免费网址你懂的 | 久久精品一区二区三区四区 | 久久精品国产v日韩v亚洲 | 久久精品亚洲精品国产欧美 | 欧美激情第八页 | 色偷偷网站视频 | 久久精品综合 | 狠狠色狠狠色终合网 | 91av官网 | 97免费在线观看视频 | 涩涩色亚洲一区 | 国产精品网在线观看 | 亚洲精品在线视频观看 | 中文字幕乱码一区二区 | 午夜精品久久久久久久久久久久久久 | 日b视频国产| 国产成人在线免费观看 | 国产高清99 | 国产精品黄色影片导航在线观看 | 毛片888 | 伊人狠狠色丁香婷婷综合 | 欧美a影视 | 激情狠狠干 | 久久久久久久久久久影院 | 国产视频久久久久 | 国产九九九精品视频 | 一级黄毛片 | 久久久精品电影 | 久久综合99 | 国产精品va在线播放 | 久久97视频 | 亚洲精品资源 | 在线天堂中文在线资源网 | 99热这里有| 国产精品www | 在线免费观看亚洲视频 | 美女福利视频网 | 国产一区二区精品久久91 | 亚洲高清视频一区二区三区 | 色激情在线 | 国产黄色特级片 | 国产看片免费 | 人人爽人人澡 | 国产一区二区免费 | 视频在线播放国产 | 午夜精品一区二区三区免费视频 | 日韩三区在线观看 | 激情黄色av | 91免费高清 | 色香网 | 国产伦理久久精品久久久久_ | 热re99久久精品国产66热 | 夜夜夜精品 | 美女搞黄国产视频网站 | 久久综合成人 | 色狠狠久久av五月综合 | 中文字幕色综合网 | 最近中文国产在线视频 | 欧美色图88 | 99国产精品视频免费观看一公开 | 中文字幕专区高清在线观看 | 另类五月激情 | 九9热这里真品2 | 成人网大片| wwwwww国产 | 日本精品午夜 | 日韩av成人| 99精品视频免费在线观看 | 国产在线不卡 | 五月激情丁香图片 | 国产精品久久久久免费观看 | 国产一区精品在线观看 | 高清精品在线 | av女优中文字幕在线观看 | 免费高清在线观看电视网站 | 国产精品二区在线观看 | 九九视频精品在线 | 成人av资源在线 | 五月天综合网站 | 国产成人精品一区二区三区免费 | 亚洲午夜久久久久久久久电影网 | 成av人电影 | 免费亚洲成人 | 久久免费av电影 | 香蕉网在线观看 | 国产成人精品亚洲精品 | 日本性xxxxx| 久久高清免费观看 | 深爱激情综合网 | 国产免费av一区二区三区 | 日韩欧美网址 | 久久色视频 | 91久久一区二区 | 免费成人黄色片 | 久久草| 欧美性成人 | 天天操天天舔天天干 | 三级av网| 伊人色播 | 一级久久久 | 东方av免费在线观看 | 韩国av在线播放 | 中文国产在线观看 | 99久久精品免费看国产麻豆 | 麻豆传媒电影在线观看 | 色妞久久福利网 | 西西www444 | 久草在线费播放视频 | 天堂av观看| 亚洲成人免费在线 | 天天色婷婷 | 国模精品一区二区三区 | 91一区二区三区久久久久国产乱 | 99精品国产高清在线观看 | 99视屏| 激情婷婷在线观看 | 国产精品69av | 亚洲国产成人精品电影在线观看 | 久久国产一区二区 | 极品国产91在线网站 | 国产精品嫩草影院99网站 | www.国产精品| 麻豆一精品传二传媒短视频 | 成年人免费观看在线视频 | 久草在线中文888 | 一区二区 不卡 | a天堂在线看 | 97超碰人人干 | 国产精品嫩草影院99网站 | 成全免费观看视频 | 亚洲精选久久 | 又黄又爽又无遮挡的视频 | 在线视频一二区 | 国产成人精品在线观看 | 欧美精品网站 | 999免费视频 | 免费在线观看视频一区 | 成人av免费在线观看 | 免费观看成人av | 久久久久国产精品午夜一区 | 黄色三级视频片 | 国产第一二区 | 最新国产精品拍自在线播放 | 国产精品黄色影片导航在线观看 | 久久天 | www.日本色 | 天堂va欧美va亚洲va老司机 | 在线观看国产91 | 国产精品婷婷午夜在线观看 | 激情九九 | 久久久久欧美精品 | 国产99视频在线观看 | 在线观看视频一区二区 | 成人a级大片 | 91在线视频观看 | 日韩大片免费观看 | 色偷偷网站视频 | 国产999久久久 | 成年人免费在线 | 亚洲欧洲精品久久 | 日韩影视大全 | 在线视频久 | 欧美精品一二 | 99精品国产在热久久下载 | 国产精品国产三级在线专区 | 美女网站免费福利视频 | 国产精品久久人 | 久久男人中文字幕资源站 | 六月天综合网 | 成人黄视频 | 亚洲精品中文在线观看 | 国产在线日韩 | 91视频高清免费 | 永久免费毛片在线观看 | 国产精品久久免费看 | 国内精品久久久久影院日本资源 | 欧美尹人| 亚洲闷骚少妇在线观看网站 | 欧美精品二区 | 99精品免费 | 欧美色综合 | 在线小视频 | 久久精品中文字幕少妇 | 久久综合久久综合这里只有精品 | 久草在线视频网站 | 超碰在线9| 国产九九热视频 | 久久久久麻豆v国产 | 亚欧日韩av | 久久大片网站 | 91av在线免费看 | 91av在线不卡| 丁香伊人网| 国产又粗又猛又色又黄网站 | 婷婷色资源| 国产精品女主播一区二区三区 | 九九交易行官网 | 夜夜高潮夜夜爽国产伦精品 | 天天操天天干天天综合网 | 中文字幕乱码日本亚洲一区二区 | 国产在线精 | 91视频91自拍| 最近中文字幕国语免费av | 99福利影院| 欧美另类xxxx| 成人精品国产免费网站 | 伊人成人精品 | 91亚洲精品久久久蜜桃 | 国产精品一区二区三区久久久 |