Skip to content

Commit

Permalink
Update docs for changes in add fleet server steps (#1934)
Browse files Browse the repository at this point in the history
  • Loading branch information
dedemorton authored Jun 29, 2022
1 parent 47689ef commit 33fffae
Show file tree
Hide file tree
Showing 10 changed files with 75 additions and 92 deletions.
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 docs/en/ingest-management/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 docs/en/ingest-management/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 docs/en/ingest-management/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 docs/en/ingest-management/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 not shown.
Binary file modified docs/en/ingest-management/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.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
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 33fffae

Please sign in to comment.