Skip to content

Releases: aiven/aiven-operator

v0.35.0

20 Jan 16:20
db08d89

Choose a tag to compare

  • Upgraded controller-runtime to v0.16.6: This version supports Kubernetes v0.28 and requires Go 1.20+. See compatibility matrix for details.
  • Change MySQL field userConfig.binlog_retention_period: maximum 6048009007199254740991
  • Add MySQL field userConfig.migration.dump_tool, type string: Experimental! Tool to use for database
    dump and restore during migration. Default: mysqldump
  • Remove Redis kind and controller from the operator: use Valkey instead for caching services, since Redis has reached end of life (EOL)
  • Add KafkaConnect field userConfig.sasl_oauthbearer_allowed_urls, type array: List of allowed
    URLs for SASL OAUTHBEARER authentication
  • Add Kafka field userConfig.letsencrypt_sasl, type boolean: Use a Let's Encrypt certificate authority
    (CA) for Kafka SASL authentication. (Default: False)
  • Add Kafka field userConfig.sasl_oauthbearer_allowed_urls, type array: List of allowed URLs for
    SASL OAUTHBEARER authentication
  • Add PostgreSQL field userConfig.enable_ha_replica_dns, type boolean: Creates a dedicated read-only
    DNS that automatically falls back to the primary if standby nodes are unavailable
  • Add OpenSearch field userConfig.opensearch.ml_commons_model_access_control_enabled, type boolean:
    Enable or disable model access control for ML Commons
  • Add OpenSearch field userConfig.opensearch.ml_commons_native_memory_threshold, type integer:
    Native memory threshold percentage for ML Commons
  • Add OpenSearch field userConfig.opensearch.ml_commons_only_run_on_ml_node, type boolean: Enable
    or disable running ML Commons tasks only on ML nodes
  • Add MySQL field userConfig.migration.reestablish_replication, type boolean: Skip dump-restore
    part and start replication
  • Change Valkey field userConfig.valkey_io_threads: maximum 32256
  • Add Kafka field userConfig.backup_interval_hours, type integer: Interval in hours between automatic
    backups. Minimum value is 3 hours
  • Add Kafka field userConfig.backup_retention_days, type integer: Number of days to retain automatic
    backups
  • Change Kafka field userConfig.kafka_diskless.enabled: immutable true
  • Add PostgreSQL field userConfig.backup_interval_hours, type integer: Interval in hours between
    automatic backups. Minimum value is 3 hours
  • Add PostgreSQL field userConfig.backup_retention_days, type integer: Number of days to retain
    automatic backups
  • ClickhouseUser: continuous reconciliation now automatically re-creates Clickhouse users that are deleted directly in Aiven (outside Kubernetes).

v0.34.0

21 Oct 15:46
15bc803

Choose a tag to compare

  • Change service version fields: removed enum validation from userConfig
    (affects AlloyDBOmni.userConfig.alloydbomni_version,
    Cassandra.userConfig.cassandra_version, Flink.userConfig.flink_version,
    MySQL.userConfig.mysql_version, OpenSearch.userConfig.opensearch_version,
    Redis.userConfig.redis_version, PostgreSQL.userConfig.pg_version, Kafka.userConfig.kafka_version)
  • Change ServiceIntegration: operator now adopts existing integrations instead of failing with conflict
  • Fix PostgreSQL: added retry logic for errors during upgrade task
  • Add AlloyDBOmni field userConfig.node_count, type integer: Number of nodes for the service
  • Add Kafka field userConfig.kafka_diskless, type object: Kafka Diskless configuration values
  • Change MySQL field userConfig.mysql.innodb_log_buffer_size: maximum 42949672954294967296
  • Add OpenSearch field userConfig.jwt, type object: OpenSearch JWT Configuration
  • Change OpenSearch field userConfig.opensearch.knn_memory_circuit_breaker_limit: minimum 30
  • Add PostgreSQL field userConfig.node_count, type integer: Number of nodes for the service
  • Add PostgreSQL field userConfig.pg.io_combine_limit, type integer: EXPERIMENTAL: Controls the
    largest I/O size in operations that combine I/O in 8kB units
  • Add PostgreSQL field userConfig.pg.io_max_combine_limit, type integer: EXPERIMENTAL: Controls
    the largest I/O size in operations that combine I/O in 8kB units, and silently limits the user-settable
    parameter io_combine_limit
  • Add PostgreSQL field userConfig.pg.io_max_concurrency, type integer: EXPERIMENTAL: Controls the
    maximum number of I/O operations that one process can execute simultaneously
  • Add PostgreSQL field userConfig.pg.io_method, type string: EXPERIMENTAL: Controls the maximum
    number of I/O operations that one process can execute simultaneously
  • Add PostgreSQL field userConfig.pg.io_workers, type integer: EXPERIMENTAL: Number of IO worker
    processes, for io_method=worker. Version 18 and up only
  • Change PostgreSQL field userConfig.pg.max_connections: maximum 60000
  • Remove OpenSearch field userConfig.custom_keystores, type array: the field has invalid schema definition
  • Add KafkaTopic field config.diskless_enable, type boolean: Indicates whether diskless should
    be enabled
  • Remove KafkaTopic field config.inkless_enable, type boolean: Indicates whether inkless should
    be enabled

