Skip to content

Releases: bitpoke/mysql-operator

v0.6.3

22 May 15:24
v0.6.3
b00e456
Compare
Choose a tag to compare

Added

  • MysqlDatabase MysqlUser Add delete policy
  • Add PtHeartbeatResources in .Spec.PodSpec to allow the user specifying resources for pt-heartbeat.
  • Set MysqlCluter.Spec.BackupSchedule to empty string to disable recurrent backups
  • Add support for backing up to HDFS

Changed

  • Set default MySQL server version to 5.7.35
  • Bump Orchestrator to 3.2.6
  • Change policy/v1beta1 to policy/v1
  • Add RBAC permissions when deploying on OpenShift

Removed

  • Remove PodSecurityPolicy

Fixed

  • Bump golang.org/x/net to 0.8 (fix: CVE-2022-41723, CVE-2022-27664, CVE-2021-33194)
  • Orchestrator can't properly update or migrate when it more than one
  • Operator service account have no access to update mysqlbackups/status
  • Recurrent backup remote delete policy can not update according to the cluster.Spec.BackupRemoteDeletePolicy
  • When the operator is restarted, it will process the Pod list once to prevent the state of the pod from being changed automatically because it is not updated (especially if the PVC is full).

v0.6.2

17 May 10:09
v0.6.2
9067a95
Compare
Choose a tag to compare

⚠️ released on 2021-12-28.

Fixed

  • orchestrator.secretName is ignored in helm charts

0.6.1

22 Dec 21:39
v0.6.1
52a868d
Compare
Choose a tag to compare

⚠️ This release drops support for Helm 2 and adopts Kubernetes Recommended Labels for the helm deployment.

Please check upgrade instructions and blog article before upgrading.

Fixed

  • Fix the app version in the published Helm charts

0.6.0

21 Dec 10:14
v0.6.0
692b1b7
Compare
Choose a tag to compare

⚠️ This release drops support for Helm 2 and adopts Kubernetes Recommended Labels for the helm deployment.

Please check upgrade instructions and blog article before upgrading.

Added

  • If you want to save MySQL backup to AWS S3, AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY were the only options, but now you can use AWS_SESSION_TOKEN or AWS_ROLE_ARN and AWS_WEB_IDENTITY_TOKEN_FILE
  • Add orchestrator.persistence.selector.matchLabels and orchestrator.persistence.annotations for
    persistence depolyment with constraints
  • Add orchestrator.persistence.fsGroupWorkaroundEnabled for persistent volume
    provisioners wich don't support fsGroup in security context (fixes #615)
  • Add appSecretLabels, appSecretAnnotations, backupSecretLabels, backupSecretAnnotations to provide
    custom labels and annotations to created app and backup secrets
  • Update rclone to v1.57.0
  • For s3, enable the no_check_bucket option for rclone
  • Allow setting metrics and health checking listening addresses

Changed

  • Allow setting pod security context when deploying with Helm
  • Use distroless as base image for orchestrator container
  • Use networking.k8s.io/v1 instead of extensions/v1beta1 for ingress
  • Use Service.spec.publishNotReadyAddresses instead of service.alpha.kubernetes.io/tolerate-unready-endpoints
  • Use git-semver for setting versions
  • Graceful shutdown is enabled by default

Removed

  • Removed support for Helm 2

Fixed

0.5.3

07 Dec 08:28
v0.5.3
e8a6d5d
Compare
Choose a tag to compare

Fixed

0.5.2

23 Nov 09:56
v0.5.2
5279c0a
Compare
Choose a tag to compare

Added

  • If you want to save mysql backup to AWS S3, AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY were the only options, but now you can use AWS_SESSION_TOKEN or AWS_ROLE_ARN and AWS_WEB_IDENTITY_TOKEN_FILE

Changed

  • Update rclone to v1.57.0

Fixed

  • Make sure orchestrator can find it's templates #741

0.5.1

14 Oct 14:55
v0.5.1
c3e67a6
Compare
Choose a tag to compare

