Upgrading rocketchat to version 5.0 resulted in some minor issues that prevented the system from starting - both are related to the database and can easily be fixed.
We're running rocketchat and are upgrading daily on an automated basis with allowing even major version upgrades. Today we've received the upgrade to 5.0 and run into two errors.
Obviously we're running rocketchat within containers (actually this system is still running on a docker basis).
MongoDB connectivity
Until now we've been running mongodb 4.2. With the current release of rocketchat, the connection strings slightly changed, which is luckily annotated by the devs in the release notes.
You can spot that you're missing the configuration when the rocketchat logs show that the connection to the database has been closed unexpectedly.
The important part is to append the query parameter directConnection=true to the connection string. The configurations might look like this:
Upgrade MongoDB
Working on the system is a good starting point to upgrade mongoDB to a current release. Just be aware that you need to upgrade in supported version steps like 4.0 -> 4.2 -> 4.4 -> 5.0.
MongoDB indices
Another error you may see is that rocketchat fails on altering indices after upgrade.
The solution here is to remove indices from the database and let rocketchat create them.
In my case, I needed to remove the following indices:
Having done this, rocketchat started again without any issue.
On a recent project I've been stumbling on the case that kerberos tickets have been inadvertently shared across containers on a node - which obviously caught my attention as I'm not keen on sharing such secrets across workloads. This post describes why this happens and what to do to prevent this.
If you run kubernetes on your own, you need to provide a storage solution with it. We are using ceph (operated through rook). This article gives some short overview about it's benefits and some pro's and con's of it.