# Deprecated Features

> For the complete documentation index, see [llms.txt](https://docs.redpanda.com/llms.txt). Component-specific: [streaming-full.txt](https://docs.redpanda.com/streaming-full.txt)

---
title: Deprecated Features
latest-redpanda-tag: v25.3.11
latest-console-tag: v3.7.3
latest-operator-version: v26.1.4
# EOL = End-of-Life (support lifecycle status)
page-is-nearing-eol: "false"
page-is-past-eol: "false"
page-eol-date: November 19, 2026
latest-connect-version: 4.93.0
docname: deprecated/index
page-component-name: streaming
page-version: "25.3"
page-component-version: "25.3"
page-component-title: Streaming
page-relative-src-path: deprecated/index.adoc
page-edit-url: https://github.com/redpanda-data/docs/edit/v/25.3/modules/upgrade/pages/deprecated/index.adoc
description: See a list of deprecated features in Redpanda releases and plan necessary upgrades or modifications.
page-git-created-date: "2023-08-04"
page-git-modified-date: "2025-12-30"
support-status: supported
---

<!-- Source: https://docs.redpanda.com/streaming/25.3/upgrade/deprecated.md -->

This index helps you to identify deprecated features in Redpanda releases and plan necessary upgrades or modifications.

## [](#redpanda-features)Redpanda features

| Deprecated in | Feature | Details |
| --- | --- | --- |
| 25.3.1 | The following configuration properties:kafka_memory_batch_size_estimate_for_fetchlog_message_timestamp_alert_after_mslog_message_timestamp_alert_before_msraft_recovery_default_read_size | These properties have been marked as deprecated and will be removed in a future release.Replacements:log_message_timestamp_alert_after_ms: Use log_message_timestamp_after_max_ms to define the maximum allowable timestamp difference for records with timestamps later than the broker’s timestamp.log_message_timestamp_alert_before_ms: Use log_message_timestamp_before_max_ms to define the maximum allowable timestamp difference for records with timestamps earlier than the broker’s timestamp.kafka_memory_batch_size_estimate_for_fetch and raft_recovery_default_read_size have no replacements. Remove them from your configuration. |
| 25.3.1 | The following TLSv1.2 cipher suites:AES256-GCM-SHA384AES256-CCMAES128-GCM-SHA256ECDHE-RSA-AES128-SHAECDHE-RSA-AES256-SHAECDHE-ECDSA-AES256-SHAAES128-CCMECDHE-ECDSA-AES128-SHAAES256-SHAAES128-SHAThe following TLSv1.3 cipher suites:TLS_AES_128_CCM_8_SHA256 | Redpanda has deprecated these cipher suites in accordance with security policy guidelines and now defaults to a more secure set of cipher suites provided by OpenSSL. If your Kafka API, Admin API, HTTP Proxy, or Schema Registry clients rely on any of the deprecated cipher suites, update them to use more secure alternatives. These cipher suites also apply to services that Redpanda connects to, such as S3.You can configure available cipher suites by specifying tls_v1_2_cipher_suites or tls_v1_3_cipher_suites cluster properties in OpenSSL 3.0 format. |
| 25.3.4 | log_compaction_disable_tx_batch_removal | Use log_compaction_tx_batch_removal_enabled instead. Important: The new property has inverted logic. Set to true to enable transactional batch removal (opposite of the deprecated property). |
| 25.1.1 | Throughput throttling configuration:kafka_quota_balancer_min_shard_throughput_bpskafka_quota_balancer_min_shard_throughput_ratiokafka_quota_balancer_node_period_mskafka_quota_balancer_window_mskafka_throughput_throttling_v2 | Use the broker-wide throughput limit properties. |
| 24.2.1 | Client throughput quota cluster configuration:kafka_client_group_byte_rate_quotakafka_client_group_fetch_byte_rate_quotatarget_quota_byte_ratetarget_fetch_quota_byte_ratekafka_admin_topic_api_rate | Use rpk cluster quotas to manage client throughput limits based on the Kafka API. |
| 24.1.1 | raft_flush_timer_interval_ms | Use raft_replica_max_flush_delay_ms instead. This configuration enforces a maximum delay since the last flush (timer-based flush), whereas the deprecated property controlled how often a partition checked for pending flush bytes. Because the semantics differ, review and adjust your values as needed. |
| 23.3.2 | space_management_enable_override | This property was a workaround in an older version of Redpanda. It is no longer required and the property is ignored. |
| 23.3.1 | delete_retention_ms | Use log_retention_ms instead. |
| 23.2.12 | partition_autobalancing_movement_batch_size_bytes | Use partition_autobalancing_concurrent_moves instead. |
| 23.2.1 | Cluster and Redpanda Console custom resources | Use the Redpanda resource instead. |
| 22.2.1 | health_monitor_tick_interval | No longer required. Previously, health refreshes were triggered based on this interval, potentially leading to scenarios where stale health metadata was accessed after a leadership change. The revised mechanism triggers a health refresh only when the controller leader’s health metadata becomes stale. Now, whenever a health report is requested, Redpanda checks the age of the metadata. If stale, a refresh request is dispatched to contact the leader directly or to gather fresh information from the cluster. This change ensures that health metadata remains accurate, eliminating unnecessary periodic checks. |

## [](#rpk-commands)rpk commands

The following `rpk` commands have been modified or have had flag updates.

### [](#renames)Renames

| Deprecated in | Feature | Details |
| --- | --- | --- |
| 23.3.1 | rpk cluster storage recovery | Use rpk cluster storage restore instead. You can still use rpk cluster storage recovery as an alias. |
| 23.2.1 | rpk cluster partitions movement | Use rpk cluster partitions move instead. This also applies to rpk cluster partitions movement status and rpk cluster partitions movement cancel. |
| 23.2.1 | rpk cluster partitions movement cancel | Use rpk cluster partitions move-cancel instead. |
| 23.2.1 | rpk cluster partitions movement status | Use rpk cluster partitions move-status instead. |
| 23.3.9 | rpk cloud auth create | This command has been fully deprecated. rpk cloud auth fully manages authentication fields now. |
| 23.3.9 | rpk cloud auth edit | This command has been fully deprecated. rpk cloud auth fully manages authentication fields now. |
| 23.3.9 | rpk cloud auth rename to | This command has been fully deprecated. rpk cloud auth fully manages authentication fields now. |

### [](#flag-changes)Flag changes

| Deprecated in | Flags | Used in | Details |
| --- | --- | --- | --- |
| 23.2.1 | --admin-api-tls-cert--admin-api-tls-enabled--admin-api-tls-key--admin-api-tls-truststore--brokers--config--password--sasl-mechanism--tls-cert--tls-enabled--tls-key--tls-truststore--user | rpk security aclrpk clusterrpk topicrpk debugrpk grouprpk redpanda | Security flags have been moved into the global -X flag. While the old flags still work, its recommended that you use the new flag. See rpk -X for details. |
| 23.2.1 | --client-id--client-secret | rpk cloud byoc install] | Use the -X flag instead. |
| 23.3.1 | --topic-name-pattern | rpk cluster storage recovery start |  |
| 23.2.1 | --datasource--job-name--metrics-endpoint | rpk generate grafana dashboard | Use --dashboard instead. While the old flags still work, its recommended that you use the new flag. |
Configuration flags deprecated by -X options

