When possible, the operator maintains backwards compatibility for previous aisnode versions to allow upgrades, but each aisnode version requires a certain operator version. The following matrix shows the compatible versions of AIStore (aisnode) with ais-operator.
AIStore Version | Required Operator Version | Compatibility Notes | Release Notes |
---|---|---|---|
v3.21 and below | v0.x | AIS, operator | |
v3.22 | v1.0.0 | AIS, operator | |
v3.23 | v1.1.0 | AIS, operator | |
v3.24 | v1.4.1 | Operator > v1.4.x required to transition from AIS v3.23 to v3.24 | AIS, operator v1.4.0, operator v1.4.1 |
v3.25 (latest) | v1.4.1 (>1.5.0 recommended) | Operator transitioning to init-managed config, see below | AIS, operator v1.5.0 |
v3.26 (in dev) | v1.6.0 | Requires init container compatible with v3.26 |
NOTE: We recommend and support only the latest versions of AIStore and ais-operator.
Starting with operator version 1.6.0
, we have begun to move the generation of AIS config from the operator to the init container.
These init containers will now be versioned alongside aisnode
and should be updated alongside aisnode and kept in sync.
Older clusters can be upgraded to an operator with version 1.6.0
, however 1.6.0
can NOT deploy new clusters with an init container using the old versioning system.
We recommend upgrading to the latest compatible init version directly after upgrading the operator to 1.6.0
.
Operator Version | Init Container Version | AISNode Version |
---|---|---|
1.5.0 | v1.2.0, v3.25 | v3.25 |
1.6.0 | v3.25 | v3.25 |
1.6.0 | v3.26 | v3.26 |
If you don't have the operator running: Follow the steps in the deployment docs.
If you already have the operator running and want to update the image:
$ # edit release_version
$ kubectl apply -f https://github.com/NVIDIA/ais-k8s/releases/download/{release_version}/ais-operator.yaml
If you don't have a cluster running: Follow these instructions.
If you already have a cluster running and want to update the aisnode image:
You can either edit the aistores
resource:
$ # edit the nodeImage field
$ kubectl edit aistores -n ais
Or, use a patch command:
$ kubectl patch aistores ais -n ais --type=merge -p '{"spec": {"nodeImage": "aistorage/aisnode:v3.23"}}'
Note: Make sure to update the operator before updating the aisnode.
Please ensure you are using compatible versions when deploying AIStore with ais-operator.