-
Notifications
You must be signed in to change notification settings - Fork 308
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support Opensearch v1.0.0 #915
Comments
From Opensearch project page:
ref: https://opensearch.org/versions/opensearch-1-0-0.html#data-ingest So, you should use opensource version of elasticsearch-ruby 7.10.2 or lower and it can handle Opensearch v1.0 events ingestions. |
I don't believe that this should be at this point (or ever) handled by this plugin. Dependency for elasticsearch is explicitly making things difficult; so correct solution IMO would be to either fork this plugin and support Hello useragent all over again. For now I've reported a bug with repro on the OpenSearch side, as linked above. |
I posted maintainer opinion on OpenSearch repo: opensearch-project/OpenSearch#1166 (comment) |
@casabre It works with |
Sorry for going into stealth mode but I had to focus on another topic at work. @cosmo0920 @Venthe @Protopopys Thanks for your effort on that side! @Protopopys I can also confirm that it is working with your proposed configuration! For the time being, this is a quite good workaround but in the end, as @Venthe proposed, an own plugin would be more reasonable. Thanks a lot! |
A workaround: I have tried also |
We're planning to support OpenSearch as a different plugin but it inherits its plugin functionality like as fluent-plugin-aws-elasticsearch-service. To support OpenSearch, we'd like to wait and use forked or the brand new OpenSearch ruby client. |
@cosmo0920 based on various OpenSearch comments I suspect that there is a private |
Our Calyptia is waiting for the responses from OpenSearch project and its contract to work for. I don't have access permission on the opensearch project. Stay tuned. |
No release yet but the new gem's repo is at https://github.com/opensearch-project/opensearch-ruby |
opensearch-ruby was released a couple days ago: |
Any ETA for when Fluentd for Opensearch will be released? |
Today, we've released the first public release of fluent-plugin-opensearch v1.0.0: fluent-plugin-opensearch also supports for Fluentd event ingestions into AWS OpenSearch Service: |
Done! |
@cosmo0920 what does this mean for fluent-plugin-aws-elasticsearch-service? |
This insists that fluent-plugin-aws-elasticsearch-service should be predecessor plugin for AWS OpenSearch Service. |
@cosmo0920 I opened atomita/fluent-plugin-aws-elasticsearch-service#78 to track this. |
No, it needn't to inherit fluent-plugin-opensearch. We could only to say that atomita's plugin should be mark as deprecated and add a note for using fluent-plugin-opensearch instead. |
@cosmo0920 I quoted the wrong reference doesn't fluent-plugin-aws-elasticsearch-service need to update to use RE supporting old AWS ElasticSearch versions, this only works if the ElasticSearch dependencies are locked to versions which haven't been broken. For this a patch release could be made first before updating it to use OpenSearch. Also I thought OpenSearch was backwards compatible? |
No, it doesn't have backward compatibility. We should treat them as completely different products from Ruby clients. |
I spent much times to send pings to @atomita but he rarely respond from my pings. He did hate me to add RubyGems collaborater to release plugins. |
@cosmo0920 could you clarify which versions of ElasticSearch, OpenSearch and AWS managed ElasticSearch/OpenSearch could be written to by a Fluentd instance with I suspect any version of AWS managed ElasticSearch/OpenSearch not supported by |
fluent-plugin-opensearch
fluent-plugin-aws-elasticsearch-service
But currently, plugin author does not respond and not be able to upgrade the latest fluent-plugin-elasticsearch as a dependency. That plugin is already abandoned work. fluent-plugin-elasticsearch
|
@cosmo0920 I don't think I got the question quite right; I'm specifically asking about being able to support ElasticSearch and all AWS OpenSearch/ElasticSearch versions from a single Fluentd instance. I don't think this is possible with the current version of |
If the gem does not use version lock for the dependency, users can specify arbitrary version of its dependent gem. |
@cosmo0920 I'm asking for you to confirm that my assumption is right in how Ruby gems work, I know if there isn't a constraint the version depends on the user's choice but I don't think you can define the gem twice to get 2 different versions? If I'm correct it means that there is an issue with the current available plugins not being able to be used on a single Fluentd instance to send logs to ElasticSearch, AWS ElasticSearch and AWS OpenSearch. This is a pretty major issue that would need to be addressed by the |
No, we can't. Ordinary Rubyist would use |
Why do you want to use monolithic mechanism? We won't acceptable this mechanism. In Ruby world, OpenSearch and Elasticsearch is completely different distributions like Debian GNU/Linux and Red Hat Enterprise Linux (RHEL). RHEL package is not usable on Debian GNU/Linux and vice versa. If you install fluent-plugin-elasticsearch and fluent-plugin-opensearch in your Fluentd environment, you can send Fluentd events into OpenSearch on premise, AWS OpenSearch, and Elasticsearch on premise with one Fluentd instance. |
(check apply)
Problem
In July 2021, Opensearch v1.0.0 was released which is actually a fork from Elasticsearch v7.10.2. Unfortunately, the elasticsearch plugin is aborting with the following message
Since Opensearch in its initial version is Elasticsearch v7.10.2 and Opensearch is stating the there is a backward-compatibility to that specific Elasticsearch version, I assumed that it should work out of the box because I turned also
on which is according to the manual.
Steps to replicate
docker-compose.yml
Dockerfile
fluent.conf
Expected Behavior or What you need to ask
At least accept the initial version of Opensearch v1.0.0 and forward data to it.
Using Fluentd and ES plugin versions
The text was updated successfully, but these errors were encountered: