Skip to main content
Version: Unreleased

Upgrade Guide

info

This guide documents breaking changes and migration steps for upgrading the FRAFOS Monitor.

We document all known breaking changes. Some, however, occur in less commonly used areas of the software, so only a subset may affect your deployment. Reviewing this guide carefully will help ensure a smooth upgrade.

Upgrading to Version 10.2

1. Data Volume Permissions

Impact: High

Description

If your deployment mounts an existing /data volume into the Monitor container, you may encounter permission errors when the container attempts to create directories or write data.

This issue occurs because earlier versions of Monitor ran their processes under different users — root, mokis, elasticsearch, or sbcsync — meaning that files on the mounted volume may be owned by various user accounts. Starting with version 10.2, the container now runs as a non-root user (node, UID 1000), which no longer has permission to modify those existing files or create new ones on the same volume.

Solution

To determine if your mounted volume has the correct permissions, execute the following command:

ls -la /path/to/mounted-data/

This will display the current ownership and permission settings of the directory.

For example, the original Monitor 5.3 directory structure:

(mon) / # ls -la /data
total 36
drwxr-xr-x 9 root root 4096 Oct 22 15:28 .
dr-xr-xr-x 1 root root 4096 Oct 22 15:40 ..
drwxrwxr-x 4 mokis mokis 4096 Nov 4 09:46 abc-monitor
drwxr-xr-x 2 elasticsearch elasticsearch 4096 Oct 22 15:28 elasticsearch
drwxr-xr-x 2 root root 4096 Oct 1 08:32 interfaces.d
drwxr-xr-x 2 root root 4096 Oct 22 15:28 local-templates
drwxr-xr-x 2 root root 4096 Oct 22 15:28 prompts
drwxr-xr-x 4 sbcsync sbcsync 4096 Oct 22 15:28 sbcsync
drwxr-xr-x 2 root root 4096 Oct 22 15:28 siprec_templates

Method 1 (Preferred): Mount the directory using the :U option.
This tells Podman to automatically adjust the ownership of the mounted directory so it matches the container’s user namespace.

-v /path/to/mounted-data:/data:U

Method 2: Manually change the ownership of the directory to match the user running inside the container.

chown -R 1000 /path/to/mounted-data/

This command recursively changes the ownership (both user and group) of all files and directories to UID and GID 1000, which corresponds to the default node user in the Monitor container.

warning

Both methods can be slow on large directory trees, as they must update the ownership of every file recursively.