Create an agent policy without using the UIedit

For use cases where you want to provide a default agent policy or support automation, you can set up an agent policy without using the Fleet UI. To do this, either use the Fleet API or add a preconfigured policy to Kibana:

Option 1. Create an agent policy with the APIedit
curl -u <username>:<password> --request POST \
  --url <kibana_url>/api/fleet/agent_policies?sys_monitoring=true \
  --header 'content-type: application/json' \
  --header 'kbn-xsrf: true' \
  --data '{"name":"Agent policy 1","namespace":"default","monitoring_enabled":["logs","metrics"]}'

In this API call:

  • sys_monitoring=true adds the system integration to the agent policy
  • monitoring_enabled turns on Elastic Agent monitoring

For more information, refer to Kibana Fleet APIs.

Option 2. Create agent policies with preconfigurationedit

Add preconfigured policies to kibana.yml config.

For example, the following example adds a Fleet Server policy for self-managed setup:

  - name: fleet_server
    version: latest
  - name: Fleet Server policy
    id: fleet-server-policy
    namespace: default
      - name: fleet_server-1
          name: fleet_server

The following example creates an agent policy for general use:

  - name: system
    version: latest
  - name: elastic_agent
    version: latest
  - name: Agent policy 1
    id: agent-policy-1
    namespace: default
      - logs
      - metrics
      - name: system-1
        id: default-system
          name: system

For more information about preconfiguration settings, refer to the Kibana documentation.