Skip to content

Commit 56a5f7c

Browse files
committed
[DOCS] Added sections and Kibana steps
1 parent a8199a8 commit 56a5f7c

File tree

1 file changed

+179
-30
lines changed

1 file changed

+179
-30
lines changed

docs/en/stack/monitoring/esms.asciidoc

Lines changed: 179 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -2,21 +2,28 @@
22
[[esms]]
33
== {stack} Monitoring Service
44

5-
The {stack} Monitoring Service (ESMS) is an additional service that deploys
6-
a monitoring cluster running {es} and {kib}.
5+
The {stack} Monitoring Service (ESMS) is a monitoring cluster on Cloud that
6+
Elastic provides to self-managed commercial customers. If you send your
7+
monitoring data to the ESMS, it can also be used by Elastic support to provide
8+
better and faster incident resolution.
79

8-
In 6.4 and later, you can use {metricbeat} to ship monitoring data about
9-
{kib} to ESMS. In 6.5 and later, you can do the same for {es}.
10+
NOTE: You must obtain your ESMS cluster URLs and credentials from the Elastic
11+
support team.
1012

11-
To store monitoring data in ESMS:
13+
[discrete]
14+
[[esms-elasticsearch]]
15+
=== Collecting monitoring data about {es}
1216

13-
. Obtain your ESMS cluster URLs and credentials from the Elastic support team.
17+
There are two methods for collecting and sending data about the health of your
18+
production cluster to ESMS: {metricbeat} or collectors and exporters.
1419

15-
. Configure your production cluster to collect data and send it to the
16-
monitoring cluster.
17-
** {ref}/configuring-metricbeat.html[Use {metricbeat}]. This option
18-
is available in 6.5 and later versions.
19-
... Configure the following settings on each node in the production cluster:
20+
TIP: If you want to monitor {ls}, you must use collectors and exporters to
21+
route data from the production cluster to ESMS. Otherwise, it is simplest to use
22+
{metricbeat}.
23+
24+
To use {metricbeat}:
25+
26+
. Configure the following settings on each node in the production cluster:
2027
+
2128
--
2229
[source,js]
@@ -35,8 +42,10 @@ PUT _cluster/settings
3542
Alternatively, you can put those settings in the `elasticsearch.yml` file on
3643
each node. This method, however, requires you to restart each node.
3744
--
38-
... {metricbeat-ref}/metricbeat-installation.html[Install {metricbeat}].
39-
... Enable the {es} module in {metricbeat}.
45+
46+
. {metricbeat-ref}/metricbeat-installation.html[Install {metricbeat}].
47+
48+
. Enable the {es} module in {metricbeat}.
4049
+
4150
--
4251
For example, to enable the default configuration in the `modules.d` directory,
@@ -51,12 +60,14 @@ For more information, see
5160
{metricbeat-ref}/configuration-metricbeat.html[Specify which modules to run] and
5261
{metricbeat-ref}/metricbeat-module-elasticsearch.html[{es} module].
5362
--
54-
... By default, the module collects {es} monitoring metrics from `http://localhost:9200`.
63+
64+
. By default, the module collects {es} monitoring metrics from `http://localhost:9200`.
5565
If your local {es} node has a different address, you must specify it via the
5666
`hosts` setting in the `modules.d/elasticsearch-xpack.yml` file. If your cluster
5767
uses {ref}/configuring-tls.html[encrypted communications], you must access it
5868
via HTTPS. For example, use a `hosts` setting like `https://localhost:9200`.
59-
... If {es} {security-features} are enabled in your production cluster,
69+
70+
. If {es} {security-features} are enabled in your production cluster,
6071
{metricbeat} must use a valid user ID and password to collect metrics
6172
successfully.
6273
+
@@ -67,7 +78,8 @@ Alternatively, use the
6778
{stack-ov}/built-in-users.html[`remote_monitoring_user` built-in user].
6879

6980
Add the `username` and `password` settings to the {es} module configuration
70-
file. For example, add the following settings in the `modules.d/elasticsearch-xpack.yml` file:
81+
file. For example, add the following settings in the
82+
`modules.d/elasticsearch-xpack.yml` file:
7183

