Commit Graph

58 Commits

Author SHA1 Message Date
af5d0b063f Added tests for basic auth 2024-09-20 13:28:30 +02:00
e9c1b5b858 Default galera recovery minClusterSize to 1 2024-08-23 16:40:18 +02:00
86a8104d48 Added forceClusterBootstrapInPod field 2024-07-31 10:57:19 +02:00
314e7b8426 Minor fixes and test updates 2024-06-03 12:11:19 +02:00
4800c8dd45 spec.myCnf and spec.myCnfConfigMapKeyRef fields to be mutable 2024-05-30 12:07:33 +02:00
fc0de8cf29 Opt-in password generation 2024-04-30 13:39:51 +02:00
ac0f35fe7e Added model for MaxScale metrics 2024-03-20 20:04:14 +01:00
e9ed1722b4 Bump kubernetes dependencies 2024-03-18 17:44:10 +01:00
1ca5faf899 validation: reject ist.recv_addr in providerOptions
Signed-off-by: Dawid Jakobczak <d.jakobczak@samsung.com>
2024-03-18 11:13:44 +01:00
2d7d932cd6 Ability to specify affinity and metadata to restore Job 2024-03-12 19:47:55 +01:00
d40c0b0359 Added types, defaulting and validation 2024-02-25 12:20:50 +01:00
93acbb4ff2 Support for relative minClusterSize 2024-02-21 20:04:34 +01:00
467bf3bd4d Support for galera min cluster size 2024-02-17 23:34:30 +01:00
f0e117fcb0 Set galera defaults in controller 2024-02-15 15:17:08 +01:00
f4375caf3f Using mariadb-operator image for init and agent 2024-02-14 17:52:08 +01:00
ce9a518758 Added MaxScale for MariaDB spec 2024-02-01 19:57:45 +01:00
7aa8bc4722 MaxScale webhook validation 2024-01-25 15:59:04 +01:00
a3df4b9f84 Add webhook test for root password 2024-01-10 11:42:56 +01:00
2482e50f9f Fix Typos and remove empty root password example manifest 2024-01-09 18:52:45 +01:00
6bcc26974b Add an option for ephemeral storage 2024-01-09 18:52:45 +01:00
a714f645f6 Added tests for restore types 2023-12-26 16:45:53 +01:00
dedb0f5916 Default metrics 2023-12-21 17:52:27 +01:00
df0ca22a98 Update examples 2023-12-21 17:52:27 +01:00
c3f4a91a7d Integrate PITR module with Restore Job 2023-12-19 15:19:23 +01:00
955f08a3f9 Added initContainer 2023-12-19 15:19:23 +01:00
b14eb2ebe1 Default initial password 2023-12-16 02:21:02 +01:00
365d109a2b Port defaulted 2023-12-12 14:04:55 +01:00
39a21c51bf Removed leftover licenses 2023-12-11 12:24:02 +01:00
362a09be5e Defaulting related images 2023-12-11 12:24:02 +01:00
65fa48f30a Bump agent and init images 2023-10-11 18:38:09 +03:00
3272953d91 BREAKING CHANGE: standarize image to make it look like Pod image.
See https://github.com/mariadb-operator/mariadb-operator/pull/248 for details.
2023-10-11 18:38:09 +03:00
5e8983d110 Migrate to ginkgo v2 table specs 2023-10-10 15:43:45 +03:00
46afa3df6b Bump kubernetes and ginkgo deps 2023-10-10 15:43:45 +03:00
bb42ac6cae BREAKING CHANGE: consolidate HA Services and Connections.
See #211 for details.
2023-08-30 21:46:24 +02:00
879a745d01 Align galera with replication controller 2023-08-29 22:22:06 +02:00
f88de819e0 feat(upgrade): upgrade MariaDB to 11.0.3 - https://mariadb.com/kb/en/mariadb-11-0-3-release-notes/ 2023-08-29 22:22:06 +02:00
1e92104e16 BREAKING CHANGE: align ReplicationReconciler with GaleraReconciler.
See #197 for details.
2023-08-29 22:21:32 +02:00
6f7b0d7e2a Support for custom metadata in VolumeClaimTemplates
Co-authored-by: vavrajosef <vavra.pepa@gmail.com>
2023-08-03 17:24:58 +02:00
2dfbf966d1 Support for MariaDB 11 2023-07-21 18:11:44 +02:00
73870ea820 Removed default storage classes 2023-07-16 20:35:47 +02:00
09742af304 Image made mutable to be able to upgrade 2023-07-08 20:12:09 +02:00
d247595a05 Defaulting Galera object via webhook (#148)
* Defaulting Galera object via webhook

* Enhanced support for Galera defaults allowing to disable defaulting webhook

* Bump init
2023-07-08 17:04:56 +02:00
b0fda15c0e Allow only one HA method in validation webhook 2023-07-07 17:38:30 +02:00
8902cb94a5 Multi master HA via Galera. Automatic Galera cluster recovery (#122)
* Types and scaffoling

* Galera config

* ConfigMap reconciliation

* Built galera StatefulSet

* Galera service

* Fixed replication service

* Using internal service in galera config

* Fix galera config

* Galera init container

* Publishing non ready addresses in MariaDB headless service

* Ignoring ConfigMap and Service errors during reconciliation

* Galera bootstrapping improvements

* Setting configure Galera status condition

* Update primary name

* Simpler primary name for galera

* Primary pod header

* Refactored pod reconciler to enable better extensibility

* Added pod galera reconciler

* Simplified approach and removed pod galera reconciler

* Galera crash recovery template implementation

* Refactored and documented galera flow

* Missing .PHONY

* Moved common container properties to ContainerTemplate

* Added types for galera agent

* Apply CRDs server side

* Using metrics exporter port from CRD

* Building containers from container template

* Configured sidecar agent

* Fixed agent config path

* Configured local IPs for mariadb internal

* Added log lines in initcontainer

* Imported agent client

* Disabled bootstrap via agent

* Getting galera state to determine cluster health

* Increased galera example resources

* Added galera health spec

* DR make targets

* Added galera configured condition

* Fixed quotes

* Moved replication clientset to client pkg

* Detecting galera non healthy

* Simplified galera API

* Support for command and args in container template

* Added agent graceful shutdown

* Minor improvement

* Galera state by Pod

* Bootstrapping from Pods with SafeToBootstrap

* Logging improvements

* Passing down status during recovery

* Mod tidy

* Added RBAC to delete Pods to be able to perform recovery

* Recovery by pod

* Persist galera recovery

* Primer recovery

* Increase default initialDelaySeconds and terminationGracePeriodSeconds of default galera probe

* Discarding -1 sequence numbers

* Remove return that was preventing MariaDB to become ready

* Cleanup galera recovery status

* API renamings

* Notable improvements in recovery

* Deleting Pod after bootstrapping cluster

* Renaming polling methods and contexts

* Changed log time encoder in dev

* Improved recovery status initialization

* Moved cluster recovery to its own func

* Pod recovery structure

* Dedicated loggers for cluster and pod recovery

* Removed TODO

* Added HA annotations to StatefulSet

* Moved galera health logic to a dedicated controller

* Fixed bug in recovery when passing Pod refs to goroutines

* Configured parallel pod management. Rely on the init container to do the ordered ready initial deployment

* Support for SST

* Improved galera probes

* Unify internal service for HA

* Renamed galera health to statefulset galera reconciler

* Concurrent safe clientset

* Pod recovery

* Added bootstrap pod to galera recovery status

* Removed TODO

* Added tests for Galera

* Moved HA PDB to mariadb controller

* Moved primary connection and service to mariadb controller

* Adjusted mariadb galera timeouts for test

* Deleting Pods synchronously

* Minimize SQL conns during healtchecks

* Test adjustments

* Revert "Minimize SQL conns during healtchecks"

This reverts commit fc6d10e188.

* Test adjustments

* Well defined test timeouts

* Moved galera and replication to different test suites

* Increase test timeout and verbosity

* Added recovery status tests

* All Pods during recovery must be obtain to avoid split brains

* Galera validation

* Fix debug logs

* Improved log structure

* Added galera events

* Update comment in webhook.enable helm value

* Support for opting out from galera recovery

* Tweak mariadb galera test timeouts

* Revert "Support for opting out from galera recovery"

This reverts commit d82af45216.

* Removed bash initcontainer in favor of go initcontainer

* Pod recovery notably improved

* Support for opting out from galera recovery
2023-07-04 21:53:00 +02:00
2754610193 Support for sync_binlog in replication 2023-05-22 18:53:24 +02:00
1b7060fc4f Support for gtid in replication 2023-05-22 18:09:18 +02:00
92186a4f0f Support for mutable bootstrapFrom 2023-05-13 18:04:15 +02:00
0dabeb6a64 Bump MariaDB default version to LTS 2023-05-13 13:18:52 +02:00
17cba6e890 Refactored status conditions to enable better synchronization between controllers 2023-05-06 22:08:22 +02:00
0d37958084 Drop support for physical backups, as it doesn't fit with the newest HA feature. Backup support will be refactored the future when supporting S3 compatible storage. 2023-05-06 22:08:22 +02:00