Maintenance mode

The BPC is automatically put into maintenance mode when hard disk space becomes scarce. If maintenance mode is active, replication is stopped, among other things. The rest continues to run as normal. The limit is checked every 30 seconds and only the free hard disk space of the computers on which OpenSearch is installed is checked. More precisely: The partitions on which OpenSearch stores its data are checked.

Maintenance mode must be deactivated manually.

What happens when maintenance mode is activated?

  • the Replication is stopped

  • no backups of the OpenSearch indices are performed

  • the Log Service endpoints cannot be used

Status query

There are several ways to query the status:

  • via the BPC web interface on the status page

  • via the Karaf console command: bpc:maintenance-mode status

  • via the JSON status page (http://localhost:8181/cxf/bpc-core/status). There the value maintenanceModeEnabled is either true or false.

  • via the status code page (http://localhost:8181/cxf/bpc-core/status/maintenance). This returns either the HTTP status code 200 (deactivated) or 503 (active).

  • the Prometheus interface provides a bpc_maintenance_mode_enabled metric (1=activated; 0=deactivated)

Manual activation/deactivation

The maintenance mode can be (de)activated via the status page.

maintenance mode1

Alternatively, the maintenance mode can also be activated/deactivated via the Karaf console:

Activate maintenance mode
virtimo@virtimo()> bpc:maintenance-mode on
Deactivate maintenance mode
virtimo@virtimo()> bpc:maintenance-mode off

Setting options

Hard disk limit

The unit is MB and the default setting is 10240. If less hard disk space is available, maintenance mode is activated and replication is stopped. The adjustment can be made via the Karaf console. In the steps below, the limit is set to 4096 MB.

Hard disk limit set to 4096 MB
virtimo@virtimo()> config:edit de.virtimo.bpc.core
virtimo@virtimo()> config:property-set de.virtimo.bpc.core.maintenancemode.fileSystemLimitInMB 4096
virtimo@virtimo()> config:update

It has been shown that de.virtimo.bpc.core.maintenancemode.fileSystemLimitInMB should be set to the same value as the OpenSearch option cluster.routing.allocation.disk.watermark.low in OPENSEARCH_CONFIG_VERZEICHNIS/opensearch.yml.

Message

Optionally, a maintenance mode message can be defined, which is displayed to the user when logging in.

If OIDC or Keycloak are used as identity providers, the message is not displayed.

Set message
virtimo@virtimo()> config:edit de.virtimo.bpc.core
virtimo@virtimo()> config:property-set de.virtimo.bpc.core.maintenancemode.message "Achtung, noch bis 14:30 Uhr werden Wartungsarbeiten durchgeführt."
virtimo@virtimo()> config:update

Or when activating maintenance mode via Karaf console command.

Activate maintenance mode and set message
virtimo@virtimo()> bpc:maintenance-mode -m "Achtung, noch bis 14:30 Uhr werden Wartungsarbeiten durchgeführt." on

Interval

The interval has a default setting of 30 seconds and can be adjusted if required. The Karaf must then be restarted. The adjustment can be made via the Karaf console. The interval is set to 60 seconds in the steps below.

Set interval to 60 seconds
virtimo@virtimo()> config:edit de.virtimo.bpc.core
virtimo@virtimo()> config:property-set de.virtimo.bpc.core.systemchecker.interval 60
virtimo@virtimo()> config:update

Check settings

virtimo@virtimo()> config:edit de.virtimo.bpc.core
virtimo@virtimo()> config:property-list
  ...
   de.virtimo.bpc.core.maintenancemode = false
   de.virtimo.bpc.core.maintenancemode.fileSystemLimitInMB = 10240
   de.virtimo.bpc.core.maintenancemode.message =
  ...
virtimo@virtimo()> config:cancel

Keywords: