本主題提供 Fluent Bit 套件的參考資訊。
關於 Fluent Bit
Fluent Bit (https://fluentbit.io/) 是一個快速輕量型記錄處理器和轉寄站,可讓您從不同的來源收集應用程式資料與記錄,並統一和傳送至多個目的地。
可以使用 Fluent Bit 作為 TKG 叢集中記錄的記錄轉寄站。您需要部署一個用於儲存和分析記錄的記錄管理伺服器。支援的記錄伺服器包括 Syslog、HTTP、Elastic Search、Kafka 和 Splunk。
若要在 TKG 叢集上安裝 Fluent Bit 套件,請參閱以下主題:
- vSphere 8.x TKr:安裝 Fluent Bit
- vSphere 7.x TKr:
Fluent Bit 元件
Fluent Bit 套件將在叢集上安裝下表中列出的容器。此套件將從套件存放庫中指定的公開登錄中提取容器。
容器 | 資源類型 | 複本 | 說明 |
---|---|---|---|
Fluent Bit | DaemonSet | 6 | 記錄收集器、彙總工具、轉寄站 |
Fluent Bit 資料值
下列
fluent-bit-data-values.yaml
範例可用於 Syslog 伺服器。
--- namespace: fluentbit-logging tkg: instance_name: "<TKG_INSTANCE_NAME>" cluster_name: "<CLUSTER_NAME>" fluentbit: output_plugin: "syslog" syslog: host: "<SYSLOG_HOST>" port: "<SYSLOG_PORT>" mode: "<SYSLOG_MODE>" format: "<SYSLOG_FORMAT>"
下列 fluent-bit-data-values.yaml
範例可用於 HTTP 端點。
--- namespace: fluentbit-logging tkg: instance_name: "<TKG_INSTANCE_NAME>" cluster_name: "<CLUSTER_NAME>" fluentbit: output_plugin: "http" http: host: "<HTTP_HOST>" port: "<HTTP_PORT>" uri: "<URI>" header_key_value: "<HEADER_KEY_VALUE>" format: "json"
下列
fluent-bit-data-values.yaml
範例可用於 Elastic Search。
--- namespace: fluentbit-logging tkg: instance_name: "<TKG_INSTANCE_NAME>" cluster_name: "<CLUSTER_NAME>" fluentbit: output_plugin: "elasticsearch" elasticsearch: host: "<ELASTIC_SEARCH_HOST>" port: "<ELASTIC_SEARCH_PORT>"
下列
fluent-bit-data-values.yaml
範例可用於 Kafka。
--- namespace: fluentbit-logging tkg: instance_name: "<TKG_INSTANCE_NAME>" cluster_name: "<CLUSTER_NAME>" fluentbit: output_plugin: "kafka" kafka: broker_service_name: "<BROKER_SERVICE_NAME>" topic_name: "<TOPIC_NAME>"
下列
fluent-bit-data-values.yaml
範例可用於 Splunk。
--- namespace: fluentbit-logging tkg: instance_name: "<TKG_INSTANCE_NAME>" cluster_name: "<CLUSTER_NAME>" fluentbit: output_plugin: "splunk" splunk: host: "<SPLUNK_HOST>" port: "<SPLUNK_PORT>" token: "<SPLUNK_TOKEN>"
Fluent Bit 組態
組態值於
fluent-bit-data-values.yaml
中設定。下表列出並說明了可用參數。
參數 | 說明 | 類型 | 預設值 |
---|---|---|---|
logging.namespace | 將部署 Fluent Bit 的命名空間 | string | tanzu-system-logging |
logging.service_account_name | Fluent Bit 服務帳戶的名稱 | string | fluent-bit |
logging.cluster_role_name | 授與取得、監視和列示權限的叢集角色名稱 | string | fluent-bit-read |
logging.image.name | Fluent Bit 映像的名稱 | string | fluent-bit |
logging.image.tag | Fluent Bit 映像標籤。如果您要升級版本,則可能需要更新此值。 | string | v1.6.9_vmware.1 |
logging.image.repository | 具有 Fluent Bit 映像的存放庫的位置。預設為公用 VMware 登錄。如果您要使用私人存放庫 (例如氣隙環境),請變更此值。 | string | projects.registry.vmware.com/tkg |
logging.image.pullPolicy | Fluent Bit 提取原則 | string | IfNotPresent |
logging.update_strategy | 更新在更新 DaemonSet 時所使用的策略 | string | RollingUpdate |
tkg.cluster_name | Tanzu Kubernetes 叢集的名稱 | string | 空值 (必要參數) |
tkg.instance_name | TKG 執行個體的使用者定義名稱,由一個部署中的主管叢集及所有 Tanzu Kubernetes 叢集共用。可以使用與安裝相關的任何名稱。 | string | 空值 (必要參數)
備註: 此欄位為必填,但內容是任意的。這是顯示在記錄中的名稱。
|
fluent_bit.log_level | 要用於 Fluent Bit 的記錄層級 | string | 資訊 |
fluent_bit.output_plugin | 設定 Fluent Bit 應排清所收集之資訊的後端 | string | 空值 (必要參數) |
fluent_bit.elasticsearch.host | 目標 Elasticsearch 執行個體的 IP 位址或主機名稱 | string | 空值 (output_plugin 為彈性搜尋時的必要參數) |
fluent_bit.elasticsearch.port | 目標 Elasticsearch 執行個體的 TCP 連接埠 | 整數 | 空值 (output_plugin 為彈性搜尋時的必要參數) |
fluent_bit.elasticsearch.buffer_size | 指定用來讀取 Elasticsearch 服務回應的緩衝區大小。若為 False,則設定為無限制 | string | False |
fluent_bit.elasticsearch.tls | 指定適用於 Elasticsearch 之 TLS 的預設設定 | string | 關閉 |
fluent_bit.kafka.broker_service_name | Kafka Broker 的多個清單之一,例如:192.168.1.3:9092 | string | 空值 (output_plugin 為 kafka 時的必要參數) |
fluent_bit.kafka.topic_name | Fluent Bit 用於將訊息傳送給 Kafka 的單一項目或以 (,) 分隔的主題清單 | string | 空值 (output_plugin 為 kafka 時的必要參數) |
fluent_bit.splunk.host | 目標 Splunk 伺服器的 IP 位址或主機名稱 | string | 空值 (output_plugin 為 splunk 時的必要參數) |
fluent_bit.splunk.port | 目標 Splunk 伺服器的 TCP 連接埠 | 整數 | 空值 (output_plugin 為 splunk 時的必要參數) |
fluent_bit.splunk.token | 指定 HTTP 事件收集器介面的驗證 Token | string | 空值 (output_plugin 為 splunk 時的必要參數) |
fluent_bit.http.host | 目標 HTTP 伺服器的 IP 位址或主機名稱 | string | 空值 (output_plugin 為 http 時的必要參數) |
fluent_bit.http.port | 目標 HTTP 伺服器的 TCP 連接埠 | 整數 | 空值 (output_plugin 為 http 時的必要參數) |
fluent_bit.http.mode | 指定目標 Web 服務器的 HTTP URI | string | 空值 (output_plugin 為 http 時的必要參數) |
fluent_bit.http.header_key_value | HTTP 標頭索引鍵/值配對。可以設定多個標頭 | string | 空值 (output_plugin 為 http 時的必要參數) |
fluent_bit.http.format | 指定要用於 HTTP 要求本文的資料格式 | string | 空值 (output_plugin 為 http 時的必要參數) |
fluent_bit.syslog.host | 遠端 Syslog 伺服器的網域或 IP 位址 | string | 空值 (output_plugin 為 syslog 時的必要參數) |
fluent_bit.syslog.port | 遠端 Syslog 伺服器的 TCP 或 UDP 連接埠 | 整數 | 空值 (output_plugin 為 syslog 時的必要參數) |
fluent_bit.syslog.mode | 從 TCP、UDP 和 TLS 指定傳輸類型 | string | 空值 (output_plugin 為 syslog 時的必要參數) |
fluent_bit.syslog.format | 指定要用於 HTTP 要求本文的資料格式 | string | 空值 (output_plugin 為 syslog 時的必要參數) |
host_path.volume_1 | 從主機節點檔案系統到網繭的目錄路徑 (針對磁碟區 1) | string | /var/log |
host_path.volume_2 | 從主機節點檔案系統到網繭的目錄路徑 (針對磁碟區 2) | string | /var/lib/docker/containers |
host_path.volume_3 | 從主機節點檔案系統到網繭的目錄路徑 (針對磁碟區 3) | string | /run/log |
systemd.path | Systemd 日誌目錄的路徑 | string | /var/log/journal |