Kibana: [Ingest Manager] Add bulk actions

Created on 21 Jul 2020  路  11Comments  路  Source: elastic/kibana

Summary of the problem

Bulk actions allow administrators to execute actions across multiple agents at the same time. This makes it more efficient to manage fleets with hundreds or thousands of agents.

This feature should require the Gold license or higher. It is most valuable in clusters where administrators must manage large numbers of agents.

If any of the agents are already in the target state, IM should skip those agents. For example, if I execute a bulk action to upgrade 1000 agents and 10 are already upgraded, those agents are skipped.

User stories

  • As a Fleet administrator, I would like to execute actions against multiple agents in bulk. These actions include upgrading the agent binary, unenrolling agents, and force unenrolling agents.
  • As a Fleet administrator, I would like to execute these actions on some or all agents that I have selected. The selection should only apply to agents that are visible given the current filter conditions. The selection of all matching agents should extend across multiple pages, similar to Gmail.
  • As a Fleet administrator, I would like to view the status of my actions as they are deployed across my fleet https://github.com/elastic/kibana/issues/67704

Other
Later on, we hope to add the capability for progressive deployments using this feature.

Ingest Management

All 11 comments

Pinging @elastic/ingest-management (Team:Ingest Management)

Here's my initial concept for how this might work:

Kapture 2020-07-21 at 14 13 35

I still need to mockup what the modals/flyouts for these actions will look like. We should indicate how many agents will be affected as a result of these actions.

I've already gotten some feedback from the EUI team, and they might be interested in developing a pattern for bulk actions on tables into EUI. However, we shouldn't wait for that. @MichaelMarcialis shared a prototype that the EUI team likes, so I may try and replicate this in my next update. I also received feedback that the "cancel" button should say "deselect all" and probably appear inside the context menu.

@mostlyjason You mentioned "force unenroll". Do we allow users to force unenroll agents that are in an active/online state? If the user sees "Unenroll agent(s)" and "Force unenroll" in the context menu, will they understand the difference? A modal with messaging may be necessary to explain what these actions do. Related: https://github.com/elastic/kibana/issues/72653

If force unenroll can only be performed on "unenrolling" agents, what happens if a user selects 1000 agents, but 5 of those agents are "unenrolling". We could show the "force unenroll" option as disabled, and only enable it if all the selected agents are in an "unenrolling state". Users could filter the table to only show "unenrolling", and then perform the bulk force unenroll action.

This PR has commentary about why we think we need a "force unenroll" options https://github.com/elastic/kibana/pull/72386

@hbharding can we use this issue to track the bulk actions UI elements and use https://github.com/elastic/kibana/issues/72653 to discuss unenrolling?

@hbharding can you update this issue?

Update:

Figma file
Figma prototype

Bulk selection
Kapture 2020-08-19 at 14 36 53

Filter bulk selection
Kapture 2020-08-19 at 14 42 34

Possible bulk actions
image

Q and A

  • Q: What happens if I bulk select 1000 agents, and then apply a filter so that only 500 agents are showing? How many agents are selected?

    • A: 500 agents are selected

  • Q: Follow up question... what happens if I then remove the filter? How many agents are selected?

    • A: 500 agents are selected

@jen-huang Fixed that issues.. it should be in the right board / column now.

@hbharding Could you update the issue with the decision for the question you had in https://github.com/elastic/kibana/issues/72712#issuecomment-676596744

Reopening as I'm using this for dev work :)

Hi EricDavisX

We have passed 04 testcases under [Ingest Manager] Add bulk actions TestRun on 8.0 snapshot on Chrome browser.

Currently Upgrade agent binary is not implemented for this ticket.

We will validate this ticket on Mozilla Firefox and Edge on the next working today.

Hi Eric

We have validate this ticket on Firefox and Edge browser and executed/passed 08 testcases under [Ingest Manager] Add bulk actions_BrowserTesting TestPlan.

Please let us know if anything is missing from our end.

Was this page helpful?
0 / 5 - 0 ratings