Skip to content
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

[helm]: implement system integration as chart built-in #5855

Open
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

pkoutsovasilis
Copy link
Contributor

What does this PR do?

This PR introduces support for the system integration

Why is it important?

system integration is usually used in the context of k8s, thus having it as a built-in integration improves the user configuration experience

Checklist

  • My code follows the style guidelines of this project
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • I have made corresponding change to the default configuration files
  • I have added tests that prove my fix is effective or that my feature works
  • I have added an entry in ./changelog/fragments using the changelog tool
  • I have added an integration test or an E2E test

Disruptive User Impact

How to test this PR locally

mage integration:kubernetesMatrix

@pkoutsovasilis pkoutsovasilis added enhancement New feature or request skip-changelog backport-8.x Automated backport to the 8.x branch with mergify backport-8.16 Automated backport with mergify labels Oct 25, 2024
@pkoutsovasilis pkoutsovasilis self-assigned this Oct 25, 2024
@pkoutsovasilis pkoutsovasilis requested a review from a team as a code owner October 25, 2024 12:47
@ycombinator ycombinator requested review from swiatekm and blakerouse and removed request for kaanyalti and pchila October 25, 2024 13:55
Copy link
Contributor

@blakerouse blakerouse left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't see any issue, just really a comment on it being default and extra options. Not really blockers, they can be adjusted later if we see that it should be default or those settings need options.

### 4 - System integration
| Key | Type | Default | Description |
|-----|------|---------|-------------|
| system.enabled | bool | `false` | enable System integration. |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is the default false? I feel like most will want this on, it brings immediate value to the Observability section in Kibana.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

More than happy to have it by default as true, it also makes sense to me. @nimarezainia what do you think on that? 🙂

deploy/helm/elastic-agent/values.yaml Show resolved Hide resolved
@pierrehilbert pierrehilbert added the Team:Elastic-Agent-Control-Plane Label for the Agent Control Plane team label Oct 25, 2024
@elasticmachine
Copy link
Contributor

Pinging @elastic/elastic-agent-control-plane (Team:Elastic-Agent-Control-Plane)

Copy link
Contributor

@swiatekm swiatekm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me. I don't have an informed opinion on whether this integration should be enabled by default. But if it's not, can we add an example where we enable it?

@pkoutsovasilis pkoutsovasilis force-pushed the feat/helm_chart_system_integration branch from 64e4512 to 70205a8 Compare October 30, 2024 10:59
@pkoutsovasilis
Copy link
Contributor Author

Looks good to me. I don't have an informed opinion on whether this integration should be enabled by default. But if it's not, can we add an example where we enable it?

thanks for the review @swiatekm and the example proposal, I took inspiration from one of @blakerouse 's comments and added one but also did some other changes, would you mind having another look? 🙂

@@ -0,0 +1,9 @@
system:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should have rendered examples for this, right? I thought the mage target would error in this case.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hmm, I thought I added it but this never happened, but the CI should fail yes

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oh I suspect that this is because the file was never versioned and the check-ci apparently fails on changes of versioned files?!

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shouldn't it fail anyway if it can't find the file? I didn't know the examples mage target was aware of versioning.

Anyway, this isn't a blocker for this PR, but we should make sure the check actually catches issues.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the current CI checks flow is the following:

  • render helm examples
  • check for git diffs; the assumption here was that it failed also on unversioned files but evidently that's not the case

100% agreed this needs to be extended

Copy link
Contributor

@swiatekm swiatekm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I really like the added configurability. Had a small question about the configuration template, but it shouldn't block merging this PR. Nice work. 💪

dataset: system.diskio
type: metrics
period: 10s
diskio.include_devices: null
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are these nulls intentional? I would expect this to either be an empty list or for the key to not exist at all.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this crossed my mind as well, but then I wondered why this config was rendered like that from Kibana; thus, I figured not to mess with it 😄 but sure this can be further optimised in the future

Copy link

Quality Gate passed Quality Gate passed

Issues
0 New issues
0 Fixed issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarQube

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport-8.x Automated backport to the 8.x branch with mergify backport-8.16 Automated backport with mergify enhancement New feature or request skip-changelog Team:Elastic-Agent-Control-Plane Label for the Agent Control Plane team
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants