As part of its solution, Magento Cloud facilitates changing the services for any particular environment; reducing also the risks of causing a conflict within components.
When upgrading a service, its version needs to be compatible with the Magento host version. The following table can be referenced for helping to determine the correct service version.
Service | Adobe Commerce 2.4.x | Adobe Commerce 2.3.5 ~2.3.9 |
elasticsearch | 7.7, 7.9 | 6.8, 7.5, 7.7, 7.9 |
mysql/mariadb | 10.2, 10.4 | 10.1 ~10.3 |
rabbitmq | 3.8 | 3.7, 3.8 |
redis | 5.x, 6.x | 5.x, 6.x |
For instance, for Magento 2.3.7, a valid selection would be as follows:
- elasticsearch:7.7
- mysql/mariadb:10.2
- rabbitmq:3.8
- redis:5.0
For changing a service version, the file .magento/services.yaml must be edited. For example:
Original service definition:
elasticsearch:
type: elasticsearch:6.0
disk: 1024
Updated service definition:
elasticsearch:
type: elasticsearch:7.7
disk: 1024
Commit the changes and push the changes for activating a redeploy:
git add –all
git commit -m “Upgraded elasticsearch service”
git push <remote> <branch>
After redeploying open a tunnel via Magento CLI:
mgc tunnel:open
mgc tunnel:info
And check the service version for confirming the upgrade:
elasticsearch:
–
username: null
…
type: ‘elasticsearch:7.7’
…
After confirmation, the environment can be used as normal.