Kibana 8.4: How do disable ML , APM, or entire observability app?

We run elastic 8.4.3, elasticsearch + kibana.

We dont run any "ml", but kibana tries to call elasticsearch ML api:

[2022-10-12T01:19:52.716+00:00][ERROR][plugins.taskManager] Task ML:saved-objects-sync "ML:saved-objects-sync-task" failed: ResponseError: {"error":"Incorrect HTTP method for uri [/_ml/anomaly_detectors] and method [GET], allowed: [POST]","status":405}
[2022-10-12T02:19:55.947+00:00][ERROR][plugins.taskManager] Task ML:saved-objects-sync "ML:saved-objects-sync-task" failed: ResponseError: {"error":"Incorrect HTTP method for uri [/_ml/anomaly_detectors] and method [GET], allowed: [POST]","status":405}
[2022-10-12T02:26:50.287+00:00][INFO ][plugins.securitySolution.endpoint:metadata-check-transforms-task:0.0.1] no endpoint installation found
[2022-10-12T03:19:59.137+00:00][ERROR][plugins.taskManager] Task ML:saved-objects-sync "ML:saved-objects-sync-task" failed: ResponseError: {"error":"Incorrect HTTP method for uri [/_ml/anomaly_detectors] and method [GET], allowed: [POST]","status":405}
[2022-10-12T04:19:32.335+00:00][WARN ][plugins.apm] Failed executing APM telemetry task integrations
[2022-10-12T04:19:32.337+00:00][WARN ][plugins.apm] Error: {"error":"no handler found for uri [/_ml/anomaly_detectors/apm-*,*-high_mean_response_time] and method [GET]"}
    at /usr/share/kibana/x-pack/plugins/observability/common/utils/unwrap_es_response.js:59:11
    at runMicrotasks (<anonymous>)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at Object.executor (/usr/share/kibana/x-pack/plugins/apm/server/lib/apm_telemetry/collect_data_telemetry/tasks.js:708:22)
    at /usr/share/kibana/x-pack/plugins/apm/server/lib/apm_telemetry/collect_data_telemetry/index.js:32:22
    at collectAndStore (/usr/share/kibana/x-pack/plugins/apm/server/lib/apm_telemetry/index.js:80:27)
    at Object.run (/usr/share/kibana/x-pack/plugins/apm/server/lib/apm_telemetry/index.js:48:13)
    at TaskManagerRunner.run (/usr/share/kibana/x-pack/plugins/task_manager/server/task_running/task_runner.js:299:22)
Response: {
  error: 'no handler found for uri [/_ml/anomaly_detectors/apm-*,*-high_mean_response_time] and method [GET]'
}

Also, how to disable observability app? We tried xpack.ml.ui.enabled: false but got No validation schema has been defined for [xpack.ml] error.

You can remove the ml role from your node,.

node.roles: [ master, data, ingest, transform ]

As mentioned in this other discussion, a ml process will still be present as I can also see from my docker instance

The Machine Learning section will still appear in the Analytics solution because there are features associated to that section still available.

But you can create a role with custom access to kibana applications like in this case where no access is granted to ML inside Analytics, and whole Observability or Security solutions.

Assign that role to any new user and they should only see the Analytics section.

Hope it helps.

1 Like