v0.33.1

08 Oct 09:46
ef86017

Choose a tag to compare

  • Fix PostgreSQL: resolved panic during upgrade check task fails

v0.31.1

08 Oct 15:34
000360f

Choose a tag to compare

  • Fix PostgreSQL: resolved panic during upgrade check task fails

v0.33.0

30 Sep 14:03
ece4de8

Choose a tag to compare

  • DEPRECATION: AlloyDBOmni is deprecated and entering its end-of-life cycle. See https://aiven.io/docs/platform/reference/end-of-life for details
  • Add Kafka field userConfig.kafka.log_message_timestamp_after_max_ms, type integer: The maximum
    difference allowed between the timestamp when a broker receives a message and the timestamp specified
    in the message
  • Add Kafka field userConfig.kafka.log_message_timestamp_before_max_ms, type integer: The maximum
    difference allowed between the timestamp when a broker receives a message and the timestamp specified
    in the message
  • Add OpenSearch field userConfig.custom_keystores, type array: Allow to register custom keystores
    in OpenSearch
  • Change OpenSearch field userConfig.opensearch_version: enum add 2.19

v0.32.0

04 Sep 12:00
6ec8448

Choose a tag to compare

  • BREAKING CHANGE: Removed unprefixed keys from ServiceUser secrets to resolve environment variable collisions. Previously ServiceUser secrets contained both prefixed keys (e.g., SERVICEUSER_HOST, SERVICEUSER_PASSWORD) and unprefixed keys (e.g., HOST, PASSWORD). The unprefixed keys have been removed.
  • Important: Status conditions Create, Update and CreateOrUpdate (all cases) have been consolidated into CreatedOrUpdated due to limitations in reliably determining operation type
  • Added secret watcher controller to automatically update resources when their connInfoSecretSource secrets change
  • Fix ServiceUser: retry API calls when password is not received in response
  • Add AlloyDBOmni field userConfig.pg.max_sync_workers_per_subscription, type integer: Maximum
    number of synchronization workers per subscription. The default is 2
  • Change AlloyDBOmni field userConfig.pg.max_logical_replication_workers: maximum 64256
  • Change AlloyDBOmni field userConfig.pg.max_replication_slots: maximum 64256
  • Change AlloyDBOmni field userConfig.pg.max_worker_processes: maximum 96288
  • Add MySQL field userConfig.mysql_incremental_backup, type object: MySQL incremental backup configuration
  • Add PostgreSQL field userConfig.pg.max_connections, type integer: Sets the PostgreSQL maximum
    number of concurrent connections to the database server
  • Add PostgreSQL field userConfig.pg.max_sync_workers_per_subscription, type integer: Maximum number
    of synchronization workers per subscription. The default is 2
  • Change PostgreSQL field userConfig.pg.max_logical_replication_workers: maximum 64256
  • Change PostgreSQL field userConfig.pg.max_replication_slots: maximum 64256
  • Change PostgreSQL field userConfig.pg.max_worker_processes: maximum 96288
  • Change ServiceIntegrationEndpoint field prometheus.basic_auth_password: maxLength 64256
  • Change MySQL field userConfig.binlog_retention_period: maximum 86400604800

