Releases: mariadb-operator/mariadb-operator
v0.0.28
Announcing the release of mariadb-operator
π¦ v0.0.28 ! A version fully loaded of new features, enhancements and bug fixes. Check out the detailed list below.
Before upgrading, be sure to consult the UPGRADE GUIDE.
Backups
- Refactor S3 storage engine to properly support prefixes: #554
- Support for backing up and restoring specific logical databases: #553
- Avoid adding
LOCK TABLES
statements to backups when Galera is enabled: #494 - Support for
ignoreGlobalPriv
inBackup
resource: #557 - Ignoring
mysql.global_priv
by default when Galera is enabled: #545
Refer to the backup documentation for further detail.
Galera
- Support for IPv6: #461
- Ability to pass extra options to
wsrep_provider_options
viaproviverOptions
: #461 - Support for
clusterMonitorInterval
in cluster recovery: #445 - Decouple cluster recovery from control plane where possible: #584
- Update Galera config when
MariaDB
request fails: #487 - Avoid DNS resolution warnings by adding
skip_name_resolve
in default configuration: #581
Refer to the Galera documentation for further detail.
MaxScale
- Dedicated
Service
to access GUI viaguiKubernetesService
: #578 - Added finalizer to
MaxScale
. Droppedmaxscale_config
table and PVCs as part of the termination logic: #517 - Configure
threads
andquery_classifier_cache_size
based on CPU and memory resources: #511 - Requeue
Secrets
if they haven't been initialized: #506 - Ensure
syncMaxConnections
is initialized before derefing the pointer: #492
Refer to the MaxScale documentation for further detail.
Metadata
- Support for
podMetadata
inMariaDB
: #521 - Support for
podMetadata
in batchJobs
: #523 - Support for
interitMetadata
andpodMetadata
inMaxScale
: #538
Refer to the metadata documentation for further detail.
Anti-Affinity
Job
and metricsPods
anti-affinity rules relative toMariaDB
: #566MaxScale
anti-affinity rules relative toMariaDB
: #568- Ability to specify
affinity
to initialRestore
Job
: #448 - Fix metrics selector to avoid clashing with
MariaDB
: #446
Refer to the HA documentation for further detail.
Password generation
Ability to declare whether the password should be generated or instead wait for a Secret
to be present eventually: #598
Refer to the configuration documentation for further detail.
Probes
Ability to partially define probes in order to configure thresholds: #509
Refer to the configuration documentation for further detail.
Private registries
Support for private registries in all CRs via imagePullSecrets
: #459
Refer to the registry documentation for further detail.
We value your feedback! If you encounter any issues or have suggestions, please open an issue on GitHub. Your input is crucial to improve mariadb-operator
π¦.
Join us on Slack: MariaDB Community Slack.
What's Changed
- Bump kind and kubernetes by @mmontes11 in #439
- Fix metrics selector to avoid clashing with
MariaDB
. Sort out anti-affinity cases where there aren't enough nodes for the exporterPod
by @mmontes11 in #446 - Ability to specify
affinity
andmetadata
to initialRestore
Job
by @mmontes11 in #448 - Support for private registries in all CRDs via
ImagePullSecrets
by @mmontes11 in #459 - Automate version examples update by @mmontes11 in #460
- Support for
clusterMonitorInterval
in galera recovery by @mmontes11 in #445 - Galera IPv6 support by @djakobczak1 in #461
- Bump dependencies by @mmontes11 in #466
- Added documentation for Galera for
providerOptions
and IPv6 by @mmontes11 in #478 - Added devcontainer to dependabot by @mmontes11 in #479
- Bump github.com/onsi/ginkgo/v2 from 2.16.0 to 2.17.0 by @dependabot in #476
- Bump github.com/sethvargo/go-envconfig from 0.9.0 to 1.0.1 by @dependabot in #475
- Bump actions/checkout from 2 to 4 by @dependabot in #467
- Bump docker/build-push-action from 2 to 5 by @dependabot in #468
- Bump actions/setup-python from 4 to 5 by @dependabot in #469
- Bump github.com/go-chi/chi/v5 from 5.0.8 to 5.0.12 by @dependabot in #470
- Bump goreleaser/goreleaser-action from 4 to 5 by @dependabot in #473
- Bump ghcr.io/devcontainers/features/kubectl-helm-minikube from 1.1.5 to 1.1.8 by @dependabot in #481
- Bump ghcr.io/devcontainers/features/docker-in-docker from 2.7.1 to 2.10.1 by @dependabot in #480
- Bump github.com/minio/minio-go/v7 from 7.0.66 to 7.0.69 by @dependabot in #474
- Bump github.com/google/uuid from 1.5.0 to 1.6.0 by @dependabot in #472
- Bump actions/setup-go from 3 to 5 by @dependabot in #471
- Enable license generation by @mmontes11 in #477
- Bump golancilint and goreleaser in github actions by @mmontes11 in #482
- Updated OLM bundle (0.0.27) by @mmontes11 in #483
- Support for
MaxScale
metrics by @mmontes11 in #485 - Reduce OLM bundle size by using a png image as icon by @mmontes11 in #486
- Update Galera config when
MariaDB
request fails by @mmontes11 in #487 - Ensure
syncMaxConnections
is initialized before derefing the pointer by @mmontes11 in #492 - Document embedded MaxScale vs Full MaxScale by @mmontes11 in #505
- Requeue
MaxScale
Secrets if they haven't been initialized by @mmontes11 in #506 - Bump azure/setup-helm from 3 to 4 by @dependabot in #504
- Bump helm/chart-testing-action from 2.3.1 to 2.6.1 by @dependabot in #503
- Bump actions/stale from 8 to 9 by @dependabot in #502
- Bump docker/setup-buildx-action from 2 to 3 by @dependabot in https://github.com...
olm-0.0.28
Update bundle
helm-chart-0.28.1
Run and operate MariaDB in a cloud native way
helm-chart-0.28.0
Run and operate MariaDB in a cloud native way
olm-0.0.27
Removed CSV version check
v0.0.27
Happy Women's day! π©π»βπ»
π This release increases the spectrum of compatible MariaDB images and improves the integration with service mesh projects like Istio.
π We have also introduced some reliability improvements in our Galera support and fixed some regressions reported by our amazing community.
π οΈ If you haven't yet migrated from v0.0.26
, please do so before upgrading to v0.0.27
:
π€ We value your feedback! If you encounter any issues or have suggestions, please open an issue on GitHub. Your input is crucial to improve mariadb-operator
π¦.
π₯ Join us on Slack: MariaDB Community Slack.
What's Changed
- Embed mariadb-docker
entrypoint.sh
in operator binary. πIncrease the spectrum of supported imagesπ by @mmontes11 in #433 - Fix exporter
Deployment
Affinity
by @mmontes11 in #435 - Support for extra metadata in Galera init
Job
. Galera compatibility with service mesh like Istio by @mmontes11 in #434 - Updating
wsrep_node_address
even ifMariaDB
request fails by @mmontes11 in #436 - Refactor S3 to make
s3.tls.caSecretKeyRef
optional and empty by default by @mmontes11 in #437 - Added
v0.0.27
release notes by @mmontes11 in #438
Full Changelog: v0.0.26...v0.0.27
helm-chart-0.27.0
Run and operate MariaDB in a cloud native way
v0.0.26
π¦ In this release, we have considerably shaped our CRD APIs to eventually converge to a v1beta1
version. We have introduced several new fields with brand new functionallity, each of them documented in the respective PRs linked below alongside the relevant API reference.
ποΈ We have significantly changed the MariaDB Galera architecture to improve its overall stability and robustness:
- Liveness and readiness probes are now delegated to the
agent
. This enables better Galera cluster recovery and flexibility to introduce new features. agent
andinit
images are now part of themariadb-operator
glued CLI.- Introduction of a Galera init
Job
to execute initialization tasks prior to provisioning theStatefulSet
.
βοΈ The automated Galera cluster recovery is now more predictable, robust and configurable. The user may now specify a minClusterSize
, either as an absolute number of replicas (2
) or relative (50%
), that will tell the operator when the cluster is considered unhealthy so it can perform the recovery process after a given period of time defined by clusterHealthyTimeout
. Refer to the Galera documentation for further detail.
πΎ Some more new features, now related to the storage: The operator is now able to resize the volumes used by MariaDB
without affecting its availability, enabling smooth scaling of both MariaDB
storage capacity and the volume of data stored by your applications. Furthermore, we've streamlined our storage API to make it ridiculously simple, take a look at the storage documentation.
π To enable better integrations with cloud providers and other CNCF projects, we have introduced support for inheritMetadata
and serviceAccountName
fields in the Backup
, Restore
and SqlJob
resources. This allows you to use dedicated metadata (i.e. labels and annotations) and ServiceAccounts
across all our batch Job
and CronJob
resources.
π οΈ To accomplish this, we've introduced some BREAKING CHANGES, please take a look at the upgrade guide. We've provided a migration script to facilitate the transition:
π€ We value your feedback! If you encounter any issues or have suggestions, please open an issue on GitHub. Your input is crucial to improve mariadb-operator
π¦.
π₯ Join us on Slack: MariaDB Community Slack.
What's Changed
- Reconcile auth as first reconciliation step for MaxScale by @mmontes11 in #377
- Added adopters list by @mmontes11 in #378
- Add Γnix to the Adopters list by @kvaps in #379
- Add Glasskube to Adopters list by @pmig in #382
- BREAKING CHANGE: Add
init
andagent
tomariadb-operator
glued CLI by @mmontes11 in #384 - Reduce galera probe initial delay seconds by @mmontes11 in #385
- Refactor Galera defaults by @mmontes11 in #386
- Delegate probes to Galera agent by @mmontes11 in #388
- Enhanced Galera cluster recovery by @mmontes11 in #389
- Support for Galera
minClusterSize
by @mmontes11 in #390 - Remove control plane dependency in Galera agent probes and Galera init by @mmontes11 in #391
- Support for
availableWhenDonor
by @mmontes11 in #392 - BREAKING CHANGE: Support for
reuseStorageVolume
by @mmontes11 in #394 - Support for Galera with enterprise image by @mmontes11 in #396
- Embed
PodTemplate
in theExporter
struct by @gg-kialo in #397 - Support for
galeraLibPath
by @mmontes11 in #398 - Improved bootstrap pod initialization logs by @mmontes11 in #399
- Getting Pod IP from environment instead of resolving DNS by @mmontes11 in #400
- Setup enterprise tests by @mmontes11 in #401
- Support for relative
minClusterSize
by @mmontes11 in #402 - Added MaxScale chown init container. Support for MaxScale init containers by @mmontes11 in #403
- Avoid setting not found error when provisioning
MaxScale
together withMariaDB
by @mmontes11 in #404 - Add trailing slash to S3 prefix if not provided by the user by @mmontes11 in #405
- BREAKING CHANGE: Support storage resizing via the new
storage
field by @mmontes11 in #407 - Validate storage size mismatch by @mmontes11 in #409
- Validate storage size increase and decrease by @mmontes11 in #410
- Allow custom labels on certmanager secret template by @jescarri in #395
- Support to configure PodAntiAffinity via
enableAntiAffinity
by @mmontes11 in #411 - Rename
affinity
type to avoid conflicts with the embedded corev1affinity
type by @mmontes11 in #412 - Propagate
MariaDB
inheritMetadata
toExporter
Pod
template by @mmontes11 in #413 - Support for
inheritMetadata
in jobs by @mmontes11 in #414 - Embedded
ContainerTemplate
andPodTemplate
in jobs. Ditched job builder by @mmontes11 in #415 - BREAKING CHANGE: Ability to specify a
ServiceAccount
inBackup
,Restore
andSqlJob
viaserviceAccountName
by @mmontes11 in #416 - BREAKING CHANGE: Rename API group by @mmontes11 in #418
serviceAccountName
to be inmutableinit by @mmontes11 in #419- Update examples by @mmontes11 in #420
v0.0.26
release docs by @mmontes11 in #422- Galera init job by @mmontes11 in #423
- Update
Job
RBAC by @mmontes11 in #426 - Default
MaxScale
fsGroup by @mmontes11 in #427 v0.0.26
upgrade guide by @mmontes11 in #429V0.0.26
release notes by @mmontes11 in #430
New Contributors
- @pmig made their first contribution in #382
- @gg-kialo made their first contribution in #397
- @jescarri made their first contribution in #395
Full Changelog: v0.0.25...v0.0.26
helm-chart-0.26.0
Run and operate MariaDB in a cloud native way
v0.0.25
ιΎεΉ΄εΏ«δΉπ²! (Happy Year of the Dragonπ²!)
π In the very first release of the year we are excited to announce that we are introducing support for β¨MaxScaleβ¨: a sophisticated database proxy, router, and load balancer designed specifically for and by MariaDB. It provides a range of features that ensure optimal high availability:
- Query-based routing: Transparently route write queries to the primary nodes and read queries to the replica nodes.
- Connection-based routing: Load balance connections between multiple servers.
- Automatic primary failover based on MariaDB internals.
- Replay pending transactions when a server goes down.
- Support for Galera and Replication.
Please take a look at the MaxScale docs for getting started with it.
π¨ We have also introduced support for provisioning MariaDBs with empty root password and ephemeral storage, take a look at this example. This has multiple use cases, such as provisioning MariaDB instances for your CI tests without hassle. Kudos to our new contributor @Hoega for stepping in and contributing with multiple PRs! π
πͺ£ Support for prefixes in the S3 storage by @addreas, another new contributor! π
π Multiple improvements made by our amazing community. Take a look at the changelog below.
π€ We value your feedback! If you encounter any issues or have suggestions, please open an issue on GitHub. Your input is crucial to improve mariadb-operator
π¦.
π₯ Join us on Slack: MariaDB Community Slack.
What's Changed
- API reference docs by @mmontes11 in #326
- Add feature to allow empty root password by @Hoega in #328
- Bump golang.org/x/crypto from 0.16.0 to 0.17.0 by @dependabot in #332
- Add an option for ephemeral storage by @Hoega in #331
- Add a webhook validation for root password by @Hoega in #334
- In local development, report when local CIDR for KIND cannot be found by @melledouwsma in #336
- Add a priorityClassName option by @Hoega in #337
- Add an option to select a serviceAccount by @Hoega in #339
- Add an option to specify topologySpreadConstraints by @Hoega in #342
- Add prefix for S3 backup/restore by @addreas in #338
- Set securityContext and podSecurityContext for Backup/Restore/Sql Jobs by @addreas in #335
- Add args option to restore jobs by @Hoega in #347
- Use primary service when HA enabled in SQL reconciler by @mmontes11 in #354
- Generate
Users
andGrants
forMaxScale
by @mmontes11 in #355 - Using custom password generator in
Secret
reconciler by @mmontes11 in #357 - MaxScale auth to be inmutable by @mmontes11 in #358
- Remove helper to delete default admin by @mmontes11 in #360
- Enable ginkgolinter by @nunnatsa in #361
- Integrate
MaxScale
withMariaDB
by @mmontes11 in #359 - Update CONTRIBUTING.md by @mariadb-pieterhumphrey in #366
- Run ginkgo tests in parallel by @mmontes11 in #364
- Support for
Connections
inMaxScale
by @mmontes11 in #369 MaxScale
documentation by @mmontes11 in #370- Improved
MaxScale
error message whenMariaDB
not found by @mmontes11 in #371 - Requeue SQL resources when MariaDB is unhealthy by @mmontes11 in #372
- Release v0.0.25 by @mmontes11 in #373
New Contributors
- @Hoega made their first contribution in #328
- @dependabot made their first contribution in #332
- @addreas made their first contribution in #338
- @nunnatsa made their first contribution in #361
- @mariadb-pieterhumphrey made their first contribution in #366
Full Changelog: v0.0.24...v0.0.25