feat: ONPREM-177- Replace Oracle with Moco#182
Conversation
HiveMind Sessions2 sessions · 1h 52m · $73
View all sessions in HiveMind → Run |
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub. |
Restores on-prem install by repairing the chain of moco/mysql string mismatches introduced by #182 that blocked MySQL setup end-to-end. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Restores on-prem install by repairing the chain of moco/mysql string mismatches introduced by #182 that blocked MySQL setup end-to-end. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
* fix(operator): Repair moco/mysql rename regressions Restores on-prem install by repairing the chain of moco/mysql string mismatches introduced by #182 that blocked MySQL setup end-to-end. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * fix: Corrent the issue in the other direction --------- Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com> Co-authored-by: Daniel Panzella <daniel.panzella@wandb.com>
NOT A WALL OF AI TEXT - Genuine questions that I'm not sure of the answer to
Swapping Oracle Mysql Operator for Moco
Some concerns to call out
No in-place migration from Oracle to Moco. Existing installs need to mysqldump from the Oracle-backed instance, apply this version, and restore into the new Moco-backed instance.
Connection user changes from root to moco-writable. App pods and any monitoring/backup integrations that hard-code root will need updating.
No client-side TLS by default. Oracle's operator shipped self-signed TLS for MySQL client traffic automatically. Moco doesn't. Not sure to what effect this influences rollout
Replica count is restricted to odd values (1, 3, 5). Moco enforces quorum-based replication. CRs with spec.MySQL.ManagedMysql.Replicas set to 2 or 4 will fail CRD validation.**
---- ^ no concern
Service DNS changes from {name}-mysql.{ns}.svc to moco-{name}-primary.{ns}.svc. Don't know if this lends itself to any monitoring changes? Datadog? Metrics?
--- ^ maybe?
PVC cascade-delete on onDelete: purge. Moco's PVCs are owned by the MySQLCluster CR so deleting the CR cascade-deletes PVCs. Oracle's operator didn't delete PVCs. Not sure if this matters?
^ need solution for this
Architectural differences
---- ^ fine
^ we could build our own images based off theirs if customers have issue with it
Operator changes
wandb-mysql-init Job retargeted. Previously created wandb_local database, wandb_local user, and granted privileges using Oracle's root credentials. Now uses the operator-generated {name}-connection secret with moco-writable and only creates the database
Operator watches MySQLClusters via Owns(). The controller now reconciles when Moco updates the cluster's status, instead of waiting for the next periodic resync.
^ double check
Cert-manager added as a hard dependency, needs to be set to enabled=True in chart for use, I disabled it when testing because it conflicted with local tilt settings
Tested Locally with App, ran sample weave, saw data populated in moco mysql tables