7284
[source,yaml]
7385
----------------------------------
@@ -77,7 +89,8 @@ file. For example, add the following settings in the `modules.d/elasticsearch-xp
7789
password: YOUR_PASSWORD
7890
----------------------------------
7991
--
80-
... Identify where to send the {es} monitoring data and supply the necessary
92+
93+
. Identify where to send the {es} monitoring data and supply the necessary
8194
security information. Add the following settings in the {metricbeat}
8295
configuration file (`metricbeat.yml`):
8396
+
@@ -93,13 +106,19 @@ output.elasticsearch:
93106
<2> Replace `MONITORING_AGENT_PASSWORD` with the value provided to you by the
94107
Elastic support team.
95108
--
96-
... {ref}/starting-elasticsearch.html[Start {es}].
97-
... {metricbeat-ref}/metricbeat-starting.html[Start {metricbeat}].
98-
** {ref}/configuring-monitoring.html[Use HTTP exporters]. For example:
99-
... Copy the certificates that you obtained from the Elastic support team to the
109+
110+
. {ref}/starting-elasticsearch.html[Start {es}].
111+
112+
. {metricbeat-ref}/metricbeat-starting.html[Start {metricbeat}].
113+
114+
To use collectors and exporters:
115+
116+
. Copy the certificates that you obtained from the Elastic support team to the
100117
{es} configuration directory (`ES_PATH_CONF`) on each node. These certificates
101-
enable your production cluster to verify the identity of the ESMS and communicate securely.
102-
... Configure the following settings on each node in the production cluster:
118+
enable your production cluster to verify the identity of the ESMS and
119+
communicate securely.
120+
121+
. Configure the following settings on each node in the production cluster:
103122
+
104123
--
105124
[source,js]
@@ -120,13 +139,143 @@ PUT _cluster/settings
120139
----------------------------------
121140
// CONSOLE
122141
<1> Replace `MONITORING_ELASTICSEARCH_URL` with the appropriate URL from the ESMS.
123-
<2> Replace `MONITORING_AGENT_PASSWORD` with the value provided to you by the Elastic support team.
142+
<2> Replace `MONITORING_AGENT_PASSWORD` with the value provided to you by the
143+
Elastic support team.
124144
<3> Replace the path and file name with the appropriate information for the file
125145
provided by the Elastic support team.
126146

127147
Alternatively, you can put those settings in the `elasticsearch.yml` file on
128148
each node. This method, however, requires you to restart each node.
129149
--
150+
151+
[discrete]
152+
[[esms-kibana]]
153+
=== Collecting monitoring data about {kib}
154+
155+
There are two methods for sending monitoring data about {kib} to ESMS. You can
156+
send it directly to ESMS by using {metricbeat} or you can route it through
157+
exporters on the production cluster.
158+
159+
TIP: It is simplest to use {metricbeat}.
160+
161+
To use {metricbeat}:
162+
163+
. Disable the default collection of {kib} monitoring metrics. +
164+
+
165+
--
166+
Add the following setting in the {kib} configuration file (`kibana.yml`):
167+
168+
[source,yaml]
169+
----------------------------------
170+
xpack.monitoring.kibana.collection.enabled: false
171+
----------------------------------
172+
173+
Leave the `xpack.monitoring.enabled` set to its default value (`true`).
174+
175+
For more information, see
176+
{kibana-ref}/monitoring-settings-kb.html[Monitoring settings in {kib}].
177+
--
178+
179+
. {kibana-ref}/start-stop.html[Start {kib}].
180+
181+
. Ensure that the `xpack.monitoring.collection.enabled` setting to `true` on
182+
each node in the production cluster.
183+
184+
. {metricbeat-ref}/metricbeat-installation.html[Install {metricbeat}] on the
185+
same server as {kib}.
186+
187+
. Enable the {kib} module in {metricbeat}. +
188+
+
189+
--
190+
For example, to enable the default configuration in the `modules.d` directory,
191+
run the following command:
192+
193+
["source","sh",subs="attributes,callouts"]
194+
----------------------------------------------------------------------
195+
metricbeat modules enable kibana
196+
----------------------------------------------------------------------
197+
198+
For more information, see
199+
{metricbeat-ref}/configuration-metricbeat.html[Specify which modules to run] and
200+
{metricbeat-ref}/metricbeat-module-kibana.html[{kib} module].
201+
--
202+
203+
. Configure the {kib} module in {metricbeat}. +
204+
+
205+
--
206+
You must specify the following settings in the `modules.d/kibana.yml` file:
207+
208+
[source,yaml]
209+
----------------------------------
210+
- module: kibana
211+
metricsets:
212+
- stats
213+
period: 10s
214+
hosts: ["http://localhost:5601"] <1>
215+
xpack.enabled: true <2>
216+
----------------------------------
217+
<1> This setting identifies the host and port number that are used to access {kib}.
218+
<2> This setting ensures that {kib} can read the monitoring data successfully.
219+
That is to say, it's stored in the same location and format as monitoring data
220+
that is sent by {ref}/es-monitoring-exporters.html[exporters].
221+
--
222+
223+
. If the {stack} {security-features} are enabled, you must also provide a user
224+
ID and password so that {metricbeat} can collect metrics successfully.
225+
226+
.. Create a user on the production cluster that has the
227+
`remote_monitoring_collector` {stack-ov}/built-in-roles.html[built-in role].
228+
Alternatively, use the `remote_monitoring_user`
229+
{stack-ov}/built-in-users.html[built-in user].
230+
231+
.. Add the `username` and `password` settings to the {kib} module configuration
232+
file.
233+
+
234+
--
235+
For example, add the following settings in the `modules.d/kibana.yml` file:
236+
237+
[source,yaml]
238+
----------------------------------
239+
- module: kibana
240+
...
241+
username: remote_monitoring_user
242+
password: YOUR_PASSWORD
243+
----------------------------------
244+
--
245+
246+
. If you configured {kib} to use
247+
{kibana-ref}/configuring-tls.html[encrypted communications], you must access it
248+
via HTTPS. For example, use a `hosts` setting like
249+
`https://localhost:5601` in the `modules.d/kibana.yml` file.
250+
251+
. Identify where to send the {kib} monitoring data and supply the necessary
252+
security information. Add the following settings in the {metricbeat}
253+
configuration file (`metricbeat.yml`):
254+
+
255+
--
256+
[source,yaml]
257+
----------------------------------
258+
output.elasticsearch:
259+
hosts: ["MONITORING_ELASTICSEARCH_URL"] <1>
260+
username: cloud_monitoring_agent
261+
password: MONITORING_AGENT_PASSWORD <2>
262+
----------------------------------
263+
<1> Replace `MONITORING_ELASTICSEARCH_URL` with the appropriate URL from the ESMS.
264+
<2> Replace `MONITORING_AGENT_PASSWORD` with the value provided to you by the
265+
Elastic support team.
266+
--
267+
268+
. {metricbeat-ref}/metricbeat-starting.html[Start {metricbeat}].
269+
270+
////
271+
To use HTTP exporters:
272+
TBD
273+
274+
275+
[discrete]
276+
[[esms-logstash]]
277+
=== Collecting monitoring data about {ls}
278+
130279
. (Optional)
131280
{logstash-ref}/configuring-logstash.html[Configure {ls} to collect data and send it to the monitoring cluster].
132281
+
@@ -136,10 +285,10 @@ data to ESMS. It cannot be accomplished by using {metricbeat}.
136285
137286
--
138287
139-
. (Optional) Configure {kib} to collect data and send it to the monitoring cluster:
140-
** {kibana-ref}/monitoring-metricbeat.html[Use {metricbeat}]. This
141-
option is available in 6.4 and later versions.
142-
** {kibana-ref}/monitoring-kibana.html[Use HTTP exporters].
288+
[[esms-view]]
289+
=== Viewing monitoring data
143290
144-
. View the monitoring data by logging into {kib} on ESMS. For more information,
145-
see {kibana-ref}/xpack-monitoring.html[Monitoring].
291+
You can view the monitoring data by logging into {kib} on ESMS. The {kib} URL is
292+
provided by the Elastic support team. For more information about the monitoring
293+
interface in {kib}, see {kibana-ref}/xpack-monitoring.html[Monitoring].
294+
////

0 commit comments

Comments
 (0)