-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
[Metricbeat][Aerospike] Add support for basic auth #41233
Conversation
Pinging @elastic/elastic-agent-data-plane (Team:Elastic-Agent-Data-Plane) |
This pull request is now in conflicts. Could you fix it? 🙏
|
Yes, please, better safe than sorry
I don't think so |
By clarifying that we bumped the aerospike-client-go library
Hi there, I adjusted the documentation and the release notes. Let me know if I can merge after a successful build. Thanks, |
Hi team, I'm really sorry—I hadn’t activated auto-merging 🤦. It’s on now. Could someone please approve the PR (for the last time, I hope 😇)? Thanks so much! Best regards, |
This pull request is now in conflicts. Could you fix it? 🙏
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Considering my team's approval, I'm approving for the Beats Leads side.
I am afraid we need the approval of a member of the elastic/obs-infraobs-integrations team. @ishleenk17 do you mind approving the PR? Regards, |
Its done! |
… add support for basic auth (#41233) * Update aerospike-client-go dependency to the latest version * Bump aerospike docker image version to latest v7 available * Add basic auth support * Add basic auth configuration tests * Add property InfoPolicy to the Metricset * Run Mage update in x-pack module * Add line in CHANGELOG.next.asciidoc * Update NOTICE.txt to contain updated information on aerospike-client library * Run mage check to fix build * Add support Authentication Mode * Add authmode to tests * Add Auth Mode to config and run mage update * Update metricbeat/module/aerospike/aerospike_test.go Spell username toghether, as suggested. Co-authored-by: Ishleen Kaur <102962586+ishleenk17@users.noreply.github.com> * Fix integration test by reverting AEROSPIKE_VERSION in docker-compose * Bump version to latest 7.x available * Adjust healthcheck to use asinfo instead of tcp ping: Aerospike opens the port **before** Aerospike is actually ready Use the image aerospike/aerospike-server-enterprise instead of aerospike because it contains the aerospike tools * Improve healthcheck to make sure that the namespace statistics can be extracted * Update metricbeat/module/aerospike/aerospike.go Co-authored-by: Anderson Queiroz <me@andersonq.me> * Make sure username/password are set together * Improve documentation to report with which version Aerospike is expected to work * Make release notes for the PR more accurate By clarifying that we bumped the aerospike-client-go library * Fix build by compiling aerospike asciidoc --------- Co-authored-by: Ishleen Kaur <102962586+ishleenk17@users.noreply.github.com> Co-authored-by: Anderson Queiroz <me@andersonq.me> (cherry picked from commit 71392cf) # Conflicts: # go.sum
… add support for basic auth (#41233) * Update aerospike-client-go dependency to the latest version * Bump aerospike docker image version to latest v7 available * Add basic auth support * Add basic auth configuration tests * Add property InfoPolicy to the Metricset * Run Mage update in x-pack module * Add line in CHANGELOG.next.asciidoc * Update NOTICE.txt to contain updated information on aerospike-client library * Run mage check to fix build * Add support Authentication Mode * Add authmode to tests * Add Auth Mode to config and run mage update * Update metricbeat/module/aerospike/aerospike_test.go Spell username toghether, as suggested. Co-authored-by: Ishleen Kaur <102962586+ishleenk17@users.noreply.github.com> * Fix integration test by reverting AEROSPIKE_VERSION in docker-compose * Bump version to latest 7.x available * Adjust healthcheck to use asinfo instead of tcp ping: Aerospike opens the port **before** Aerospike is actually ready Use the image aerospike/aerospike-server-enterprise instead of aerospike because it contains the aerospike tools * Improve healthcheck to make sure that the namespace statistics can be extracted * Update metricbeat/module/aerospike/aerospike.go Co-authored-by: Anderson Queiroz <me@andersonq.me> * Make sure username/password are set together * Improve documentation to report with which version Aerospike is expected to work * Make release notes for the PR more accurate By clarifying that we bumped the aerospike-client-go library * Fix build by compiling aerospike asciidoc --------- Co-authored-by: Ishleen Kaur <102962586+ishleenk17@users.noreply.github.com> Co-authored-by: Anderson Queiroz <me@andersonq.me> (cherry picked from commit 71392cf)
… add support for basic auth (#41233) (#41609) * Update aerospike-client-go dependency to the latest version * Bump aerospike docker image version to latest v7 available * Add basic auth support * Add basic auth configuration tests * Add property InfoPolicy to the Metricset * Run Mage update in x-pack module * Add line in CHANGELOG.next.asciidoc * Update NOTICE.txt to contain updated information on aerospike-client library * Run mage check to fix build * Add support Authentication Mode * Add authmode to tests * Add Auth Mode to config and run mage update * Update metricbeat/module/aerospike/aerospike_test.go Spell username toghether, as suggested. Co-authored-by: Ishleen Kaur <102962586+ishleenk17@users.noreply.github.com> * Fix integration test by reverting AEROSPIKE_VERSION in docker-compose * Bump version to latest 7.x available * Adjust healthcheck to use asinfo instead of tcp ping: Aerospike opens the port **before** Aerospike is actually ready Use the image aerospike/aerospike-server-enterprise instead of aerospike because it contains the aerospike tools * Improve healthcheck to make sure that the namespace statistics can be extracted * Update metricbeat/module/aerospike/aerospike.go Co-authored-by: Anderson Queiroz <me@andersonq.me> * Make sure username/password are set together * Improve documentation to report with which version Aerospike is expected to work * Make release notes for the PR more accurate By clarifying that we bumped the aerospike-client-go library * Fix build by compiling aerospike asciidoc --------- Co-authored-by: Ishleen Kaur <102962586+ishleenk17@users.noreply.github.com> Co-authored-by: Anderson Queiroz <me@andersonq.me> (cherry picked from commit 71392cf) Co-authored-by: Mirko Bez <herrBez@users.noreply.github.com>
Proposed commit message
[Metricbeat][Aerospike] Add support for Basic Auth and update aerospike-client-go dependency
Checklist
CHANGELOG.next.asciidoc
orCHANGELOG-developer.next.asciidoc
.Disruptive User Impact
No user impact the old configuration still works
Author's Checklist
Context
As of October 14, 2024, only Aerospike DB version 6.1 and above is supported by the vendor. More details can be found here: Aerospike Platform Support.
The supported versions of the Aerospike client libraries are listed here: Aerospike Client Library Matrix.
Currently, Beats integrates version 1.27.1 of the aerospike-client-go library, which was released in 2017 and is no longer supported by the vendor.
In this pull request (PR), we upgrade the dependency to version 7 and add support for Basic Authentication for Enterprise Edition (EE) of Aerospike,
Please note that Aerospike version 7 introduced several changes to the metrics (some metrics that the metricset is using have been renamed, and others removed). Details can be found here: Aerospike 7.0 Metrics Changes. To keep the scope of this PR focused, I have opted to implement this change first and will submit a separate PR to address the metrics changes (I have already implemented the code for the change).
Final note, we distinguish between CE (community edition) and EE (enterprise edition) also in the docker images.
How to test this PR locally
username: admin
andpassword: admin
:aerospike-basic-auth.conf
:Aerospike 7 config-file
Aerospike 6 config-file
Export the following variable
export AEROSPIKE_VERSION=ee-6.4.0.7_2
to test with version 6 of AerospikeUse the following docker-compose.yaml
./metricbeat test modules aerospike
Please note that since some metrics have been renamed with Aerospike 7, the answer with this version will contain some empty metrics.
Related issues
Use cases
Monitor an Aerospike Cluster protected by Basic Auth
Screenshots
N/A
Logs
Not relevant