Mongo Operator and ARM

Description:

Hello, do you have a plan to build/push mongo operator for ARM64 arch?
Thanks.

Version:

psmdb-operator 1.14.0

Hello @sergelog ,

we do have this in our roadmap.
https://jira.percona.com/browse/K8SPSMDB-948

Can you share more details about your use case? For example, is it about EC2 Graviton on AWS? Or is it more about edge IOT cases? Etc.

The short answer is price.
ARM instances are cheaper.

I have the app: python (django), postgres, redis, rabbit, mongo. And all components work fine except Mongo.
We decided to migrate from bitnami-mongo to Percona. I’ve almost given up with mongo-arm64. But I’ve just noticed, you introduced a mongo-server for arm.

Mongo operator was written on golang, and I hope it would not be complicated to release an arm version mongo-operator (Dockerfile has values already).

Kubernetes controlplane and other components (addons) support many planform architecture now. So mongo operator like controplate, should follow this idea.

Thanks.

@sergelog - we added the support for ARM in Percona Operator for MongoDB 1.16.0: Percona Operator for MongoDB 1.16.0 (2024-05-24) - Percona Operator for MongoDB

The only caveat - PMM does not support ARM yet. You can deploy the Operator and database with PMM disabled.

Thank you. I’ve tested it already.

Do you have a plane to rename image tags like x.x.x-multi to regular tag?
Just today Mongo operator during upgrade, replaced the multi-arch image to amd only.

Thanks.

Hi

im trying to get percona MongoDB server running on aws ec2 graviton instances (arm) can you provide your config? curious if you had to anything special to get it working. Im running into an issue (see my latest pos)

Hi, change the images tag to multi and disable updateStrategy:

https://hub.docker.com/r/percona/percona-server-mongodb/tags?page=&page_size=&ordering=&name=multi

image:
  repository: percona/percona-server-mongodb
  tag: 6.0.15-12-multi

backup:
  enabled: true
  image:
    repository: percona/percona-backup-mongodb
    tag: 2.4.1-multi

thank you, but unsure why you need to disable updateStrategy smartupdate?

Hi @Kay_Khan !
You don’t need to change updateStrategy: SmartUpdate, just make sure to set upgradeOptions.apply: disabled.
This basically disables the automatic upgrades of database cluster (since I think our version service is still not aware of these multi images), but it is still using the SmartUpdate strategy for different config updates which is recommended.

thank you for the response