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

[APM] Link to Fleet APM Server Configuration when managed by Elastic Agent w/Fleet #88659

Closed
simitt opened this issue Jan 19, 2021 · 13 comments · Fixed by #100816
Closed

[APM] Link to Fleet APM Server Configuration when managed by Elastic Agent w/Fleet #88659

simitt opened this issue Jan 19, 2021 · 13 comments · Fixed by #100816
Assignees
Labels
apm:fleet Feature:Fleet Fleet team's agent central management project Team:APM All issues that need APM UI Team support v7.14.0

Comments

@simitt
Copy link
Contributor

simitt commented Jan 19, 2021

This is a temporary solution for 7.13 7.x only


Background
When APM Server is managed by Elastic Agent with Fleet the configuration for the APM Server will happen in the Fleet UI in Kibana, instead of directly configuring an apm-server.yml file when starting APM Server.

Link from legacy getting started guide to Fleet Configuration page
In the APM Server section in the legacy getting started guide, it should link to the (new) Fleet Getting Started guide.

Link to the http://<host>:<port>/app/fleet#/policies page, which shows all available agent policies. Users can then decide for which policy they would like to add or edit the APM integration.

Screenshot 2021-03-02 at 11 56 19

The user should be redirected to the Policy page
image.png

@simitt simitt added discuss Team:APM All issues that need APM UI Team support Feature:Fleet Fleet team's agent central management project labels Jan 19, 2021
@elasticmachine
Copy link
Contributor

Pinging @elastic/apm-ui (Team:apm)

@elasticmachine
Copy link
Contributor

Pinging @elastic/fleet (Feature:Fleet)

@sorenlouv
Copy link
Member

sorenlouv commented Jan 20, 2021

how the APM configuration in fleet should be accesible via the APM UI (cross-linking?)

Cross-linking sounds like the most simple solution first. Would this be instead of the Getting Started guides we have today?

@formgeist
Copy link
Contributor

formgeist commented Jan 20, 2021

Cross-linking sounds like the most simple solution first. Would this be instead of the Getting Started guides we have today?

Yeah, I imagine we can replace the Add data link with a "Manage Elastic Agent" link to Fleet instead.

Screenshot 2021-01-20 at 14 59 55

Example of the button link in the header

@jalvz
Copy link
Contributor

jalvz commented Feb 24, 2021

related to cross-linking, but the other way around: #91409

@graphaelli graphaelli changed the title [APM][fleet][discuss] Show/edit APM Server config options when managed by Elastic Agent w.Fleet [APM][fleet][discuss] Link to Fleet APM Server Configuration when managed by Elastic Agent w/Fleet Mar 1, 2021
@graphaelli
Copy link
Member

@simitt Can you define:

  • how to know when the link should be shown
  • where link should point to (url)

thanks for the design @formgeist

@simitt
Copy link
Contributor Author

simitt commented Mar 2, 2021

@sqren and @formgeist - the Add data link today takes you to the APM Server and APM Agent overview. The Fleet Integration only manages the APM Server so far. How about, instead of replacing the Add data link, keep this as is, but link to Fleet from the APM Server section?

I just saw that the Add data section already mentions Fleet (see screenshot below).
Screenshot 2021-03-02 at 12 06 38

I believe this is generally the right place to link to Fleet, but we should make it more prominent. Maybe we could add a link to the deployment options, something along the lines of the screenshot below. We could even hide the other options (macOS,RPM,..) a bit. This way we would not need to decide when to link to Fleet. It is up to the user to chose how they want to install and manage APM Server. @formgeist would be great to get your input. In 8.0 we can remove all other options than Fleet.
Screenshot 2021-03-02 at 11 56 19

The Manage APM Server URL should point to <host>:<port>/app/fleet#/integrations/detail/apm-<stack-version>/overview

_

@simitt
Copy link
Contributor Author

simitt commented Mar 3, 2021

Since we would prefer to not have to publish a new package on every patch release, linking to the latest available APM package would be preferable. I opened an issue for it #93393.

@formgeist
Copy link
Contributor

I've created two variations where we show a promotion for the Fleet integration if we don't see an existing install and if there's an existing integration we can display the "manage" option. I might still be a little unclear on the terminology (agent vs. integration), so feel free to give feedback on this.

Secondly, I have to explore what is possible within the getting start area which allows for a custom callout like this. We can naturally descope this part and create a simple section with the same content (excl. illustration).

Check out the user flow prototypes


A: No agent installed

01 Add data tutorial - No agent installed

B: Manage agent

01 Add data tutorial - Existing integration

@felixbarny
Copy link
Member

One complication when Fleet is used (design B: Manage agent) is that depending on the policy, there are different installation instructions for agents.

Let's say there are two policies: one managed policy for an APM Server that's hosted on cloud and one unmanaged policy for an APM Server/Elastic agent that runs on the edge. For the managed policy, we need to show the server_url and secret_token config options that lets agents connect to that APM Server. For unmanaged policies, the APM Agent installation instructions shouldn't include setting server_url, as agents will use the default value of localhost:8200 to connect to the APM Server that runs on the edge.

@sorenlouv
Copy link
Member

For the managed policy, we need to show the server_url and secret_token config options that lets agents connect to that APM Server. For unmanaged policies, the APM Agent installation instructions shouldn't include setting server_url, as agents will use the default value of localhost:8200 to connect to the APM Server that runs on the edge.

Sorry for being that person but I'm confused about the terminology of managed vs unmanaged. Do we agree on the following definition?

managed agent policies are policies managed outside of Fleet and Kibana

(I stole that from an email thread on the topic)

@simitt
Copy link
Contributor Author

simitt commented Mar 4, 2021

@felixbarny there is a dedicated issue discussing how to inject the server_url and secret_token into the agent setup instructions. I took the liberty to move your concerns over to #93420 #89989 to keep this issue focused on how to link to the APM Server.

My suggestion is to link to the http://<host>:<port>/app/fleet#/policies page, which shows all available agent policies. Users can then decide for which policy they would like to add or edit the APM integration.

@felixbarny
Copy link
Member

Naming is hard 🙂 There's an ongoing debate about how it should be called, so it's a moving target.
With managed policy, I'm referring to "APM Server on cloud under Elastic Agent". Managed policies do show up in Fleet but restrict some options like removing agents or adding integrations. Which makes sense because we'd not want users to remove the Agent that runs APM Server on cloud.

Thanks for moving it over Silvia.

@sorenlouv sorenlouv changed the title [APM][fleet][discuss] Link to Fleet APM Server Configuration when managed by Elastic Agent w/Fleet [APM] Link to Fleet APM Server Configuration when managed by Elastic Agent w/Fleet Mar 9, 2021
@sorenlouv sorenlouv removed the discuss label Mar 9, 2021
@smith smith removed the v7.13.0 label Apr 26, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
apm:fleet Feature:Fleet Fleet team's agent central management project Team:APM All issues that need APM UI Team support v7.14.0
Projects
None yet
9 participants