Stardog Helm Chart
This chart installs Stardog, either single node or a cluster with a ZooKeeper ensemble, which is required for the cluster. The chart pulls the latest version of Stardog from Docker Hub and does not support rolling upgrades.
This chart does the following:
- Creates a ZooKeeper ensemble from the incubated ZooKeeper Helm chart
- Creates a Stardog Cluster StatefulSet configured with readiness and liveness probes
- Deploys a single node Stardog if the cluster is disabled
- Creates a load balanced service for Stardog
- Optionally specify the anti-affinity for the pods
- Optionally tune resource requests and limits for the pods
- Optionally tune JVM resources for Stardog
||The k8s name for the Stardog deployment|
||The k8s namespace for the Stardog deployment (single node only)|
||Enable Stardog Cluster|
||The number of replicas in Stardog Cluster|
||Stardog admin password|
||Java args for Stardog server|
||The Docker registry containing the Stardog image|
||The Docker image repostory containing the Stardog image|
||The Docker image tag for Stardog|
||The Docker registry username|
||The Docker registry password|
||The storage class to use for Stardog home volumes|
||The size of volume for Stardog home|
||The port to expose Stardog server|
||The port to expose Stardog BI server|
||The directory to use for Stardog tmp space|
||Whether to override the default log4j config|
||The new log4j configuration|
||UID used by the Stardog container to run as non-root|
||GID used by the Stardog container to run as non-root|
||GID for the volume mounts|
The default values are specified in
values.yaml as well as the required values for the ZooKeeper chart.
Stardog Cluster does not currently support rolling upgrades. To upgrade Stardog on k8s, make sure there are no running transactions and then delete the Stardog pods and redeploy them with the new Stardog version. If there are manual steps required as part of the upgrade process k8s jobs will need to be used to run the steps on the Stardog home directories in the PVCs.
See the Stardog documentation for instructuions on how to upgrade Stardog Cluster.
Upgrading from 1.x to 2.x
Version 2.x of the charts deploys ZooKeeper 3.5 instead of 3.4. Before upgrading the charts make sure you have upgraded to Stardog 7.4.2 or later, which includes preview support for ZooKeeper 3.5.
After upgrading Stardog you can upgrade the charts by taking down your full deployment
of Stardog and ZooKeeper pods (but do not delete the PVCs with Stardog home data) by
following this process:
- Stop all traffic and updates to your cluster or wait for them to end. You can ensure there
are no transactions running on a database with
stardog-admin db status <db name>.
- Backup Stardog home and copy the backup out of the k8s environment. The
Stardog documentation includes
an overview of the various options for backing up Stardog. Only S3 backups will copy
data outside of the pods. If you use another backup method you will need to manually
copy the data off the volume or snapshot the volumes to ensure the data is stored in
a separate location.
- Shutdown all Stardog and ZooKeeper pods (e.g. using
- Install the new 2.x charts with the same version of Stardog you were running previously.
At this time namespaceOverride is currently only supported for single-node deploys because the downstream ZooKeeper chart does not support namespaceOverride for ZooKeeper 3.5 deployments.
The chart does not currently support: - cache targets - rolling upgrades - pinning chart version to Stardog versions, the chart tracks the latest available Stardog, it’s not guaranteed to work with any Stardog version