[Fleet] Discuss: Cleanup model for each fleet index (#120674)

This PR seeks to define existing cleanup behavior and desired cleanup
behavior for each system index managed by Fleet.

Co-authored-by: Kyle Pollich <kyle.pollich@elastic.co>
This commit is contained in:
Nicolas Ruflin 2023-01-05 16:20:32 +01:00 committed by GitHub
parent 8be155d295
commit b9936902aa
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -29,6 +29,8 @@ In prior alpha versions of Fleet, this data was also stored in Saved Objects bec
communicating directly with Kibana for policy updates. Once Fleet Server was introduced, that data was migrated to these
Elasticsearch indices to be readable by Fleet Server.
_Note: All of these system indices are plain indices, and not data streams._
### `.fleet-agents` index
Each document in this index tracks an individual Elastic Agent's enrollment in the Fleet, which policy it is current
@ -38,6 +40,8 @@ All of the code that interacts with this index is currently located in
[`x-pack/plugins/fleet/server/services/agents/crud.ts`](../server/services/agents/crud.ts) and the schema of these
documents is maintained by the `FleetServerAgent` TypeScript interface.
- Cleanup model: N/A
### `.fleet-actions` index
Each document in this index represents an action that was initiated by a user and needs to be processed by Fleet Server
@ -47,18 +51,35 @@ list.
The total schema for actions is represented by the `FleetServerAgentAction` type.
- Cleanup model: Fleet Server considers actions expired after 30 days, and will remove them via an hourly process
- [Source](https://github.com/elastic/fleet-server/blob/9af3b2176b42a0de34c5583b5430558c03792dd0/internal/pkg/gc/schedules.go#L29-L33)
### `.fleet-actions-results`
- Cleanup model: N/A
### `.fleet-servers`
- Cleanup model: N/A
### `.fleet-artifacts`
### `.fleet-entrollment-api-keys`
- Cleanup model: N/A
### `.fleet-enrollment-api-keys`
- Cleanup model: Deleteable via Fleet UI/API, deleted when an agent policy is deleted
- [Source](https://github.com/elastic/kibana/blob/7a35748cb43f2c73623ffda6fa02b91c3cb4c689/x-pack/plugins/fleet/server/services/api_keys/enrollment_api_key.ts#L102)
### `.fleet-policies`
- Cleanup model: Deleted when a corresponding agent policy is deleted in the Fleet UI or API
- [Source](https://github.com/elastic/kibana/blob/976b1b2331371f4a1325f6947d38d1f4de7a7254/x-pack/plugins/fleet/server/services/agent_policy.ts#L699-L701)
### `.fleet-policies-leader`
- Cleanup model: N/A
## Saved Object types
The Fleet plugin leverages several Saved Object types to track metadata on install packages, agent policies, and more.