v0.31.0

25 Jul 13:12
ee09b20

Choose a tag to compare

  • KafkaTopic: added concurrent reconcilers and optimized API calls
  • Upgraded HPA from deprecated autoscaling/v2beta1 to stable autoscaling/v2 API
  • Added ServiceUser field connInfoSecretSource: Allows reading passwords from existing secrets for credential management. Supports setting passwords for new users and existing users
  • Change AlloyDBOmni field userConfig.pg.max_wal_senders: maximum 64256
  • Add Kafka field userConfig.single_zone.availability_zone, type string: The availability zone
    to use for the service. This is only used when enabled is set to true
  • Change PostgreSQL field userConfig.pg.max_wal_senders: maximum 64256
  • Add ClickhouseUser field connInfoSecretSource: Allows reading passwords from existing secrets for credential management. Supports setting passwords for new users and existing users

v0.30.0

03 Jul 12:41
8fa4575

Choose a tag to compare

  • Added powered field (default: true) to control service power state. When false, the service is powered off.
    Note: Kafka services without backups will lose topic data on power off. See field description for more information.
  • Completely replace the old go client with the new one, which is generated from the OpenAPI spec
  • Change PostgreSQL field userConfig.pg_version: enum remove 12
  • Add KafkaTopic field config.inkless_enable, type boolean: Indicates whether inkless should be enabled
  • Add KafkaTopic field config.unclean_leader_election_enable, type boolean: Indicates whether to
    enable replicas not in the ISR set to be elected as leader as a last resort, even though doing so
    may result in data loss
  • Refactor KafkaTopic: replace HTTP client with code-generated one to improve maintainability and type safety
  • Add kind: KafkaNativeACL. Creates and manages Kafka-native access control lists (ACLs) for an Aiven for Apache Kafka® service.
  • Add key OPENSEARCH_URI to OpenSearch service secrets: Contains the OpenSearch service URI.
  • Change KafkaSchema fields schemaType and subjectName to be immutable since these fields cannot be modified after creation in the Kafka Schema Registry API
  • Improve KafkaSchema controller: optimize polling and add better error handling
  • Improve KafkaTopic: better handle API 5xx errors.
  • Improve KafkaConnector: better handle API 404 and 5xx errors.
  • Fix webhooks containerPort configuration not being properly applied in deployment template
  • Change AlloyDBOmni, Cassandra, Clickhouse, Flink, Grafana, KafkaConnect, Kafka, MySQL, OpenSearch, PostgreSQL, Redis, Valkey field userConfig.ip_filter: maxItems 20488000
  • Add Clickhouse field userConfig.enable_ipv6, type boolean: Register AAAA DNS records for the
    service, and allow IPv6 packets to service ports
  • Add OpenSearch field userConfig.opensearch.cluster.filecache.remote_data_ratio, type number:
    Defines a limit of how much total remote data can be referenced as a ratio of the size of the disk
    reserved for the file cache
  • Add OpenSearch field userConfig.opensearch.cluster.remote_store, type object: no description
  • Add OpenSearch field userConfig.opensearch.enable_snapshot_api, type boolean: Enable/Disable
    snapshot API for custom repositories, this requires security management to be enabled
  • Add OpenSearch field userConfig.opensearch.node.search.cache.size, type string: Defines a limit
    of how much total remote data can be referenced as a ratio of the size of the disk reserved for
    the file cache
  • Add OpenSearch field userConfig.opensearch.remote_store, type object: no description

v0.29.0

29 Apr 09:19
84f44a5

