logging-operator | golang based CRD operator to setup and manage | Continuous Deployment library
kandi X-RAY | logging-operator Summary
kandi X-RAY | logging-operator Summary
A golang based CRD operator to setup and manage logging stack (Elasticsearch, Fluentd, and Kibana) in the Kubernetes cluster. It helps to setup each component of the EFK stack separately. The K8s API name is "logging.opstreelabs.in/v1alpha1".
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
- Basic example of Elasticsearch
- generateDaemonSet generates DaemonSet object
- generateMasterContainer generates master container
- generateKibanaContainer creates a container for kibana
- generateIngestionContainer generates an ingress container
- generateClientContainer creates a container container
- generateDataContainer generates the data container
- generateFluentdContainer renders a fluentd container
- generateKibanaDeployment builds a kibana deployment object
- GetElasticHealth returns Elasticsearch status
logging-operator Key Features
logging-operator Examples and Code Snippets
Community Discussions
Trending Discussions on logging-operator
QUESTION
Rancher v2.5 logging uses the banzai cloud logging operator - see here.
The operator deploys and configures a Fluent Bit DaemonSet on every node to collect container and application logs from the node file system. Fluent Bit queries the Kubernetes API and enriches the logs with metadata about the pods, and transfers both the logs and the metadata to Fluentd. Fluentd receives, filters, and transfer logs to multiple outputs
I don't know much about Fluent Bit, but the documentation says
Fluent Bit is an open source Log Processor and Forwarder which allows you to collect any data like metrics and logs from different sources, enrich them with filters and send them to multiple destinations.
Sounds quite similar to Fluentd (and other log forwarders like LogStash).
So what would be the reason/benefit of having both Fluent bit and Fluentd as part of the logging operator?
...ANSWER
Answered 2021-Jan-14 at 02:19Performance and resource utilization. FluentBit is much more lightweight and therefore less expensive to run as a DaemonSet. Forwarding on to FluentD also makes sense, since FluentD has hundreds more plugins and is generally more flexible and configurable. The FluentBit docs themselves say:
Fluentd is a great option due to it flexibility and availability of plugins (more than 300 extensions!) but if the data collection will happen in an Embedded environment or an IoT device where the system capacity is restricted, Fluent Bit is the solution to use.
So what it looks like this operator is doing is using FluentBit to forward the logs in as lightweight a process as possible, then using FluentD to do the heavy processing/aggregating/shipping to destinations, the same way an app might use its own log forwarder to send to FluentD (for example over the HTTP input from somewhere outside of Kubernetes) and then have FluentD manage processing those logs and shipping them to destinations.
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install logging-operator
Namespace Setup for operator
CRD setup in Kubernetes cluster
RBAC setup for an operator to create resources in Kubernetes
Operator deployment and validation
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page