All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning.
0.10.3 - 2021-07-06
- Watch ConfigMap for customizing my.cnf (#271)
0.10.2 - 2021-06-24
- Update moco-agent to 0.6.8 (#269)
0.10.1 - 2021-06-22
- Update moco-agent to 0.6.7 (#266)
0.10.0 - 2021-06-13
- Migrate the official MySQL image repository to quay.io/cybozu/mysql (#262)
- Update controller-runtime to 0.9.0 (#262)
- Update fluent-bit to 1.7.8 (#263)
- Update mysqld_exporter to 0.13.0 (#263)
0.9.5 - 2021-06-04
- Timeout while cloning large data (#261)
- Better handling of Cloning state (#261)
- Manual switch over did not take place immediately (#261)
- Update
moco-agent
to 0.6.6 (#261)
0.9.4 - 2021-06-03
- Automatic switchover did not take place immediately (#260)
0.9.3 - 2021-06-02
- Failed to update Service if
spec.externalTrafficPolicy
was set toLocal
(#259)
0.9.2 - 2021-06-01
- Fix RBAC for BackupPolicy (#258)
0.9.1 - 2021-05-31
- Change the way to shrink MySQLCluster CRD (#257)
0.9.0 - 2021-05-31
- Backup and Point-in-Time Recovery feature (#247)
- To use the new backup feature, clusters created with MOCO v0.8 needs to be re-created.
- Support for Kubernetes 1.21 (#251)
- Allow opaque
my.cnf
configurations (#252) - Documentation site on https://cybozu-go.github.io/moco/ (#254)
- Update
moco-agent
to v0.6.5 (#247)
- Controller failed to update Service if
spec.externalTrafficPolicy
is set to Local (#250)
0.8.3 - 2021-05-12
- Set UID/GID of containers to 10000:10000 (#243)
0.8.2 - 2021-05-10
- gRPC communication between moco-controller and moco-agent is protected with mTLS (#241)
0.8.1 - 2021-05-06
- built-in
mysqld_exporter
to exposemysqld
metrics (#237)
- binlog filename now has a proper prefix
binlog.
(#237)
0.8.0 - 2021-04-27
- Everything. There is no backward compatibility. (#228)
- The older release must be uninstalled before installing this version.
0.7.0 - 2021-02-22
Since v0.7.0, MOCO will no longer use CronJob for log rotation. Please remove existing CronJobs manually after upgrading MOCO.
- Stop using CronJob for log rotation. (#190, moco-agent#10)
- Update moco-agent to v0.2.1. (#202)
0.6.0 - 2021-02-16
Caution
- Since MOCO v0.6.0, MySQL data volumes (PVC) will be automatically deleted when the parent MySQLCluster resource is deleted. If you want to keep the volumes, please delete the owner reference manually from the volumes (PVCs) resource. https://github.com/cybozu-go/moco/blob/main/docs/design.md#how-to-delete-resources-garbage-collection
- The
volumeClaimTemplates
field in the generated StatefulSet will be changed. This change will not be applied automatically. After upgrading moco from v0.5.x, please delete the existing StatefulSet manually.
- Add kubectl-moco command for Mac OS (darwin/amd64). (#184)
- Add PVC auto deletion. (#189)
- Generate secrets for cluster from ControllerSecret. (#185, #192)
0.5.1 - 2021-02-04
- Download e2e test tools for the host OS. (#182)
0.5.0 - 2021-02-03
Breaking change
The MySQLCluster
created by MOCO < v0.5.0
has no compatibility with >= v0.5.0
caused by the naming method of k8s resources (PR #161). Please recreate the cluster.
- Add kubectl-moco release workflow for windows. (#169)
- Support official MySQL container image. (#165)
- Add 'moco-' prefix to resource name and remove UUID suffix (#161)
0.4.0 - 2021-01-26
- Add document about how to build MySQL container image. (#122)
- Add document about example of MySQLCluster CR. (#124)
- Support MySQL 8.0.18 and 8.0.20 (#125, #141, #142)
- Support Kubernetes 1.19 and 1.20 (#157, #160)
- Update Go to 1.15 and Ubuntu base image to 20.04 (#153)
- Publish editor/viewer ClusterRoles with aggregation labels. (#116)
- Fix the login user option of
kubectl-moco
. (#117) - Fix agent process crash bug. (#143)
- Prevent unnecessary reconciliation. (#146)
- Add
loose_
prefix to theinnodb_numa_interleave
system variable. (#158)
0.3.1 - 2020-11-11
- Add support for klog options to
kubectl-moco
plugin (#110). - Add
logRotationSecurityContext
field toMySQLCluster
CRD to give PodSecurityContext for the log rotation CronJob (#111).
- Fix the location of an annotation in the deployment manifest (#107).
- Fix the behavior of
-it
option forkubectl-moco
plugin (#109). - Fix the default value of
-u
option forkubectl-moco
plugin (#109). - Add
moco-
prefix to the names in the deployment manifest (#112). You need to deletemoco-controller-manager
Deployment to apply the updated manifest. - Remove the resource limits for the controller from the deployment manifest (#115).
0.3.0 - 2020-11-05
- Use ServiceTemplate. (#65, #92)
- Configure intermediate primary (#74, #87)
- Add metrics for controller (#81)
- Add metrics for agents (#83)
- Add Event recording. (#84)
- kubectl-moco plugin (#93, #95)
- create PodDisruptionBudget (#99)
- Modify manifests for deployment. (#97)
0.2.0 - 2020-10-07
- Generate MySQL configuration file with merging configmap resource (#39, #42)
- Add periodic log rotation mechanism (#43)
- Setup MySQL cluster with primary-replica (#50)
- Add Service resources to connect primary and replicas (#52)
- Do failover when a replica becomes unavailable (#53)
- Add token mechanism to call agent APIs (#55)
- Do failover when a primary becomes unavailable (#58)
- Support for Kubernetes 1.18 (#61)
0.1.1 - 2020-06-18
- Fix a build target bug (#36).
0.1.0 - 2020-06-18
- Bootstrap a vanilla MySQL cluster with no replicas (#2).