Compatibility with Kubernetes
Tested Compatibility Table
Kubernetes | thingshub 6.0.x | thingshub 5.5.x | thingshub 5.4.x | thingshub 5.3.x | thingshub 5.2.x | thingshub 5.1.x | thingshub 5.0.x | thingshub 4.14.x | thingshub 4.13.x |
---|---|---|---|---|---|---|---|---|---|
1.30 | Compatibility Testing Pending | No Compatibility Test Planned | |||||||
1.29 | Compatibility Testing Pending | No Compatibility Test Planned | |||||||
1.28 | No Compatibility Test Planned | No Compatibility Test Planned | |||||||
1.27 | No Compatibility Test Planned | No Compatibility Test Planned | |||||||
1.26 | No Compatibility Test Planned | ||||||||
1.25 | |||||||||
1.24 | |||||||||
1.23 | No Compatibility Test Planned |
How do we test for compatibility?
Premises:
All of the compatibility tests are performed in the Google Kubernetes Engine from GCP. When the compatibility tests are done on other platforms, it is explicitly mentioned.
The latest available thingshub patch version under each major release is tested for compatibility.
The testing is done with the latest available Kubernetes patch version unless explicitly mentioned.
Each Thingshub version is tested in isolation.
For each major Kubernetes release:
We go through the release notes and mark the changes that could be related to thingshub. Then we verify if each of those changes could affect the selected thingshub versions (last 3 major releases). If any changes are required, a new thingshub patch version would be available to accommodate the changes.
We go through the newly added features that could help to increase the stability and security of the thingshub system. If any changes are required, a new thingshub patch version would be available to accommodate the changes.
Kubernetes Versions / Releases Specific Documentation
Kubernetes 1.23
No changes required
Kubernetes 1.24
No changes required
Kubernetes 1.25 [https://kubernetes.io/blog/2022/08/04/upcoming-changes-in-kubernetes-1-25/ ]
Removals
PodSecurityPolicy: Thingshub does not use the PodSecurityPolicy. But since it is a cluster-level resource, it might exist separately from the thingshub installation. Additional details: https://kubernetes.io/docs/concepts/security/pod-security-policy/
Additional Issues Faced
When the cluster was upgraded to 1.25, a new StorageClass was created, and it was marked “default” by the system. This does not affect the running thingshub installation and the upgrading of the existing tenants. But new tenants can’t be deployed, as there are multiple “default” StorageClasses. If there is a single “default” StorageClass, the issue will be resolved. Consult the IT team on how to achieve it. Please do not remove the existing default storage class. Just marking it as a non-default storage class will resolve the issue.
Kubernetes 1.26
No changes required
Kubernetes 1.27
No changes required
Kubernetes 1.28
Deprecated features:
Based on the infrastructure setup, this change might require additional action on the operations side.
KMSv1
: This secrets management API is deprecated and will only receive security updates. Migrate to KMSv2 for full functionality.
Kubernetes 1.29
Removed feature gates:
Based on the infrastructure setup, this change might require additional action on the operations side.
The
KMSv1
feature gate is disabled by default in 1.29. If your cluster relies on KMSv1 for secrets management, migrate to KMSv2 for continued functionality.
Kubernetes Distributions Compatibility
Kubernetes is the container orchestration system, and it is the core system that manages this orchestration. RKE, GKE and others are distributions that package Kubernetes along with many other functionalities like platform support, drivers, extensions, packaging, security, and easier and manageable installations.
For this reason, it can never be definitively ruled out that no minor adjustments or configuration changes are necessary for a specific distribution. SmartMakers therefore assumes that the respective operating team of a Kubernetes cluster has sufficient knowledge of its deployed distribution to be able to quickly identify incompatibilities and jointly find solutions for them.
In such cases, please contact your key account representative or email us at support@smartmakers.de.
FAQs
Q. Will Thingshub use PodSecurityAdmission for defining the isolation levels of the pods?
A: The PodSecurityAdmission has a stable
feature state from Kubernetes 1.25. We plan to look into this when all of our supported releases are fully compatible with Kubernetes 1.25+