<a id="controlcenter-licenses"></a>

# Manage Confluent Platform Licenses Using Control Center

License Manager provides convenient centralized management of Confluent licenses. The License Manager
feature is enabled by default.

As of Confluent Platform versions 5.2 and later, you are notified of license
expiration dates with notifications
for both trial and enterprise licenses. In addition, the developer license
provides
unlimited use of commercial features in a single-broker development environment.
Upgrading to the most current version 2.6 is strongly recommended.

Considerations:
: - This documentation describes how to manage licenses for Confluent Platform and its proprietary components, including [Confluent evaluation licenses](https://www.confluent.io/software-evaluation-license).
  - For information about Confluent Community and Apache 2.0 licenses, see [Confluent Community License](https://www.confluent.io/confluent-community-license) and [Apache 2.0 License](https://www.apache.org/licenses/LICENSE-2.0) respectively.
  - For complete license information for Confluent Platform, see [Manage Confluent Platform Licenses](/platform/current/installation/license.html#cp-license-overview).
  - Enterprise support is not provided unless the `confluent-security` package is installed on all nodes and a valid Enterprise license key is configured.

<a id="cp-enter-license-options"></a>

## Enter a license in Confluent Platform commercial components

If the Confluent Platform configuration has only one broker, the [developer license](/platform/current/installation/license.html#cp-developer-license) is automatically applied by License Manager.

If a second broker (or more) is added, License Manager starts a
[trial license](/platform/current/installation/license.html#cp-trial-eval-license), and the 30 day countdown to the trial
expiration begins.

[Enterprise licenses (subscriptions)](/platform/current/installation/license.html#cp-enterprise-subs-license) must be
entered by the purchaser.

For Control Center, the license key can be
[entered in the Control Center License tab](#applycplicensec3ui), or in the [control-center.properties file](#applycplicenseprops).

Each licensed component requires a valid license key to start up. After the
component starts up, it checks the license topic to use the latest valid license
key. See [Configure component licenses](/platform/current/installation/license.html#cp-configure-license) for details.

License Manager also logs the license information, including expiration, and
adds warning messages to the log 15 days before expiration. Warning messages
will also be shown in Confluent Control Center leading to to a license expiration.

<a id="expireentlicensenotify"></a>

## Enterprise license expiry notifications

The License Manager checks the license status daily. At 90 days before a license
expiration date, a notification message
prominently displays within the Control Center application the number of days
remaining for the license. As the expiration date approaches, notifications
become more persistent at the following countdown intervals:

- **90 days:** When the approaching license expiration date is in 90 days or
  less, a dismissible notification appears in the Control Center banner area.
  After it’s dismissed, the banner notification does not appear again until the
  expiration date is in 30 days or less.
- **30 days:** When the approaching license expiration date is in 30 days or
  less, a dismissible notification appears in the Control Center banner area. After
  it’s dismissed, the banner notification does not appear again until the
  expiration date is in 7 days or less. In addition, an exclamation point
  displays in the License tab along with a non-dismissible notification.
- **7 days:** When the approaching license expiration date is in seven days or
  less, a dismissible notification appears in the Control Center banner area.
  Dismissing the banner notification must be done daily (if you don’t want to
  view it) until the license expiration date has arrived. In addition, an
  exclamation point displays in the License tab along with a non-dismissible
  notification. On the last day, the notice counts down the last 24 hours until
  expiration.
- **0 days (expired):** After the license has expired, the banner notification
  appears in the Control Center application and cannot be dismissed until a new
  license is applied. The message indicates how long the license has been expired.
  After applying a new license, the notifications disappear until the 90-day
  checkpoint starts another countdown cycle.

Renew your license prior to its expiration date to continue using Confluent Platform without
interruption. Contact your account team to [renew the license](#buycplicensec3).
If you can’t reach your account team, contact [Confluent Support](https://support.confluent.io).

<a id="expiretriallicensenotify"></a>

## Trial license expiry notifications

Notifications for a trial license start immediately on the first active day of
the 30-day trial. The daily notifications are persistent in the Control Center
application banner and cannot be dismissed.

When a trial license expires, Confluent Platform ceases to operate as detailed in
[Renew licenses](/platform/current/installation/license.html#cp-proprietary-components-post-expire). A message prompts you to purchase
a license.

1. Click **Purchase License** to purchase an enterprise license and continue using Confluent Platform.
2. Click **Register License** to enter your newly purchased license in the
   License tab. For details, see [Activate an enterprise Confluent Platform license in Control Center](#applycplicensec3ui).

<a id="viewcplicensec3"></a>

## View license information in Control Center

From within Control Center, you can view license information and check license status
at any time.

#### IMPORTANT
If RBAC is enabled, the `SystemAdmin` role must be granted to a user
on the Kafka cluster that is running Metadata Service (MDS) in order to view or edit a license in the
Control Center web interface. For more information, see [Configure RBAC for Control Center on Confluent Platform](../security/c3-rbac.md#controlcenter-security-rbac).

If License Manager has been disabled, you cannot access the License tab.

**To view license information**:

1. In the upper-right corner of Control Center, click the menu icon to open the
   **Administration** menu.
2. Click **About Control Center**.
3. Click **License**.

On the **License** tab, you can review the license key, license type,
add ons, and if applicable, the license expiration date and customer ID.

![Confluent Platform License in Control Center](images/c3-developer-license-6-0.png)

<a id="buycplicensec3"></a>

## Purchase Confluent Platform licenses

You can request purchase of an enterprise license from within the Control Center.
Request a license if you want to upgrade to an enterprise license from a trial
license, or if your trial or enterprise license is about to expire or has expired
and needs to be renewed.

1. In the upper-right corner of Control Center, click the menu icon to open the
   **Administration** menu.
2. Click **Purchase License**. The [Confluent Support Portal](https://support.confluent.io)
   opens. Contact your account team to renew or purchase your license.
   If you can’t reach your account team, contact [Confluent Support](https://support.confluent.io).

After you receive the license, [apply the license key](#applycplicensec3ui).

<a id="applycplicensec3ui"></a>

## Activate an enterprise Confluent Platform license in Control Center

When you apply a valid Enterprise license, it takes effect immediately and does not
require stopping or restarting services. You can apply a new license key to an
enterprise license that is about to expire or has expired.

#### IMPORTANT
If RBAC is enabled, the `SystemAdmin` role must be granted to a user
on the Kafka cluster that is running Metadata Service (MDS) in order to view or edit a license in the
Control Center web interface. For more information, see [Configure RBAC for Control Center on Confluent Platform](../security/c3-rbac.md#controlcenter-security-rbac).

From the License tab, you can apply an enterprise license key to a trial license
prior to its expiration date.

An enterprise license can be applied over a developer license at any time.

Applying a license key in the License tab does not update the license string
property in the `control-center.properties` file. However, applying a license
key in the `control-center.properties` file **does** update the license key displayed
in the License tab.

The applied license key is visible in the Control Center [log](#c3loglicense).

**To apply a license**:

1. In the upper-right corner of Control Center, click the menu icon to open the
   **Administration** menu.
2. Click **About Control Center**.
3. Click **License**.
4. Click **Update license key**.
5. Paste the license key provided by Confluent into **Update license key**.
6. Click **Confirm**.
   - If the applied key is invalid, an *invalid key entered* message appears in
     red below the License Key pane. Double-check the key and try again.
   - If the applied key is valid, a *license key updated* message appears in
     a light green banner. Click **x** to dismiss the banner.

**To review add on details**:

1. In the upper-right corner of Control Center, click the menu icon to open the
   **Administration** menu.
2. Click **About Control Center**.
3. Click **License**.
4. Click **Add on details** to see details for add ons.

### Manage Customer-Managed Confluent Platform for Confluent Cloud subscription

This Enterprise license only supports self-managed components that connect to Confluent Cloud. For more information, see
the [documentation](/platform/current/installation/license.html#enterprise-license-for-customer-managed-cp-for-ccloud-subscription).

You can have multiple Enterprise Licenses in Control Center. If more than one Enterprise License is available
and active, the one in use is tagged as `in use by Control Center`.

![License Manager with multiple licenses](images/c3-enterprise-license-customer-managed-cp-cloud-sub.png)

<a id="applycplicenseprops"></a>

## Apply a Confluent Platform license in a Control Center properties file

If License Manager has been disabled, or a trial license has expired and the
License tab cannot be accessed, use this alternative legacy method to enter a
license key.

Besides using the License tab in the Control Center Administration UI, you can set
the license key in the `confluent.license` property of the appropriate
`control-center.properties` file on startup. Enter either the license key or a
path to the license key file.

Applying a license key in a `control-center.properties` file updates the
license key displayed in the License tab UI. Applying a license key in the
License tab UI does not update the license string property in
the `control-center.properties` file.

The applied license key is visible in the Control Center [log](#c3loglicense).

To apply a license key for Control Center using configuration properties:

1. Open the `control-center.properties` file for your environment.
2. In the **Control Center Settings** section, locate **License string for the
   Control Center**. Remove the hash `#` to uncomment the `confluent.license`
   option.
3. Enter the license value or a path to a file that contains the license.
   ```bash
   confluent.license=/path/to/license/file
   ```
4. Restart Control Center and pass in the properties file for the configuration to
   take effect:
   ```bash
   ./bin/control-center-stop
   ./bin/control-center-start ../etc/confluent-control-center/control-center.properties
   ```

For more details on Control Center configuration options, see [Control Center Configuration Reference for Confluent Platform](configuration.md#controlcenter-configuration).
For more information about restarting Control Center and passing in its properties files,
see [Control Center Configuration Examples for Confluent Platform](properties.md#c3-properties-files).

<a id="ffc3licensemgmnt"></a>

## Enable and disabling the Control Center License Manager feature

License Manager is enabled in Control Center by default.

License Manager can be disabled as a preventative measure against potential
installation-wide license issues within an organization.

After disabling License Manager, the License tab in the Control Center
Administration UI cannot be accessed by any users. Enter the license key using
an [Apply a Confluent Platform license in a Control Center properties file](#applycplicenseprops).

To disable License Manager in Control Center:

1. Set the `confluent.controlcenter.license.manager.enable` option in
   your `control-center.properties` file to `false`.
   ```bash
   ...
   confluent.controlcenter.license.manager.enable=false
   ...
   ```
2. Make the change in the appropriate Control Center properties file or
   files configured for your environments,
   including `control-center-dev.properties` or
   `control-center-production.properties`.
   The properties files are located in
   `/path-to-confluent/etc/confluent-control-center/`.
3. Restart Control Center and pass in the properties file for the configuration to take effect:
   ```bash
   ./bin/control-center-stop
   ./bin/control-center-start ../etc/confluent-control-center/control-center.properties
   ```

To enable License Manager again, set the
`confluent.controlcenter.license.manager.enable` option back to `true` and
restart Control Center with the updated properties file.

<a id="c3loglicense"></a>

## View the Control Center log for License Manager

License Manager configuration information and notification warnings appear in
the Control Center log. The log is sent to stdout by default.

To view the Control Center log in stdout using the [confluent local services control-center log](https://docs.confluent.io/confluent-cli/3.15/command-reference/local/services/control-center/confluent_local_services_control-center_log.html) command:

```bash
confluent local services control-center log
```

When License Manager is [enabled](#ffc3licensemgmnt), an entry
in the log indicates enabled status:

```bash
confluent.controlcenter.license.manager.enable = true
```

The version of License Manager also appears in the log:

```bash
confluent.controlcenter.license.manager = _confluent-controlcenter-license-manager-5-5-0
```
