.. _controlcenter_licenses: ====================== Managing |cp| Licenses ====================== .. meta:: :title: Manage Confluent Platform Licenses in Control Center :description: This document describes managing Confluent Platform licenses in the Confluent Control Center user interface. It also provides information about which components require a license. :keywords: Confluent Control Center, license, enterprise license, subscription, developer license, trial license, license editor, license expiration notifications License Manager provides convenient centralized management of Confluent licenses for :ref:`cp_proprietary_components`. The License Manager feature is enabled by default. As of |cp| versions 5.2 and later, you are clearly 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 |version| is strongly recommended. This documentation pertains to managing licenses for |cp| and its proprietary components, including `Confluent evaluation licenses `_. The following diagram shows the features available by license: .. figure:: ../../images/cp-licenses-diagram.png :align: center :scale: 80% :alt: Diagram that lists features by license For information about Confluent Community and Apache 2.0 licenses, see `Confluent Community License `_ and `Apache 2.0 License `_ respectively. .. _cp_license_types: ^^^^^^^^^^^^^^^^^^^^^^ Types of |cp| licenses ^^^^^^^^^^^^^^^^^^^^^^ Available types of |cp| licenses include: - :ref:`cp_developer_license` - :ref:`cp_trial_eval_license` - :ref:`cp_enterprise_subs_license` If the |cp| configuration has only one broker, the developer license is automatically applied by License Manager. If a second broker (or more) is added, License Manager starts a trial license and the 30 day countdown to the trial expiration begins. Enterprise licenses (subscriptions) must be :ref:`entered ` by the purchaser. .. _cp_developer_license: Developer License ----------------- A developer license allows full use of |cp| features free of charge for an indefinite duration; however, the license is limited to a single broker configuration per cluster. The developer license gives developers the freedom to try the |cp| commercial features available in a non-production setting. The developer license also accommodates multiple single-broker clusters so that developers can try the :ref:`Replicator ` between those instances, or develop failover applications, for example. Those multiple single-broker clusters share the same license. .. warning:: Adding a broker starts a trial license that expires in 30 days. You cannot revert from a trial back to a developer license. .. _cp_trial_eval_license: Trial (Evaluation) License -------------------------- A trial (evaluation) license allows a free trial of commercial features in a production setting. Expires after 30 days. The trial license is governed by the `Confluent evaluation licenses agreement `_. The software ceases to function when the license expires. For details, see :ref:`cp_proprietary_components_post_expire`. .. _cp_enterprise_subs_license: Enterprise (Subscription) License --------------------------------- An enterprise license provides access to all Confluent commercial features for a production environment. An enterprise license is an annual paid subscription that expires after 365 days. The software ceases to function after the license expires. For details, see :ref:`cp_proprietary_components_post_expire`. .. _cp_enter_license_options: Entering a license in |cp| commercial components ================================================ For |c3-short|, the license key can be :ref:`entered in the License tab `, or in the legacy way using the :ref:`control-center.properties file `. For the other proprietary components, you must provide an updated license key in the configuration file of a single component. The license is evaluated against whatever licensing is already present in the License Manager. If necessary, that original license is updated to the newly submitted license for the other components to read from. .. note:: All components sharing a license topic on the same |ak| cluster will all use the license stored on that topic. For example, if you use |c3-short| to update the license, then all other licensed components that point to the same license topic on the same |ak| cluster will be governed by that new license, regardless of whether those components define their own license as part of their configuration or define a configuration without a license string. License Manager also logs the license information, including expiration, and adds warning messages to the log 15 days before expiration. .. _cp_proprietary_components: |cp| commercial components ========================== The |cp| licenses (developer, trial, or enterprise) cover the following commercial components: - :ref:`Commercial Connectors ` - :ref:`control_center` - :ref:`Confluent Replicator ` - :ref:`Confluent Schema Registry ` (license is required only when using the :ref:`Schema Registry Security Plugin `) - :ref:`Auto Data Balancer ` (applicable to multiple broker configurations only) - :ref:`Confluent Security Plugins ` - :ref:`MQTT Proxy` - :ref:`JMS client ` - :ref:`Confluent Operator ` - :ref:`RBAC ` .. _enterprise_connectors_lm: |cp| commercial connectors ^^^^^^^^^^^^^^^^^^^^^^^^^^ The |cp| commercial connectors can be used on an unlimited basis with the developer license for single-broker clusters. Multi-broker clusters can use these commercial connectors for a 30-day trial without an enterprise license key. After the trial period expires, |cp| software ceases to function as described in :ref:`commercial components post-expiry `. You must :ref:`purchase an enterprise license ` to continue using commercial connectors in a multi-broker cluster. Refer to the individual :ref:`supported connector ` documentation for connector-specfic information about license requirements. .. _cp_proprietary_components_post_expire: |cp| commercial components post-expired license ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Developer licenses never expire. When a trial or enterprise license expires, the proprietary components react as follows after the next restart attempt: ================ ============================================================================== Component Restart reaction after license expiration ================ ============================================================================== |c3-short| Fails to start. Replicator Fails to start and throws an exception. Connectors Fails to start and throw an exception. JMS client Fails to connect to any brokers and issues a license expiration message. ADB Fails to calculate the rebalance plan and issues a license expiration message. MQTT Proxy Fails to start. Security plugins Fails to start. |cs| Fails to start. Note |cs| is the default broker found in the enterprise confluent-.tar.gz download. ================ ============================================================================== Other commercial feature considerations: - If brokers are using :ref:`LDAP authorizer`, brokers fail to boot and issue a license expiration message. .. _expireentlicensenotify: 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 |c3-short| 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 |c3-short| 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 |c3-short| 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 |c3-short| 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 |c3-short| 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. .. figure:: ../../images/c3-ent-license-expiring.png :width: 600px Renew your license prior to its expiration date to continue using |cp| without interruption. Contact Confluent Support to :ref:`renew the license `. .. _expiretriallicensenotify: 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 |c3-short| application banner and cannot be dismissed. .. figure:: ../../images/c3-trial-license-expiring.png :width: 600px When a trial license expires, |cp| ceases to operate as detailed in :ref:`cp_proprietary_components_post_expire`. A message prompts you to purchase a license. .. figure:: ../../images/c3-trial-license-expired.png :width: 600px #. Click **Purchase License** to purchase an enterprise license and continue using |cp|. #. Click **Register License** to enter your newly purchased license in the License tab. For details, see :ref:`applycplicensec3ui`. .. _viewprocessingstatus: Viewing processing status in |c3-short| ======================================= View a high-level summary of running and processing status within the |c3-short| application. Check the status at any time. #. In the upper-right corner of |c3-short|, click the menu icon to open the **Administration** menu. .. figure:: ../../images/c3-admin-menu.png #. Click **Status & Settings**. By default, the **Processing Status** tab appears. The **Processing Status** pane displays the status of |c3-short| (Running or Not Running). Consumption data and Broker data message processing speeds are shown real-time since 30 minutes ago. .. figure:: ../../images/c3-process-status.png :width: 600px .. _viewcplicensec3: Viewing license information in |c3-short| ========================================= View the license information within the |c3-short| application. Check the license status at any time. .. include:: includes/c3-rbac-license-note.rst .. warning:: If License Manager has been disabled, the License tab cannot be accessed. #. In the upper-right corner of |c3-short|, click the menu icon to open the **Administration** menu. #. Click **Status & Settings**. #. Click the **License** tab. The **License Key** pane displays the license key, type of license, Customer ID (if applicable), and the date the license expires (if it's not a Developer License). .. figure:: ../../images/c3-developer-license.png :width: 600px .. _buycplicensec3: Purchasing a |cp| license ========================= You can request to purchase an enterprise license from within the |c3-short| application. 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. #. In the upper-right corner of |c3-short|, click the menu icon to open the **Administration** menu. #. Click **Purchase License**. An email window opens addressed to Confluent sales for you to make your request. .. tip:: Existing customers can also request a renewal from `Confluent Support `_. After you receive the license, :ref:`apply the license key `. .. _applycplicensec3ui: Applying an enterprise |cp| license in the |c3-short| License tab ================================================================= Applying a valid Enterprise license 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. .. include:: includes/c3-rbac-license-note.rst You can apply an enterprise license key in the License tab 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`` files. The reverse does; however: applying a license key in a ``control-center.properties`` file updates the license key displayed in the License tab. The applied license key is visible in the |c3-short| :ref:`log`. To apply a license in the License tab: #. In the upper-right corner of |c3-short|, click the menu icon to open the **Administration** menu. #. Click **Status & Settings**. #. Click the **License** tab. #. Clear the existing key. The ``Enter license key prompt`` appears. .. figure:: ../../images/c3-enter-license-key.png :width: 600px #. Paste the license key provided by Confluent into the **License Key** pane. #. Click **Apply License**. .. figure:: ../../images/c3-enterprise-license-blur.png :width: 600px - 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 has been applied message appears in a light blue banner. Click the **x** to dismiss the banner. #. Click the Confluent logo in the upper-left corner to navigate back to |c3-short| monitoring. .. _applycplicenseprops: Applying a |cp| license in a |c3-short| 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 available in the |c3-short| 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`` files. The applied license key is visible in the |c3-short| :ref:`log`. To apply a license key for |c3-short| using configuration properties: #. Open the ``control-center.properties`` file for your environment. #. In the **Control Center Settings** section, locate **License string for the Control Center**. Remove the hash \#\ to uncomment the ``confluent.license`` option. #. Enter the license value or a path to a file that contains the license. .. code:: bash confluent.license=/path/to/license/file #. Restart |c3-short| and pass in the properties file for the configuration to take effect: .. sourcecode:: bash ./bin/control-center-stop ./bin/control-center-start ../etc/confluent-control-center/control-center.properties For more details on |c3-short| configuration options, see :ref:`controlcenter_configuration`. .. _ffc3licensemgmnt: Enabling and disabling the |c3-short| License Manager feature ============================================================= License Manager is enabled by default. License Manager can be disabled in |c3-short| as a preventative measure against potentially installation-wide license issues within an organization. After disabling License Manager, the License tab in the |c3-short| Administration UI cannot be accessed by any users. Enter the licence key using an :ref:`applycplicenseprops`. To disable License Manager in |c3-short|: #. Set the ``confluent.controlcenter.license.manager.enable`` option in your ``control-center.properties`` file to ``false``. .. code:: bash ... confluent.controlcenter.license.manager.enable=false ... .. note:: Make the change in the appropriate |c3-short| 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/``. #. Restart |c3-short| and pass in the properties file for the configuration to take effect: .. sourcecode:: 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 |c3-short| with the updated properties file. .. _c3loglicense: Viewing the |c3-short| log for License Manager information, warnings, or errors =============================================================================== License Manager configuration information and notification warnings show up in the |c3-short| log. The log displays in stdout by default. .. tip:: For production environments, configure log4j to manage multiple rolling logs. For more details, see :ref:`control_center_logging_settings`. To view the |c3-short| log in stdout using the |confluent-cli| :ref:`confluent_local_log` command: .. code:: bash /bin/confluent local log control-center When the License Manager feature is :ref:`enabled `, an entry displays in the log: .. code:: bash confluent.controlcenter.license.manager.enable = true The version of License Manager also displays in the log: .. code:: bash confluent.controlcenter.license.manager = _confluent-controlcenter-license-manager-5-4-0