[[monitoring-elastic-agent]] = Collect {kib} monitoring data with {agent} ++++ Collect monitoring data with {agent} ++++ In 8.5 and later, you can use {agent} to collect data about {kib} and ship it to the monitoring cluster, rather than <> or routing data through the production cluster as described in <>. To learn about monitoring in general, see {ref}/monitor-elasticsearch-cluster.html[Monitor a cluster]. [discrete] == Prerequisites * Set up {es} monitoring and optionally create a monitoring cluster as described in the {ref}/monitoring-production.html[{es} monitoring documentation]. * Create a user on the production cluster that has the `remote_monitoring_collector` {ref}/built-in-roles.html[built-in role]. [discrete] == Add {kib} monitoring data To collect {kib} monitoring data, add a {kib} integration to an {agent} and deploy it to the host where {kib} is running. . Go to the **Integrations** page. + NOTE: If you're using a monitoring cluster, use the {kib} instance connected to the monitoring cluster. . In the query bar, search for and select the **Kibana** integration for {agent}. . Read the overview to make sure you understand integration requirements and other considerations. . Click **Add Kibana**. + TIP: If you're installing an integration for the first time, you may be prompted to install {agent}. Click **Add integration only (skip agent installation)**. . Configure the integration name and optionally add a description. Make sure you configure all required settings: * Under **Collect Kibana logs**, modify the log paths to match your {kib} environment. * Under **Collect Kibana metrics**, make sure the hosts setting points to your Kibana host URLs. By default, the integration collects {kib} monitoring metrics from `localhost:5601`. If that host and port number are not correct, update the `hosts` setting. If you configured {kib} to use encrypted communications, you must access it via HTTPS. For example, use a `hosts` setting like `https://localhost:5601`. * If the Elastic {security-features} are enabled, expand **Advanced options** under the Hosts setting and enter the username and password of a user that has the `remote_monitoring_collector` role. . Choose where to add the integration policy. Click **New hosts** to add it to new agent policy or **Existing hosts** to add it to an existing agent policy. . Click **Save and continue**. This step takes a minute or two to complete. When it's done, you'll have an agent policy that contains an integration for collecting monitoring data from {kib}. . If an {agent} is already assigned to the policy and deployed to the host where {kib} is running, you're done. Otherwise, you need to deploy an {agent}. To deploy an {agent}: .. Go to **{fleet} -> Agents**, then click **Add agent**. .. Follow the steps in the **Add agent** flyout to download, install, and enroll the {agent}. Make sure you choose the agent policy you created earlier. . Wait a minute or two until incoming data is confirmed. . <>.