Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # 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

# for free to join this conversation on GitHub. Already have an account? # 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