This topic gives an overview of the Fluent Bit package, which you can install in Tanzu Kubernetes Grid (TKG) workload clusters to provide log forwarding services for the cluster.
Fluent Bit is a fast, lightweight log processor and forwarder that lets you collect application data and logs from different sources, unify them, and send them to multiple destinations.
You can use Fluent Bit as a log forwarder for logs from a TKG cluster. You need to have a logging management server deployed for storing and analyzing logs. You can use one of the supported logging servers.
- Syslog
- HTTP
- Elastic Search
- Kafka
- Splunk
See Install Fluent Bit in Workload Clusters Deployed by a Standalone Management Cluster.
Fluent Bit Components, Configuration, Data Values
The following sections describe Fluent Bit components and show how you can configure the Fluent Bit package.
Fluent Bit Components
The Fluent Bit package installs on the cluster the container listed in the table. For more information, see https://fluentbit.io/. The package pulls the container from the VMware public registry specified in Package Repository.
Container | Resource Type | Replicas | Description |
---|---|---|---|
Fluent Bit | DaemonSet | 6 | Log collector, aggregator, forwarder |
Fluent Bit Data Values
The following example can be used for an HTTP logging endpoint.
...
---
namespace: fluentbit-logging
tkg:
instance_name: "<TKG_INSTANCE_NAME>"
cluster_name: "<CLUSTER_NAME>"
fluentbit:
pspNames: "vmware-system-restricted"
output_plugin: "http"
http:
host: "<HTTP_HOST>"
port: "<HTTP_PORT>"
uri: "<URI>"
header_key_value: "<HEADER_KEY_VALUE>"
format: "json"
The following example can be used for Elastic Search.
...
---
namespace: fluentbit-logging
tkg:
instance_name: "<TKG_INSTANCE_NAME>"
cluster_name: "<CLUSTER_NAME>"
fluentbit:
pspNames: "vmware-system-restricted"
output_plugin: "elasticsearch"
elasticsearch:
host: "<ELASTIC_SEARCH_HOST>"
port: "<ELASTIC_SEARCH_PORT>"
The following example can be used for Kafka.
...
---
namespace: fluentbit-logging
tkg:
instance_name: "<TKG_INSTANCE_NAME>"
cluster_name: "<CLUSTER_NAME>"
fluentbit:
pspNames: "vmware-system-restricted"
output_plugin: "kafka"
kafka:
broker_service_name: "<BROKER_SERVICE_NAME>"
topic_name: "<TOPIC_NAME>"
The following example can be used for Splunk.
...
---
namespace: fluentbit-logging
tkg:
instance_name: "<TKG_INSTANCE_NAME>"
cluster_name: "<CLUSTER_NAME>"
fluentbit:
pspNames: "vmware-system-restricted"
output_plugin: "splunk"
splunk:
host: "<SPLUNK_HOST>"
port: "<SPLUNK_PORT>"
token: "<SPLUNK_TOKEN>"
Fluent Bit Configuration Parameters (Standalone MC)
The table below lists configuration parameters of the Fluent Bit package and describes their default values. You can set the following configuration values in your fluent-bit-data-values.yaml
file created in Deploy Fluent Bit on a Cluster.
Parameter | Description | Type | Default |
---|---|---|---|
namespace | Namespace where Fluent Bit will be deployed. | String | tanzu-system-logging |
fluent_bit.config.outputs | For information about the configuration for Fluent Bit outputs, see the Fluent Bit documentation. | Multiline YAML | Standard output |
fluent_bit.config.parsers | For information about the configuration for Fluent Bit parsers, see the Fluent Bit documentation. | Multiline YAML | JSON parser |
fluent_bit.config.plugins | Content for Fluent Bit plugins configuration. | String | <nil> |
fluent_bit.config.service | For information about the configuration for Fluent Bit service, see the Fluent Bit documentation. | Multiline YAML | Default Fluent Bit service config. |
fluent_bit.config.streams | Content for Fluent Bit streams file. | String | <nil> |
fluent_bit.config.filters | For information about the configuration for Fluent Bit filters, see the Fluent Bit documentation. | Multiline YAML | Default Kubernetes filter. |
fluent_bit.config.inputs | For information about the configuration for Fluent Bit inputs, see the Fluent Bit documentation. | String | Ingest Kubernetes container logs using the tail plugin and ingest systemd logs from kubelet. |
fluent_bit.daemonset.resources | For information about the configuration for Fluent Bit containers resource requirements, see the Fluent Bit documentation. | Multiline YAML | <nil> |
fluent_bit.daemonset.podAnnotations | The Fluent Bit deployments pod annotations. | List | <nil> |
fluent_bit.daemonset.podLabels | The Fluent Bit deployments pod labels. | List | <nil> |
fluent_bit.ipv6Primary | If you are deploying Fluent Bit to an IPv6 cluster, set ipv6Primary to true . | Boolean | false |
Content feedback and comments