Skip to content

Commit

Permalink
Update docs for changes in add fleet server steps (elastic#1934)
Browse files Browse the repository at this point in the history
  • Loading branch information
dedemorton authored Jun 29, 2022
1 parent 4125703 commit 74a7dd9
Show file tree
Hide file tree
Showing 10 changed files with 75 additions and 92 deletions.
3 changes: 2 additions & 1 deletion elastic-agent/install-fleet-managed-elastic-agent.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,8 @@ all spaces.
* <<fleet-server,{fleet-server}>> running in a location accessible to
{agent}. {agent} must have a direct network connection to
{fleet-server} and {es}. If you're using our hosted {ess} on {ecloud},
{fleet-server} is already available as part of the {integrations-server}.
{fleet-server} is already available as part of the {integrations-server}. For
self-managed deployments, refer to <<add-a-fleet-server>>.

* Internet connection for {kib} to download integration packages
from the {package-registry}. Make sure the {kib} server can connect to
Expand Down
25 changes: 13 additions & 12 deletions fleet/fleet-server-monitoring.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,14 @@ new agent policy or use the existing Default {fleet-server} agent policy.

To monitor {fleet-server}:

. In {fleet}, go to *Agent Policies* and click the {fleet-server} agent policy.
. In {kib}, go to **Management > {fleet} > Agent Policies**.

. Click the *Settings* tab and verify that *Collect agent logs* and
*Collect agent metrics* are selected.
. Click the {fleet-server} policy name to edit the policy.

. Next, set the *Default namespace* to something like `fleetserver`.
. Click the **Settings** tab and verify that **Collect agent logs** and
**Collect agent metrics** are selected.

. Next, set the **Default namespace** to something like `fleetserver`.
+
Setting the default namespace lets you segregate {fleet-server} monitoring data
from other collected data. This makes it easier to search and visualize the
Expand All @@ -27,24 +29,21 @@ monitoring data.
[role="screenshot"]
image::images/fleet-server-agent-policy-page.png[{fleet-server} agent policy]

. To confirm your change, click *Save changes*.
. To confirm your change, click **Save changes**.

To see the metrics collected for the agent running {fleet-server}, go to
*Analytics > Discover*.
**Analytics > Discover**.

In the following example, `fleetserver` was configured as the namespace, and
you can see the metrics collected:

[role="screenshot"]
image::images/dashboard-with-namespace-showing.png[Namespace]

[role="screenshot"]
image::images/datastream-namespace.png[Data stream]

// lint ignore elastic-agent
In {kib}, go to *Analytics > Dashboard* and search for the predefined dashboard
called *[Elastic Agent] Agent metrics*. Choose this dashboard, and run a query
based on the `fleetserver` namespace.
Go to **Analytics > Dashboard** and search for the predefined dashboard called
**[Elastic Agent] Agent metrics**. Choose this dashboard, and run a query based
on the `fleetserver` namespace.

The following dashboard shows data for the query `data_stream.namespace:
"fleetserver"`. In this example, you can observe CPU and memory usage as a
Expand All @@ -53,5 +52,7 @@ metric and then resize the {fleet-server}, if necessary.
[role="screenshot"]
image::images/dashboard-datastream.png[Dashboard Data stream]

//TODO: Update dashboard when CPU usage info is displaying correctly.

Note that as an alternative to running the query, you can hide all metrics
except `fleet_server` in the dashboard.
47 changes: 24 additions & 23 deletions fleet/fleet-server-scaling.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ First modify your {fleet} deployment settings in {ecloud}:

. Log in to {ecloud} and go to your deployment.

. Under *Deployments > _deployment name_*, click *Edit*.
. Under **Deployments > _deployment name_**, click **Edit**.

. Under {integrations-server}:
+
Expand All @@ -27,15 +27,16 @@ image::images/fleet-server-hosted-container.png[{fleet-server} hosted agent]

Next modify the {fleet-server} configuration by editing the agent policy:

. In *{fleet}*, click *Agent Policies*. Click on the *{ecloud} agent policy* to
edit it.
. In {kib}, go to **Management > {fleet} > Agent Policies**. Click the name of
the **{ecloud} agent policy** to edit the policy.

. Open the *Actions* menu and select *Edit integration*.
. Open the **Actions** menu next to the {fleet-server} integration and click
**Edit integration**.
+
[role="screenshot"]
image::images/elastic-cloud-agent-policy.png[{ecloud} policy]

. Under {fleet-server}, modify *Max Connections* and other
. Under {fleet-server}, modify **Max Connections** and other
<<fleet-server-configuration,advanced settings>> as described in
<<scaling-recommendations>>.
+
Expand Down Expand Up @@ -146,29 +147,29 @@ on the number of agents required by your deployment:
TIP: You might need to scroll to the right to see all the table columns.

|===
| | *50* | *5,000* | *7,500* | *10,000* | *12,500* | *30,000* | *50,000*
| *Max Connections* | 100 | 7,000 | 10,000 | 20,000 | 32,000 | 32,000 | 32,000
| | **50** | **5,000** | **7,500** | **10,000** | **12,500** | **30,000** | **50,000**
| **Max Connections** | 100 | 7,000 | 10,000 | 20,000 | 32,000 | 32,000 | 32,000
8+s| Cache settings
| `num_counters` | 2000 | 20000 | 40000 | 80000 | 160000 | 160000 | 320000
| `max_cost` | 2097152 | 20971520 | 50971520 | 104857600 | 209715200 | 209715200 | 209715200
| `num_counters` | 2000 | 20000 | 40000 | 80000 | 160000 | 160000 | 320000
| `max_cost` | 2097152 | 20971520 | 50971520 | 104857600 | 209715200 | 209715200 | 209715200
8+s| Server limits
| `policy_throttle` | 200 ms | 50 ms | 10 ms | 5 ms | 5 ms | 2 ms | 5 ms
| `policy_throttle` | 200 ms | 50 ms | 10 ms | 5 ms | 5 ms | 2 ms | 5 ms
8+| `checkin_limit:`
>| `interval` | 50 ms | 5 ms | 2 ms | 1 ms | 500 us | 500 us | 500 us
>| `burst` | 25 | 500 | 1000 | 2000 | 4000 | 4000 | 4000
>| `max` | 100 | 5001 | 7501 | 10001 | 12501 | 15001 | 25001
>| `interval` | 50 ms | 5 ms | 2 ms | 1 ms | 500 us | 500 us | 500 us
>| `burst` | 25 | 500 | 1000 | 2000 | 4000 | 4000 | 4000
>| `max` | 100 | 5001 | 7501 | 10001 | 12501 | 15001 | 25001
8+|`artifact_limit:`
>| `interval` | 100 ms | 5 ms | 2 ms | 1 ms | 500 us | 500 us | 500 us
>| `burst` | 10 | 500 | 1000 | 2000 | 4000 | 4000 | 4000
>| `max` | 10 | 1000 | 2000 | 4000 | 8000 | 8000 | 8000
>| `interval` | 100 ms | 5 ms | 2 ms | 1 ms | 500 us | 500 us | 500 us
>| `burst` | 10 | 500 | 1000 | 2000 | 4000 | 4000 | 4000
>| `max` | 10 | 1000 | 2000 | 4000 | 8000 | 8000 | 8000
8+| `ack_limit:`
>| `interval` | 10 ms | 4 ms | 2 ms | 1 ms | 500 us | 500 us | 500 us
>| `burst` | 20 | 500 | 1000 | 2000 | 4000 | 4000 | 4000
>| `max` | 20 | 1000 | 2000 | 4000 | 8000 | 8000 | 8000
>| `interval` | 10 ms | 4 ms | 2 ms | 1 ms | 500 us | 500 us | 500 us
>| `burst` | 20 | 500 | 1000 | 2000 | 4000 | 4000 | 4000
>| `max` | 20 | 1000 | 2000 | 4000 | 8000 | 8000 | 8000
8+| `enroll_limit:`
>| `interval` | 100 ms | 20 ms | 10 ms | 10 ms | 10 ms | 10 ms | 10 ms
>| `burst` | 5 | 50 | 100 | 100 | 100 | 100 | 100
>| `max` | 10 | 100 | 200 | 200 | 200 | 200 | 200
>| `interval` | 100 ms | 20 ms | 10 ms | 10 ms | 10 ms | 10 ms | 10 ms
>| `burst` | 5 | 50 | 100 | 100 | 100 | 100 | 100
>| `max` | 10 | 100 | 200 | 200 | 200 | 200 | 200
8+s| Server runtime settings
| `gc_percent` | 20 | 20 | 20 | 20 | 20 | 20 | 20
| `gc_percent` | 20 | 20 | 20 | 20 | 20 | 20 | 20
|===
Binary file modified fleet/images/add-fleet-server.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified fleet/images/dashboard-datastream.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed fleet/images/dashboard-with-namespace-showing.png
Binary file not shown.
Binary file modified fleet/images/datastream-namespace.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified fleet/images/fleet-server-agent-policy-page.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified fleet/images/fleet-server-configuration.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
92 changes: 36 additions & 56 deletions tab-widgets/add-fleet-server/content.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,11 @@ deployment.

To confirm that an {integrations-server} is available in your deployment:

. In {kib}, open the main menu, and go to *Management > {fleet}*.
. On the *Agents* tab, look for the *{ecloud} agent policy*. This policy is
. In {kib}, go to **Management > {fleet}**.
. On the **Agents** tab, look for the **{ecloud} agent policy**. This policy is
managed by {ecloud}, and contains a {fleet-server} integration and an Elastic
APM integration. You cannot modify the policy. Confirm that the agent status is
*Healthy*.
**Healthy**.

[TIP]
====
Expand All @@ -25,86 +25,66 @@ image::images/integrations-server-hosted-container.png[Hosted {integrations-serv

// tag::self-managed[]

To deploy a self-managed {fleet-server}, install an {agent} and enroll it in an
agent policy containing the {fleet-server} integration.
To deploy a self-managed {fleet-server}, you install an {agent} and enroll it in
an agent policy containing the {fleet-server} integration.

NOTE: You can install only a single {agent} per host, which means you cannot run
{fleet-server} and another {agent} on the same host unless you deploy a
containerized {fleet-server}.

. Log in to {kib} and go to *Management > {fleet} > Settings*. For more
information about these settings, see
{fleet-guide}/fleet-settings.html[{fleet} settings].
. In {kib}, go to **Management > {fleet} > Settings**. For more information
about these settings, see {fleet-guide}/fleet-settings.html[{fleet} settings].
// lint ignore fleet-server
. Under *Fleet Server hosts*, click *Edit hosts* and specify one or more host
. Under **Fleet Server hosts**, click **Edit hosts** and specify one or more host
URLs your {agent}s will use to connect to {fleet-server}. For example,
`https://192.0.2.1:8220`, where `192.0.2.1` is the host IP where you will
install {fleet-server}. Save and apply your settings.

. In the *{es} hosts* field, specify the {es} URLs where {agent}s will send data.
. In the **{es} hosts** field, specify the {es} URLs where {agent}s will send data.
For example, `https://192.0.2.0:9200`. Skip this step if you've started the
{stack} with security enabled (you cannot change this setting because it's
managed outside of {fleet}).

. Save and apply the settings.

. Click the *Agents* tab and follow the in-product instructions to add a
. Click the **Agents** tab and follow the in-product instructions to add a
{fleet} server:
+
[role="screenshot"]
image::images/add-fleet-server.png[In-product instructions for adding a {fleet-server}]

*Notes:*
**Notes:**

* Make sure you download an x64 architecture installation package.
* For the agent policy, choose one with a {fleet-server} integration, or click
*Create policy* to create one now. Alternatively you can
* Choose **Quick Start** if you want {fleet} to generate a
{fleet-server} policy and enrollment token for you. The {fleet-server} policy
will include a {fleet-server} integration plus a system integration for
monitoring {agent}. This option generates self-signed certificates and is not
recommended for production use cases.
* Choose **Advanced** if you want to either:
** Use your own {fleet-server} policy. You can create a new {fleet-server}
policy or select an existing one. Alternatively you can
{fleet-guide}/create-a-policy-no-ui.html[create a {fleet-server} policy without using the UI],
then select the policy here.
* If you choose *Production* deployment mode, learn how to generate certs in
{fleet-guide}/secure-connections.html[Configure SSL/TLS for self-managed
{fleet-server}s].
and select the policy here.
** Use your own TLS certificates to encrypt traffic between {agent}s and
{fleet-server}. To learn how to generate certs, refer to
{fleet-guide}/secure-connections.html[Configure SSL/TLS for self-managed {fleet-server}s].
* It's recommended you generate a unique service token for each
{fleet-server}. For other ways to generate service tokens, see
{ref}/service-tokens-command.html[`elasticsearch-service-tokens`].
* If you are providing your own certificates:
** Before running the `install` command, make sure you replace the values in
angle brackets.
** Note that the URL specified by `--url` must match the DNS name used to
generate the certificate specified by `--fleet-server-cert`.
* The `install` command installs the {agent} as a managed service and enrolls it
in a {fleet-server} policy. For example, the following command installs
a {fleet-server} and uses self-signed certs:
+
[source,yaml]
----
sudo ./elastic-agent install \
--fleet-server-es=http://localhost:9200 \
--fleet-server-service-token=AAEbAWVsYXN0aWMvZmxlaXQtc2VydmVzL3Rva2VuLTE2MeIzNTY1NTQ3Mji6dERXeE9XbW5RRTZqNlJMWEdIRzAtZw \
--fleet-server-policy=27467ed1-1bfd-11ec-9b88-a7c3d83e2897 \
--fleet-server-es-ca-trusted-fingerprint=3b24d33844d65532f0584d198b45006747521493522c1912608522bf175bc826
----
+
The following command installs a {fleet-server} and uses certificates you
provide. Make sure you replace the values in angle brackets.
+
[source,yaml]
----
sudo ./elastic-agent install --url=https://192.0.2.1:8220 \ <1>
--fleet-server-es=https://192.0.2.0:9200 \
--fleet-server-service-token=AAEAaWVsYXN0aWcvZmxlZXQtc2VydmVyL3rva2VuLTE2MzIzNTYcNTQ3MjI6dER1eE9XbW5RRTZqNlJMWEdIRzAtZw \
--fleet-server-policy=fleet-server-policy \
--fleet-server-es-ca-trusted-fingerprint=a8f3042bc1d2097e94bd8bf75f05v61c0abbaa2eb3e19647c28078bv095ca7c3 \
--certificate-authorities=<PATH_TO_CA> \
--fleet-server-cert=<PATH_TO_FLEET_SERVER_CERT> \
--fleet-server-cert-key=<PATH_TO_FLEET_SERVER_CERT_KEY>
----
<1> The URL must match the DNS name used to generate the certificate specified
by `--fleet-server-cert`.
+
For more {fleet-server} commands, see
in a {fleet-server} policy. For more {fleet-server} commands, see
{fleet-guide}/elastic-agent-cmd-options.html[{agent} command reference].
+
If installation is successful, you'll see the {fleet-server} {agent} on the
*Agents* tab in *{fleet}*.
If installation is successful, you'll see confirmation that {fleet-server}
connected. Click **Continue enrolling Elastic Agent** to begin enrolling your
agents in {fleet-server}.

NOTE: If you're unable to add a {fleet}-managed agent, click the **Agents** tab
and confirm that the agent running {fleet-server} is healthy.

// end::self-managed[]

0 comments on commit 74a7dd9

Please sign in to comment.