Offline Upgrade - Redis Module¶
This page explains how to install or upgrade the Redis module of the middleware after downloading it from the Download Center.
Info
The term mcamel mentioned in the following commands or scripts is the internal development codename for the middleware module.
Load Images from Installation Package¶
You can load the images from the installation package using one of the following two methods. It is recommended to use the chart-syncer tool to sync images to the container registry when a repository exists in the environment as it is more efficient and convenient.
Sync Images to Container Registry using chart-syncer¶
-
Create load-image.yaml .
Note
All parameters in this YAML file are required. You need a private container registry and modify the relevant configurations.
If a chart repo is already installed in the current environment, chart-syncer also supports exporting the chart as a tgz file.
load-image.yamlsource: intermediateBundlesPath: mcamel-offline # The relative path to execute the charts-syncer command, not the relative path between this YAML file and the offline package. target: containerRegistry: 10.16.10.111 # Replace with your container registry URL containerRepository: release.daocloud.io/mcamel # Replace with your container registry repo: kind: HARBOR # Can be any other supported Helm Chart repository type url: http://10.16.10.111/chartrepo/release.daocloud.io # Replace with chart repo URL auth: username: "admin" # Your container registry username password: "Harbor12345" # Your container registry password containers: auth: username: "admin" # Your container registry username password: "Harbor12345" # Your container registry password
If a chart repo is not installed in the current environment, chart-syncer also supports exporting the chart as a tgz file and storing it in the specified path.
load-image.yamlsource: intermediateBundlesPath: mcamel-offline # The relative path to execute the charts-syncer command, not the relative path between this YAML file and the offline package. target: containerRegistry: 10.16.10.111 # Replace with your container registry URL containerRepository: release.daocloud.io/mcamel # Replace with your container registry repo: kind: LOCAL path: ./local-repo # Local path of the chart containers: auth: username: "admin" # Your container registry username password: "Harbor12345" # Your container registry password
-
Run the command to sync images.
Directly Load Images using Docker or containerd¶
Extract and load the image files.
-
Extract the tar archive.
tar -xvf mcamel-redis_0.11.1_amd64.tar cd mcamel-redis_0.11.1_amd64 tar -xvf mcamel-redis_0.11.1.bundle.tar
After the extraction, you will have three files:
- hints.yaml
- images.tar
- original-chart
-
Load the images from the local directory to Docker or containerd.
Note
Docker or containerd image loading operation should be performed on each node. After loading, remember to tag the images to keep the registry and repository consistent with the installation.
Upgrade¶
There are two ways to upgrade. You can choose the corresponding upgrade method based on the pre-requisites:
-
Check if the helm repository exists.
If it returns empty or shows the following prompt, proceed to the next step. Otherwise, skip the next step.
-
Add the helm repository.
-
Update the helm repository.
-
Choose the version you want to install (it is recommended to install the latest version).
-
Back up the
--set
parameters.Before upgrading the version, it is recommended to execute the following command to back up the
--set
parameters of the old version. -
Run
helm upgrade
.Before upgrading, it is suggested to replace the
global.imageRegistry
field in mcamel-redis.yaml with the container registry address you are currently using.
-
Back up the
--set
parameters.Before upgrading the version, it is recommended to execute the following command to back up the
--set
parameters of the old version. -
Run
helm upgrade
.Before upgrading, it is suggested to replace the
global.imageRegistry
field in bak.yaml with the container registry address you are currently using.