Choose a tag to compare

  • Added retry logic to the ServiceIntegration controller
  • Made ConnectionPool username field optional, allowing connection pools to use the credentials of the connecting client instead of a fixed service user
  • Add Kafka field userConfig.kafka_rest_config.consumer_idle_disconnect_timeout, type integer:
    Specifies the maximum duration (in seconds) a client can remain idle before it is deleted
  • Change ServiceIntegration field clickhouseKafka.tables: maxItems 100400
  • Add Valkey field userConfig.enable_ipv6, type boolean: Register AAAA DNS records for the service,
    and allow IPv6 packets to service ports
  • Add Valkey field userConfig.valkey_active_expire_effort, type integer: Valkey reclaims expired
    keys both when accessed and in the background
  • Add OpenSearch field userConfig.azure_migration.readonly, type boolean: Whether the repository
    is read-only
  • Add OpenSearch field userConfig.gcs_migration.readonly, type boolean: Whether the repository
    is read-only
  • Add OpenSearch field userConfig.opensearch.disk_watermarks, type object: Watermark settings
  • Add OpenSearch field userConfig.s3_migration.readonly, type boolean: Whether the repository is
    read-only
  • Add AlloyDBOmni field userConfig.pgaudit, type object: System-wide settings for the pgaudit extension
  • Add Clickhouse field userConfig.backup_hour, type integer: The hour of day (in UTC) when backup
    for the service is started
  • Add Clickhouse field userConfig.backup_minute, type integer: The minute of an hour when backup
    for the service is started
  • Add Kafka field userConfig.kafka_connect_plugin_versions, type array: The plugin selected by the user
  • Change Kafka field userConfig.kafka_version: enum add 3.9
  • Add OpenSearch field userConfig.opensearch.enable_searchable_snapshots, type boolean: Enable
    searchable snapshots
  • Change PostgreSQL field userConfig.pgaudit.log_level: enum add debug1, debug2, debug3, debug4,
    debug5, info, log, notice

v0.28.0

17 Feb 15:00
6c64720

Choose a tag to compare

  • Add kind: AlloyDBOmni
  • Deprecate Redis: use Valkey instead. Please follow these instructions to upgrade your service to Valkey
  • Deprecate Cassandra, see Aiven platform end-of-life policy.
  • Change Cassandra field userConfig.ip_filter: maxItems 10242048
  • Change Clickhouse field userConfig.ip_filter: maxItems 10242048
  • Change Flink field userConfig.custom_code: immutable true
  • Change Flink field userConfig.ip_filter: maxItems 10242048
  • Add Grafana field userConfig.dashboard_scenes_enabled, type boolean: Enable use of the Grafana
    Scenes Library as the dashboard engine. i.e
  • Change Grafana field userConfig.ip_filter: maxItems 10242048
  • Add KafkaConnect field userConfig.plugin_versions, type array: The plugin selected by the user
  • Change KafkaConnect field userConfig.ip_filter: maxItems 10242048
  • Change Kafka field userConfig.ip_filter: maxItems 10242048
  • Change MySQL field userConfig.ip_filter: maxItems 10242048
  • Add OpenSearch field userConfig.opensearch.cluster.search.request.slowlog, type object
  • Add OpenSearch field userConfig.opensearch.enable_remote_backed_storage, type boolean: Enable
    remote-backed storage
  • Change OpenSearch field userConfig.ip_filter: maxItems 10242048
  • Change PostgreSQL field userConfig.ip_filter: maxItems 10242048
  • Change Redis field userConfig.ip_filter: maxItems 10242048
  • Change ServiceIntegration field logs.elasticsearch_index_prefix: pattern ^[a-z0-9][a-z0-9-_.]+$
  • Change Valkey field userConfig.ip_filter: maxItems 10242048
  • Add Valkey field userConfig.frequent_snapshots, type boolean: When enabled, Valkey will create
    frequent local RDB snapshots
  • Change OpenSearch field userConfig.opensearch.auth_failure_listeners.internal_authentication_backend_limiting.allowed_tries:
    maximum 214748364732767
  • Change OpenSearch field userConfig.opensearch.auth_failure_listeners.ip_rate_limiting: deprecated
  • Add Database field databaseName type string: DatabaseName is the name of the database to be created.