fluent-bit icon indicating copy to clipboard operation
fluent-bit copied to clipboard

Feature request: add support the output to multiple elasticsearch hosts or cluster

Open jenningsloy318 opened this issue 7 years ago • 15 comments

Currently fluent-bit can only set only one elasticsearch instance as the output, but actually cluster setup is common in elasticsearch, so hope we can add loadbalance mechnism to export the logs to muliple elasticseach cluster/instance.

something like this:

[OUTPUT]
    Name  es
    Match *
    Host  192.168.2.3,192.168.2.4,
    Port  9200
    Index my_index
    Type  my_type

jenningsloy318 avatar Jun 29 '18 09:06 jenningsloy318

is there any development for this feature ?

emretiryaki avatar Nov 12 '19 17:11 emretiryaki

I have the same problem. Will it be solved?

zpDeveloper avatar Jan 08 '20 12:01 zpDeveloper

Replying on an old thread, If I understand correctly, the Upstream featureset should allow the definition of multiple Elasticsearch nodes and the ability to rotate amongst them when sending data.

https://docs.fluentbit.io/manual/administration/configuring-fluent-bit/upstream-servers

Closing for now, feel free to re-open if needed

agup006 avatar Feb 19 '21 05:02 agup006

Replying on an old thread, If I understand correctly, the Upstream featureset should allow the definition of multiple Elasticsearch nodes and the ability to rotate amongst them when sending data. https://docs.fluentbit.io/manual/administration/configuring-fluent-bit/upstream-servers

@agup006 The Elasticsearch output plugin has no Upstream parameter, so how would this work?

mrajcok avatar Oct 26 '22 19:10 mrajcok

I would like this issue or #1340 reopened. I.e., to add upstream server support to the Elasticsearch output plugin. This would allow each fluent-bit container to balance across multiple Elasticsearch ingest nodes (that are in the same Elasticsearch cluster).

mrajcok avatar Oct 26 '22 19:10 mrajcok

is any update on this. ?

thatsk avatar Dec 13 '22 08:12 thatsk

it would be really nice feature

varuzam avatar Jun 27 '23 06:06 varuzam

why this closed state it should be open ?

thatsk avatar Aug 22 '23 15:08 thatsk

hi,

elasticsearch output plugin doesn't support upstream. Can you please consider modifying the ES plugin to be able to get a list of hosts instead of one? similar to fluentd capability https://docs.fluentd.org/output/elasticsearch#hosts-optional

awaizman1 avatar Sep 13 '23 09:09 awaizman1

Hello, Have you configured your upstream with its nodes and then add it to the ES plugin? Are you seeing any errors? Can you share your config?

lecaros avatar Oct 17 '23 13:10 lecaros

yes its not identifying multiple host in host section https://github.com/fluent/fluent-bit/issues/664#issue-336921045

kunalsingthakur avatar Oct 17 '23 13:10 kunalsingthakur

You have to use upstream in this case. https://docs.fluentbit.io/manual/administration/configuring-fluent-bit/classic-mode/upstream-servers

lecaros avatar Oct 17 '23 13:10 lecaros

hi @lecaros,

tried to configure an upstream and provide it to the ES output plugin. seems like the plugin doesn't support upstream, this is the error I get: [2023/10/18 08:49:36] [error] [config] es: unknown configuration property 'upstream'. The following properties are allowed: index, type, suppress_type_name, http_user, http_passwd, compress, cloud_id, cloud_auth, aws_auth, aws_region, aws_sts_endpoint, aws_role_arn, aws_external_id, logstash_format, logstash_prefix, logstash_prefix_key, logstash_dateformat, time_key, time_key_format, time_key_nanos, include_tag_key, tag_key, buffer_size, path, pipeline, generate_id, write_operation, id_key, replace_dots, current_time_index, trace_output, and trace_error.

configuration used:

[UPSTREAM]
  es_cluster
    
[NODE]
  name     node-1
  host       10.200.56.111

and in output section:

[OUTPUT]
  Name es
  Alias SendApplicationLog
  Match kube.*
  Upstream es_cluster
  Index fluentbit

awaizman1 avatar Oct 18 '23 08:10 awaizman1

Hi @lecaros Did you have a chance to check this? As mentioned ES output plugin doesn’t support upstream

awaizman1 avatar Nov 21 '23 20:11 awaizman1

This issue is stale because it has been open 90 days with no activity. Remove stale label or comment or this will be closed in 5 days. Maintainers can add the exempt-stale label.

github-actions[bot] avatar Feb 20 '24 01:02 github-actions[bot]

This issue was closed because it has been stalled for 5 days with no activity.

github-actions[bot] avatar Feb 26 '24 01:02 github-actions[bot]

Hi

is there another workaround for the use case of having es cluster and make sure fluentbit will succeed to emit records in case one node is down?

awaizman1 avatar May 21 '24 19:05 awaizman1