Getting Started
Architecture
NServiceBus
Transports
Persistence
ServiceInsight
ServicePulse
ServiceControl
Monitoring
Samples

Upgrade ServiceControl from Version 5 to Version 6

Component: ServiceControl

ServiceControl version 6 updates the underlying data storage from RavenDB 5.4 to RavenDB 6.2. Once upgraded, the database cannot be downgraded.

Users hosting ServiceControl in containerized infrastructure must also make changes to ensure data is accessible in the new version.

Prerequisites

Before upgrading to ServiceControl version 6, ensure all ServiceControl instances have first been upgraded to version 5.11.0.

Container changes

When using the servicecontrol-ravendb container image, the following changes must be made when upgrading to ServiceControl version 6:

Data volume mount location

The internal structure of the container image that the servicecontrol-ravendb container image is based on has changed, so the required data volume must be mounted to the new location inside the container.

  • Old path: /opt/RavenDB/Server/RavenData
  • New path /var/lib/ravendb/data

If the volume mount mapping is not updated, the container will refuse to start.

Data volume permissions

The previous container ran as root, but the new container now runs as a non-root ravendb user with user id 999.

Because of this change, the files created in the data volume by the previous version of the container need to have their owner changed to user id and group id 999.

The exact way to do this depends on the type of mount used (volume vs. bind mount) and container hosting environment.

For example, one way this could be achieved:

docker stop <insert sc ravendb container name here>
docker remove <insert sc ravendb container name here>
docker run --rm \
   -v <ravendb volume name or bind mount path>:/opt/RavenDB/Server/RavenData \
   --entrypoint /bin/bash \
   particular/servicecontrol-ravendb:5.11.0 \
   -c "chown -R 999:999 /opt/RavenDB/Server/RavenData"

If the permissions have not been updated, the container will refuse to start.

Support for version 5

Version 5 is supported for one year after version 6 is released as defined by the ServiceControl support policy. The ServiceControl support end date is available at ServiceControl supported versions.