Bitpoke Mysql Operator Versions Save

Asynchronous MySQL Replication on Kubernetes using Percona Server and Openark's Orchestrator.

v0.3.1

4 years ago

This release fixes:

  • An upgrade issue from version 0.2.x (#369 )

  • Changes the default leader election id (#368 )

v0.3.0

4 years ago

Changes since version v0.2.10: list of commits

New in v0.3.0:

  • add a new cluster condition FailoverInProgress that marks the cluster during a failover
  • merge Orchestrator chart with the mysql-operator chart. Now instead of deployment it uses a statefulset.
  • fix readiness probe for MySQL container (017acf95d093c1ada7cc63b802700f21f1bb3a0e)
  • set orchestrator related events on the cluster: OrcFailureDetection, OrcPostUnsuccessfulFailover, OrcPostMasterFailover, OrcPostIntermediateMasterFailover. (80e1ccd0118060dde0c4342262c379ecbc5bf356)
  • nodes are removed from cluster status at scale down (027537cd79701aac4741d511a4a930ba436ef85c)
  • fix remote storage delete bug (470365f8772a0f3105652266dfec75b64afe8499)
  • fix mysqlbackup deletion failure when cluster is not found (04c440a6453380290f98f0b995c7d9d5337f7d95)
  • fix #350 where no backups were created when one fails (24e7b81d67f0fd481e5fe6f962e6ad594707137a)
  • fix #107, the orchestrator RAFT issue (a81233c79dab7b70da49ea79e0bc4ee7d028bd56)
  • use init container for MySQL initialization (#342)
  • enhance Backup Job Pod for Workload Identity (#366)
  • new command line flag --mysql-versions-to-image to allow user to specify image for a mysql version (ffb0a228ceb4b690585e7b241db9618ea26fc210)
  • add print column in mysqlcluster CRD: Ready, Replicas, Age

Also in v0.3.0-rc.1:

  • refactor of how the information flow works: from k8s -> Operator -> Orchestrator; the sidecar container does not connect to Orchestrator anymore.
  • cleanup of deprecated fields: bucketURI and top-level MySQLCluster.spec.volumeSpec PVC specification (d909ab9, df80b28)
  • rename of initBackupURI to initBackupURL (a3c6556)
  • use of Percona CentOS based images (#254)
  • don't run as root user in containers (#291)
  • rename orchestrator finalizer (to block cluster deletion while it's registered into Orchestrator) from OrchestratorFinalizer to mysql.presslabs.org/registered-in-orchestrator (bfe4646)
  • improvement of getBackupCandidate function (9ce4e68)
  • allow specifying more PodSpec on MySQL cluster (9b6b46f)
  • configure MySQL using init-file (beb41ce, e5823cb)
  • add a node controller for MySQL configuration (1950812)
  • add "standard" labels on services created by the operator (#299)
  • rename AWS_SECRET_KEY field from bucket/backup secret to AWS_SECRET_ACCESS_KEY (#301)
  • use an internal status table to store the MySQL status (181909f)
  • use a common headless service for all MySQL nodes to reduce the host-name length (#246)

NOTE: see upgrade page for more information about upgrading from an older version.

v0.3.0-rc.1

5 years ago

Changes since version v0.2.8: list of commits

The release highlights are:

  • refactor of how the information flow works: from k8s -> Operator -> Orchestrator; the sidecar container does not connect to Orchestrator anymore.

  • cleanup of deprecated fields: bucketURI and top-level MySQLCluster.spec.volumeSpec PVC specification (d909ab9, df80b28)

  • rename of initBackupURI to initBackupURL (a3c6556)

  • use of Percona CentOS based images (#254)

  • don't run as root user in containers (#291)

  • rename orchestrator finalizer (to block cluster deletion while it's registered into Orchestrator) from OrchestratorFinalizer to mysql.presslabs.org/registered-in-orchestrator (bfe4646)

  • improvement of getBackupCandidate function (9ce4e68)

  • allow specifying more PodSpec on MySQL cluster (9b6b46f)

  • configure MySQL using init-file (beb41ce, e5823cb)

  • add a node controller for MySQL configuration (1950812)

  • add "standard" labels on services created by the operator (#299)

  • rename AWS_SECRET_KEY field from bucket/backup secret to AWS_SECRET_ACCESS_KEY (#301)

  • use an internal status table to store the MySQL status (181909f)

  • use a common headless service for all MySQL nodes to reduce the host-name length (#246)

NOTE: see upgrade page for more information about upgrading from an older version.

v0.2.7

5 years ago

Changelog:

  • Fix cloning when using emptyDir and node-0 is not master but is restarted. (#250, #252 ) (thanks @pedep )
  • Backup URL on remote storage, now contains the backup name, not the cluster name (#253, #257 ) (thanks @ballad89 )
  • Add remoteDeletionPolicy on backup resource, now backups can be removed from remote storage (#249, #81 )
  • Correct azure storage rclone config (#261) (thanks @jgleonard )
  • Improve the backup scheduler lock (#255, #85 )
  • Fix corrupted backups that where taken under cluster stress (#260, #256 )
  • Fix metrics exporter user host restriction (#265 )

v0.2.6

5 years ago

Changelog from 0.2.5:

  • Restart controller when orchestrator topology secret changes (#248 )
  • A refactor for sidecar command (#241, #251)

v0.2.5

5 years ago

The main changes and features of this release are:

  • Use Percona docker images based on CentOS, this change will allow using any custom docker image based on Percona server (#200, #224 )
  • Fix broken command line flag: --image-pull-secret (#232)
  • Remove unused flags: --job-grace-time, --http-serve-addr (#232)
  • Add --namespace flag to limit operator activity to a certain namespace (#232)
  • Configure MySQL to set binlog size limits by setting: max-binlog-size and binlog-space-limit (#235 )
  • Add a Helm chart to deploy a MySQL cluster easily (#236)
  • Development: Make Skaffold usage more friendly (#228 )

v0.2.4

5 years ago

This release fixes some bugs related to how Orchestrator does topology recovery. The list of changes is presented below:

  • Keep last known state when orchestrator is down (#219), this will prevent master service to go down when Orchestrator is not available (#203);
  • Cascade deletion of the cluster now will not delete all the resources (#221, #225);
  • Update controller-runtime which implies using klog instead of glog (#227);
  • Let the operator set the master writable (#222, #199) so now the operator does not set nodes in maintenance to prevent failover when the cluster is in read-only. Also, unwanted failovers, which can bring the cluster in co-master topology (#207) are prevented;
  • Change what means for a cluster to be Ready, now the cluster is ready if all pods in StatefulSet are Running and replicating and the cluster has a master. (f85e674);
  • Exclude init table from backup to allow bootstrap detection on slave (0dbcc88).

v0.2.3

5 years ago

In this release we fixed some bugs, add some new features and add documentation.

  • Fixed metrics exporter password generation to not contain ? (#195 )
  • Increase initialDelaySeconds to 60 seconds (#184 )
  • Fix recurrent backups for cluster and backupScheduleJobsHistoryLimit field (#182 )
  • Use Kubernetes recommended labels (#132 )
  • Fix query for lag detection (#174 )
  • Upgrade controller-runtime deps also client-go was updated (#191 )
  • Better slave initialization that from xtrabackup (#202 )
  • Add support for emptyDir and hostPath and change volumeSpec by deprecating inline specification for PVC and add persistentVolumeClaim as subfield (#114 )
  • Add documentation (#92, #168, #170 )

v0.2.2

5 years ago

This release has some bug fixes and improvements for backups and for PVCs.

  • Cluster will not be set as owner reference for the credentials secret. (2bed433e78564d29ca7387eab99be283f612e836)
  • More e2e test for PVCs cleanup, the PVC for pod 0 will not be deleted. (#178 )
  • Map mysqlVersion to kown image tags (dcacd6aebec3d29e2b84534ab47c8a217d0788c8, #171 )
  • Add a new field .spec.image on the MysqlCluster resource for specifying the image (#171 )
  • Ensure sidecar pods limits. (466ce85ec246e9a161f31b11c0380ee0011fc7a8)
  • Don't install CRDs when the CRD is already registered. (2a49e6d670495d46a45a7deabce881f4a5b56239)
  • Add e2e test for backups and fix recurrent backups (fc7735b9db487b080e823f7c3628a17e4b6d9249, adb093d7e689a210cb09fcdd24b906b4a64ef943)

v0.2.1

5 years ago

This release has a new rewrite from version v0.1.x, the operator is based on kubebuilder as underlying SDK for writing k8s operators. This version contains all previous v0.1.x features, stability improvments, and minor bug fixing.

  • Fixes bug when cluster is scaled down (#160 )
  • Provides a way to delete PVC when cluster is deleted ( #73 ) ( thanks to @smanpathak )
  • The PVCs has as owner reference the mysql cluster ( #79 )