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

[META] Elastic Agent V2 Architecture #189

Closed
9 of 36 tasks
Tracked by #1
jlind23 opened this issue Mar 10, 2022 · 1 comment
Closed
9 of 36 tasks
Tracked by #1

[META] Elastic Agent V2 Architecture #189

jlind23 opened this issue Mar 10, 2022 · 1 comment
Assignees
Labels
Team:Elastic-Agent-Control-Plane Label for the Agent Control Plane team Team:Elastic-Agent-Data-Plane Label for the Agent Data Plane team V2-Architecture

Comments

@jlind23
Copy link
Contributor

jlind23 commented Mar 10, 2022

Meta issue to publicly track Elastic Agent V2 progress.

Actual V2 architecture design.
image

Related repository: https://github.com/elastic/elastic-agent-shipper

Goals

  • Reduce the number of connections required by Elastic Agent to Elasticsearch or other remote services.
  • Reduce the complexity of the inputs
  • Reduce the memory usage
  • Easier debugging
  • Single logging from all the components.
  • Better introspection of the running processes.

Development Plan

Elastic Agent preparation phase:

  • [Meta] Remove Elastic Agent V1 control protocol elastic-agent-client#32

  • Phase 1:

    • Beta: Shipper is available for Filebeat and Metricbeat by turning a feature flag.
    • GA: Shipped is used by default with Filebeat and Metricbeat under Agent.
  • Phase 2: Integrate with the security solution:

    • Endpoint security.
    • Security beats:
      • packetbeat
      • auditbeat
      • winlogbeat
      • osquerybeat
  • Phase 3: Migrate remaining beats and agent inputs

  • Phase 4

    • Run a process per input type.

Phase 1: Separate the shipper from Filebeat and Metricbeat under Agent. (See elastic/elastic-agent-shipper#3)

The goal is to reduce the number of connections for Filebeat and Metricbeat instances to remote services.

Phase 2: Integrate with Endpoint security & the Security beats.

The goal is to move a uniform output strategy.

Phase 3:

QA / Testing Needs

  • New end to end tests:
    • TBD.
    • Add a test where the agent is configured to use the shipper from startup.
    • Add a test where the agent is configured not to use the shipper at startup, then switched over to it.
  • Performance testing:
  • New manual QA tests:
    • TBD. At minimum the agent must be regression tested on each supported OS with the shipper enabled.

Documentation

The following documentation tasks should be accomplished at a minimum:

  • Document the change in the logging
  • Document the usage for the feature flag (environment or via elastic agent policy)
  • Document the new global processing options.

Target

  • Definition / Design: 8.2
  • Beta: 8.4/8.5
  • GA: TBD
@pierrehilbert
Copy link
Contributor

Closing this one as v2 architecture has been released in 8.6

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Team:Elastic-Agent-Control-Plane Label for the Agent Control Plane team Team:Elastic-Agent-Data-Plane Label for the Agent Data Plane team V2-Architecture
Projects
None yet
Development

No branches or pull requests

4 participants