Prior to `rpk` supporting the `-X` flag, each common configuration option was itself a configurable flag. The following table lists the deprecated flags and their corresponding properties, environment variables, and configuration file settings.

| Property | Deprecated Flag | Deprecated Configuration File Field | Supported -X Flag |
| --- | --- | --- | --- |
| Redpanda Brokers | --brokers | rpk.kafka_api.brokers | brokers |
| Admin API | --api-urls | rpk.admin_api.addresses | admin.hosts |
| Redpanda TLS Key | --tls-key | rpk.kafka_api.tls.key_file | tls.key |
| Redpanda TLS Cert | --tls-cert | rpk.kafka_api.tls.cert_file | tls.cert |
| Redpanda TLS Truststore | --tls-truststore | rpk.kafka_api.tls.truststore_file | tls.ca |
| Redpanda SASL Mechanism | --sasl-mechanism | rpk.kafka_api.sasl.type | sasl.mechanism |
| Redpanda SASL Username | --user | rpk.kafka_api.sasl.user | user |
| Redpanda SASL Password | --password | rpk.kafka_api.sasl.password | pass |
| Redpanda Admin API TLS Key | --admin-api-tls-key | rpk.admin_api.tls.key_file | admin.tls.key |
| Redpanda Admin API TLS Cert | --admin-api-tls-cert | rpk.admin_api.tls.cert_file | admin.tls.cert |
| Redpanda Admin API TLS Truststore | --admin-api-tls-truststore | rpk.admin_api.tls.truststore_file | admin.tls.ca |

### [](#environment-variables)Environment variables

`REDPANDA_*` environment variables for rpk commands are deprecated. All `REDPANDA_*` variables have been replaced by `RPK_*` variables with the same suffix. For example, `REDPANDA_BROKERS` is now `RPK_BROKERS`.

## [](#redpanda-console-configuration)Redpanda Console configuration

This section lists all deprecated configuration options and features related to Redpanda Console. Review these deprecations and update your configurations accordingly to ensure compatibility with v3.0.0 and beyond.

