Upgrade Control Center for Confluent Platform¶
Important
- By default, the upgrade process will preserve the last 15 minutes of historical data. There are two properties that allow you to control how much history will be preserved:
confluent.metrics.topic.skip.backlog.minutes
for broker metrics andconfluent.monitoring.interceptor.topic.skip.backlog.minutes
for stream monitoring. Preserving history for longer will slow down restore time of Control Center after the upgrade, while preserving less history will speed the process up. - Every version of Control Center (even minor upgrades) will re-create a new set of topics, since topic names contain the full version number. It is a good idea to remove the old ones to avoid confusion. For more information, see Bulk delete internal topics.
- For Confluent Platform version compatibility, see the compatibility matrix.
Upgrading to 6.2.2 or later¶
If you are upgrading your deployments to Confluent Control Center 6.2.2 or newer from an earlier version of Confluent Platform, you must also upgrade Schema Registry to the same version (6.2.2 or newer). Starting with Confluent Platform 6.2.2, Schema Registry provides a new endpoint for Confluent Control Center to filter visible Schema Registry clusters to support Control Center interaction with an RBAC enabled Schema Registry, and Control Center is upgraded to call this endpoint. Control Center versions 6.2.2 and newer are not compatible with pre-6.2.2 versions of Schema Registry. Therefore, if you upgrade Control Center from pre-6.2.2, you must also upgrade Schema Registry. (You can run an older version of Control Center with a newer Schema Registry, but you will not get the benefit of the improved interaction of Control Center with RBAC enabled registries.)
More details are provided under Upgrade Schema Registry.
Upgrading from 6.0.1 or 6.0.2 to 6.1.0 or later¶
In most cases, we recommend you upgrade Confluent Control Center last among the Confluent Platform components. However, if you are upgrading from 6.0.1 or 6.0.2 to 6.1.0 or later, you should upgrade Confluent Control Center first, and then upgrade your Kafka brokers to avoid Confluent Control Center instability. If you have already upgraded your Kafka brokers and Confluent Control Center crashes, upgrade Confluent Control Center and the situation should resolve itself.
Upgrading to version 6.0.1¶
Version 6.0.1 of Confluent Platform includes the option to enable the Cluster Registry in Confluent Platform for Control Center, which creates a more user-friendly RBAC role binding experience and enables centralized audit logging.
Note
For details on all new feature flags for cluster registry in Control Center, see the section on Cluster Registry settings.
Upgrading from 6.0.0 to 6.0.1¶
Export your cluster information from the command store and then import it into cluster registry using the migration scripts described below.
Configure Control Center to talk to MDS and RBAC.
Add the following property to the
control-center.properties
file:confluent.metadata.cluster.registry.enable=true
Upgrading from 5.5.x to 6.0.1¶
To upgrade existing Control Center components from versions 5.5.x and prior to 6.0.x, you need to transition your existing cluster data from command store to cluster registry. You can do this easily using import and export scripts.
If your cluster is not enabled for RBAC, the following steps are optional:
Export your cluster information from the command store and then import it into cluster registry using the migration scripts described below.
Configure Control Center to talk to MDS and RBAC.
Add the following property to the
control-center.properties
file:confluent.metadata.cluster.registry.enable=true
Migrating cluster data with import and export scripts¶
Important
Only MDS broker super.user or MDS broker SystemAdmin roles can successfully execute the migration scripts.
Export Script
To export cluster information from the command store into a .json
file:
Confirm that your Kafka broker is up and running.
Run the export command script:
./control-center-export --cluster controlCenterPropertiesFilePath --outfile outputfilePath
- controlCenterPropertiesFilePath
The path to the Control Center properties file.
- outputfilePath
The path for the
.json
file where you want save your output.
Import Script
To read the cluster information from the provided .json
file and register the
clusters with cluster registry:
Confirm that MDS is up and running.
Run the import command script. You can specify the MDS credentials and URL in a properties file, or specify the MDS URL as a command line argument, and be prompted for the username and password:
cluster-information-migration-script [-i import] [-u url] [-p mds-properties-file] -f clusters-file
- mds-properties-file
A properties file that contains the MDS URL, username, and password. This file should have contents similar to the following:
username=<mds-username> password=<mds-password> url=<http://mds-url:8090>
- url
URL for the MDS server. If URL is passed, you will be prompted for the username and password.
- clusters-file
The
.json
file for importing and exporting cluster information.
Upgrading from version 3.1.x and later¶
Upgrade Apache Kafka® brokers to your target Confluent Platform release. Follow instructions in Confluent Platform Upgrade Guide.
Upgrade the monitoring interceptors in all Kafka clients to your target Confluent Platform version (this is optional if you are using Confluent Platform interceptors 3.1 version and later).
Stop the Control Center process.
Make a backup of your current version configuration file. For example, copy and rename as
control-center-3.1.properties
.sudo cp /etc/confluent-control-center/control-center.properties /etc/confluent-control-center/control-center-3.1.properties
Upgrade Control Center packages to your target version.
Edit the Control Center properties file. Configuration property names may have changed between versions.
- If you are running against a secured cluster you need to update your security configs.
Properties named
confluent.controlcenter.streams.{producer,consumer}.{sasl,ssl}.*
are nowconfluent.controlcenter.streams.{sasl,ssl}.*
- You can control the amount of historical stream monitoring data Control Center will process after the upgrade (which can take some time), by setting
confluent.metrics.topic.skip.backlog.minutes
for broker metrics andconfluent.monitoring.interceptor.topic.skip.backlog.minutes
for stream monitoring. They default to 15 minutes. Setting them to shorter period will allow Control Center to catch up and show current data faster, at the expense of not processing old data.
- If you are running against a secured cluster you need to update your security configs.
Properties named
Start Control Center. For more information about starting Confluent Platform, see Install Confluent Platform On-Premises.
control-center-start ${CONFLUENT_HOME}/etc/confluent-control-center/control-center.properties
If you have authentication and authorization configured, you must run
control-center-set-acls
to give Control Center permission to create topics. For more information, see Configure Control Center to work with Kafka ACLs on Confluent Platform.
Upgrading from version 3.0.x¶
Upgrade Kafka brokers to Confluent Platform 3.1
Upgrade the monitoring interceptors in all Kafka clients to Confluent Platform 3.1
Stop the Control Center process
Copy the 3.0.x configuration file
sudo cp /etc/confluent-control-center/control-center.properties /etc/confluent-control-center/control-center-3.0.properties
Upgrade Control Center packages to Confluent Platform 3.1
Reset the application (deleting internal state)
# Use the same properties file you used to launch Control Center # From 3.0.1 /usr/bin/control-center-3_0_1-reset /etc/confluent-control-center/control-center-3.0.properties # From 3.0.0 /usr/bin/control-center-3_0_0-reset /etc/confluent-control-center/control-center-3.0.properties
Edit the Control Center properties file. Some configuration property names have changed
- If you had set the
confluent.controlcenter.name
parameter, we suggest changing the value to reflect the new version (e.g. _confluent-controlcenter-3-1-0). This isn’t strictly necessary but a good precaution in case any step of the reset failed. - You can control the amount of historical stream monitoring data Control Center will process after the upgrade (which can take some time), by setting
confluent.metrics.topic.skip.backlog.minutes
for broker metrics andconfluent.monitoring.interceptor.topic.skip.backlog.minutes
for stream monitoring. They default to 15 minutes. Setting them to shorter period will allow Control Center to catch up and show current data faster, at the expense of not processing old data.
- If you had set the
Start Control Center
/usr/bin/control-center-start /etc/confluent-control-center/control-center.properties