From 5677c2ed2dc5ac359e36f128c55922e2f24370e3 Mon Sep 17 00:00:00 2001 From: Sander Philipse Date: Tue, 27 Oct 2026 13:11:20 +0100 Subject: [PATCH] Add kibana.lite.yml reduced plugin set for classic mode There is no preconfigured reduced plugin set for classic (non-serverless) Kibana; the serverless.*.yml files are the only precedent. This adds a validated "lite" configuration that disables the plugins that expose an unconditional top-level `enabled` flag in classic mode: securitySolution, canvas, monitoring, cases, agentBuilder, automatic_import, workflowsManagement, newsfeed, interactiveSetup which transitively disables 18 more plugins (timelines, sessionView, alertingVTwo, significantEvents, observabilityAgentBuilder, ...). Discover, Dashboard, Visualize, alerting, and stack management remain enabled. Measured on an idle dev server: idle heap_used drops from ~650-700 MB (with the swc-register fs-cache fix) to ~550-560 MB, and startup to "available" takes ~24 s. Usage: node scripts/kibana --dev -c config/kibana.yml -c config/kibana.lite.yml Most stack-management plugins (ilm, ccr, watcher, rollup, snapshot_restore, remote_clusters, license_management, graph) expose `enabled` only via offeringBasedSchema (serverless) and cannot be disabled in classic mode; ml and fleet have no top-level flag at all. Making more plugins disableable in classic would allow further cuts. Co-Authored-By: Claude Fable 5 --- .gitignore | 1 + config/kibana.lite.yml | 17 +++++++++++++++++ 2 files changed, 18 insertions(+) create mode 100644 config/kibana.lite.yml diff --git a/.gitignore b/.gitignore index cf8eeda42381c..ca9bae0f06bee 100644 --- a/.gitignore +++ b/.gitignore @@ -80,6 +80,7 @@ disabledPlugins webpackstats.json /config/* !/config/kibana.yml +!/config/kibana.lite.yml !/config/README.md !/config/serverless.yml !/config/serverless.es.yml diff --git a/config/kibana.lite.yml b/config/kibana.lite.yml new file mode 100644 index 0000000000000..1d1a8ae6796d0 --- /dev/null +++ b/config/kibana.lite.yml @@ -0,0 +1,17 @@ +# Reduced plugin set for a lower-memory classic Kibana ("bare-bones": Discover, +# Dashboard, Visualize, alerting/stack management stay on). Disabling a plugin +# transitively disables plugins that depend on it. Only keys whose plugins +# expose an unconditional `enabled` flag in classic mode are listed; most +# stack-management plugins (ilm, ccr, watcher, rollup, ...) can only be +# disabled in serverless. Use with: +# node scripts/kibana --dev -c config/kibana.yml -c config/kibana.lite.yml + +xpack.securitySolution.enabled: false +xpack.canvas.enabled: false +monitoring.enabled: false +xpack.cases.enabled: false +xpack.agentBuilder.enabled: false +xpack.automatic_import.enabled: false +workflowsManagement.enabled: false +newsfeed.enabled: false +interactiveSetup.enabled: false