See [Migrate to Redpanda Console v3.0.0](https://docs.redpanda.com/streaming/25.3/migrate/console-v3/).

| Deprecated in | Feature | Details |
| --- | --- | --- |
| v3.0.0 | Plain login provider | The plain login provider defined under the login.plain configuration is no longer supported. Use a Redpanda SASL/SCRAM user or OIDC authentication instead. |
| v3.0.0 | login stanza | The login stanza has been replaced by the authentication stanza. Update your configuration to use the new authentication block. |
| v3.0.0 | login.jwtSecret | The field login.jwtSecret has been renamed to authentication.jwtSigningKey to reflect its purpose more accurately. |
| v3.0.0 | Group-based authorization through OIDC | Group-based authorization (such as GitHub team synchronization or Keycloak group sync) is no longer supported. |
| v3.0.0 | Nested Schema Registry configuration | The Schema Registry configuration is no longer nested under the kafka stanza. Instead, configure the Schema Registry using the new top-level schemaRegistry stanza. |
| v3.0.0 | External role bindings | Role bindings are no longer configured in a separate file or within the deprecated enterprise stanza. They must now be defined under the authorization.roleBindings stanza in your main configuration file. |
| v3.0.0 | kafka.protobuf, kafka.cbor, kafka.messagePack | These serialization/deserialization configurations have been consolidated under a new top-level serde stanza. |
| v3.0.0 | kafka.protobuf.schemaRegistry | This configuration has been deprecated. Use the top-level schemaRegistry stanza instead. |
| v3.0.0 | connect | The configuration block connect has been renamed to kafkaConnect to avoid ambiguity with Redpanda Connect. |
| v3.0.0 | console.maxDeserializationPayloadSize | This setting has been moved into the new serde stanza to centralize deserialization settings. |

## [](#kubernetes)Kubernetes

| Feature | Deprecated in | Details |
| --- | --- | --- |
| Support for multiple Redpanda Operator instances | Operator v25.1.x | Deploying multiple instances of the Redpanda Operator in a single Kubernetes cluster is deprecated as of v25.1.x. Only one Operator instance per cluster is supported. See Deploy Redpanda for Production in Kubernetes. |
| The NodeWatcher and Decommission controllers. | Helm chart v5.9.21 | Use BrokerDecommissioner or the PVCUnbinder sidecars instead. |
| Migration path from the deprecated Cluster and Redpanda Console custom resources. | Operator v2.2.3-24.2.x | The deprecated Cluster and Redpanda Console custom resources are no longer migrated to the latest version. |

## [](#configuration-properties)Configuration properties

This is an exhaustive list of all the deprecated properties.

### [](#broker-properties)Broker properties

-   `coproc_supervisor_server`

-   `dashboard_dir`

-   `enable_central_config`


### [](#cluster-properties)Cluster properties

-   `cloud_storage_cache_trim_carryover_bytes`

-   `cloud_storage_disable_metadata_consistency_checks`

-   `cloud_storage_max_materialized_segments_per_shard`

-   `cloud_storage_max_partition_readers_per_shard`

-   `cloud_storage_reconciliation_ms`

-   `coproc_max_batch_size`

-   `coproc_max_inflight_bytes`

-   `coproc_max_ingest_bytes`

-   `coproc_offset_flush_interval_ms`

-   `datalake_disk_space_monitor_interval`

-   `enable_admin_api`

-   `enable_auto_rebalance_on_node_add`

-   `enable_coproc`

-   `find_coordinator_timeout_ms`

-   `full_raft_configuration_recovery_pattern`

-   `health_monitor_tick_interval`

-   `id_allocator_replication`

-   `log_compaction_adjacent_merge_self_compaction_count`

-   `kafka_admin_topic_api_rate`

-   `kafka_client_group_byte_rate_quota`

-   `kafka_client_group_fetch_byte_rate_quota`

-   `kafka_memory_batch_size_estimate_for_fetch`

-   `kafka_quota_balancer_min_shard_throughput_bps`

-   `kafka_quota_balancer_min_shard_throughput_ratio`

-   `kafka_quota_balancer_node_period_ms`

-   `kafka_quota_balancer_window_ms`

-   `kafka_throughput_throttling_v2`

-   `leader_balancer_mode`

-   `log_message_timestamp_alert_after_ms`

-   `log_message_timestamp_alert_before_ms`

-   `max_version`

-   `min_version`

-   `partition_autobalancing_movement_batch_size_bytes`

-   `raft_flush_timer_interval_ms`

-   `raft_recovery_default_read_size`

-   `raft_max_concurrent_append_requests_per_follower`

-   `rm_violation_recovery_policy`

-   `schema_registry_protobuf_renderer_v2`

-   `seed_server_meta_topic_partitions`

-   `seq_table_min_size`

-   `target_fetch_quota_byte_rate`

-   `target_quota_byte_rate`

-   `tm_violation_recovery_policy`

-   `transaction_coordinator_replication`

-   `tx_log_stats_interval_s`

-   `tx_registry_log_capacity`

-   `tx_registry_sync_timeout_ms`

-   `use_scheduling_groups`


## Suggested labs

-   [Migrate Data with Redpanda Migrator](https://docs.redpanda.com/labs/docker-compose/redpanda-migrator/)

[Search all labs](https://docs.redpanda.com/labs)