Added

  • Add orchestrator.persistence.fsGroupWorkaroundEnabled for persistent volume
    provisioners wich don't support fsGroup in security context (fixes #615)

Changed

  • Allow setting pod security context when deploying with Helm
  • Use distroless as base image for orchestrator container

0.5.0

06 Oct 08:02
v0.5.0
dc96fa2
Compare
Choose a tag to compare

⚠️ Helm charts and docker images location changed

Added

  • Add image and mysqlVersion options to MysqlCluster chart. This bumps the chart version to 0.3.1
  • Add backupAffinity, backupNodeSelector, backupPriorityClassName, backupTolerations
    to .Spec.PodSpec to allow specifying custom scheduling constraints for backup jobs.
  • Add the ability to set the imagePullSecrets for the operator statefulset.
  • Add Google Drive via service account as backup option.
  • Add initBucketURL and initBucketSecretName options to MysqlCluster chart. This bumps the chart version to 0.3.0
  • Add an example of how initContainers can be used to fix hostPath permissions.
  • Add a lifecycle preStop hook for the mysql container. Before killing the master MySQL process,
    it triggers a graceful-master-takeover-auto command in Orchestrator. This is disabled by
    default, to enable it set gracefulShutdown.enabled=true in chart values or set the controller
    command argument failover-before-shutdown to true.
  • Add mysqlLifecycle to .Spec.PodSpec to allow overriding the default lifecycle hook for the
    mysql container.
  • Add backupCompressCommand and backupDecompressCommand to allow using
    different compressors/decompressors when backing up or restoring.
  • Add support for MySQL version 8.0
  • Add go modules cache
  • Support cron timezone

Changed

  • Only add binlog-space-limit for percona image
  • Make user-defined InitContainer take the precedence
  • Set timeout of 15s on connection between the operator and Orchestrator
  • Bump controller-util dependency to 0.3.0 which fixes some updates on pod spec.
  • Removed NO_AUTO_VALUE_ON_ZERO from sql-mode to be inline with MySQL default value
  • Remove use go module instead of dep
  • Update k8s client to v0.21.2
  • Update kubebuilder (to v2.3.1) along with controller-runtime (to v0.9.2) and controller-gen
  • Update rclone to v1.53.1
  • Update Orchestrator version from v3.1.2 to v3.2.3
  • Set default MySQL server version to 5.7.31
  • Generate CRDs with controller-gen v0.5.0
  • Update getOrdinalFromHostname and IsFirstPodInSet
  • Use klog for logging
  • Use https://github.com/bitpoke/build for building the project

Fixed

  • Fix insufficient permissions during startup
  • Fix the xtrabackup --tables-exclude cannot take effect
  • Fix the pod unable to connect Orchestrator
  • Fix pod labels diff of map
  • Fixed backup cleanup job bug (#577)
  • Fix Kubebuilder path in Makefile.
  • Fix #632 lifeCycle preStop script is not copied to given directory.
  • Fix #637 mysqlbackup status is not updated correctly.
  • Fix #647 custom conf can't overwrite the default conf
  • Fix #627 let Orchestrator do the failover
  • Fix #694 the error caused by backing up without waiting for master to be created.

🎉 With this release let's welcome @cndoit18 as a project contributor and maintainer!

0.4.0

17 Jun 14:53
Compare
Choose a tag to compare

A detailed changelog can be found in the Changelog.md file.

Changes since version v0.3.10: list of commits

Some highlights in this version since v0.4.0-rc.1:

  • Fixed bug #528
  • Set metrics exporter port based on extra_port (thanks @stankevich)

0.4.0-rc.1

27 Mar 14:01
Compare
Choose a tag to compare
0.4.0-rc.1 Pre-release
Pre-release

A detailed changelog can be found in the Changelog.md file.

Some highlights in the new version:

  • Add support for Helm v3.
  • Improved logging.
  • Change default requested and limit resources for sidecar container and allow the user to specify them.'
  • Update formula for innodb_buffer_pool_size.
  • MySQL initialization from k8s services instead of individual hosts. (thanks @dougfales )