-
Notifications
You must be signed in to change notification settings - Fork 459
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update Licensing FAQs for v24.3 release #19002
base: main
Are you sure you want to change the base?
Conversation
Files changed:
|
✅ Deploy Preview for cockroachdb-interactivetutorials-docs canceled.
|
✅ Deploy Preview for cockroachdb-api-docs canceled.
|
❌ Deploy Preview for cockroachdb-docs failed. Why did it fail? →
|
✅ Netlify Preview
To edit notification comments on pull requests, go to your Netlify site configuration. |
df3f405
to
836c8ca
Compare
846a969
to
e66bbd2
Compare
Addresses: - DOC-11203 - DOC-11048 - DOC-11049 Summary of changes: - Update 'Licensing FAQs' with the following: - Information about the new licensing tiers - Instructions for self-serve Enterprise Trial and Enterprise Free licenses in Cloud Console - Updated information about how to monitor for license expiry in DB Console (with a link to updated UI docs that include the exact messages) - A description of what throttling is and how it works - A note that single-node developer clusters do not require a license key - Update 'DB Console Overview > License expiration message' with the specific messages that may be emitted by Console depending on the status of the cluster's license
e66bbd2
to
681e7dc
Compare
@jaiayu could use your feedback on basically this whole PR. This is a first step; next I'll plan to add an 'Enterprise Licensing Workflows' page which contains the self-serve license info as well for easier finding / sharing, probably with more info too. Also a 'Telemetry' page. But this at least gets the basic instructions and info written down (I hope) - but please let me know if you see something wrong or missing @spilchen please look at the stuff about throttling and developer single-node clusters and let me know if anything is wrong or missing @dhartunian please look at the changes to the 'DB Console Overview > License expiration message', I've updated it to match the telemetry notices/warnings shown in DB Console based on some screenshots you shared a while back. I'm adding it here so folks can search for the exact strings in docs. Please let me know if the text of the messages has changed. Also i'm open to any other feedback re: stuff that is wrong or missing Thank you! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good. I just had a couple of questions and clarificatons.
|
||
This will only happen in the following cases: | ||
|
||
- The cluster has no [valid license key](#obtain-a-license). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does "valid" simply mean the license doesn't exist? Throttling can also occur if you're operating with an expired license beyond the grace period:
- Free: throttles 30 days after expiration
- Trial: throttles 7 days after expiration
- None: throttles 7 days after cluster initialization
- Enterprise: never throttles
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks for laying this out explicitly, i have updated this section a bit to try to add the info and hopefully make things clearer - please let me know what you think
This will only happen in the following cases:
- The cluster is not following telemetry requirements.
- There is a 7 day grace period for new Enterprise Free and Enterprise Trial clusters to start sending telemetry.
- The cluster has an expired license key; depending on the type of expired license, the cluster will be throttled after the following time periods:
- Enterprise: Never throttles
- Enterprise Free: Throttles 30 days after expiration
- Enterprise Trial: Throttles 7 days after expiration
- No license: Throttles 7 days after cluster initialization
|
||
The table of licenses below refers to options for {{ site.data.products.core }} deployments. All {{ site.data.products.cloud }} deployments automatically have a valid **Enterprise** license. | ||
|
||
Type | Description |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We left out any mention of evaluation licenses. Was that intentional?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
what are "evaluation licenses" - is that something different than the self-serve Enterprise Trial license? perhaps something that is handed out directly by sales? I'm not seeing the text "evaluation" or "evaluation license" in the product brief
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The evaluation license type existed previously (see 1.1.3 in the product brief). My understanding is that they are used for POCs.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks @spilchen for the catch, i just reviewed that list again, it seems we are missing multiple items from that list, my bad
@jaiayu do you want me to replicate here all of the license types from the product brief? specifically, it looks like we're missing:
- Evaluation
- Development
- Pre-production
Or is it our preference that those license types are described and managed via interactions with a Sales process vs. being described in the public user documentation?
I'm asking because up until now we have not listed out such licenses - current FAQ says there is:
- Apache
- BSL
- CCL
And doesn't talk about dev, eval etc licenses.
Presumably dev, eval, etc. licenses also existed under the previous regime, but we never documented them before
Happy to do it now if you want, please let me know
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@rmloveland I think it might be a good to mention that there is an option to evaluate CockroachDB without the telemetry requirements by contacting Sales.
I'm not sure if we should list out the "Evaluation" license key, or if we should just say "Contact Sales if you want to try CockroachDB without telemetry requirements or if you require an extended trial period."
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
DB Console text LGTM.
We will enforce the sending of telemetry within the DB if the customer has a Free/Trial license (they can't disable via the cluster setting), so if they get a telemetry send error, it will be due to a firewall configuration or a network issue. Is it worth mentioning that somewhere?
-------------|------------ | ||
**Enterprise** <a name="enterprise"></a> | This paid license allows usage of all CockroachDB features with no restrictions under the terms specified in the [CockroachDB Software License][csl]. License must be renewed annually or as negotiated. Support levels available include [Enterprise][support] or [Essential][support]. | ||
**Enterprise Free** <a name="enterprise-free"></a> | Same functionality as **Enterprise**, but free of charge for businesses with less than $10M in annual revenue, and telemetry is required except for ephemeral clusters (7 days or less). Clusters will be [throttled](#throttling) after 7 days without sending telemetry. License must be renewed annually. Support level available is Community (i.e., [Docs]({% link {{ page.version.version }}/index.md %}), [Forum][forum], [Slack][slack]). | ||
**Enterprise Trial** <a name="enterprise-trial"></a> | A 30 day self-service trial license. Telemetry is required during the trial (with negotiated exceptions). Telemetry can be disabled once the cluster is upgraded to a paid **Enterprise** license. Support level available during trials is Community (i.e., [Docs]({% link {{ page.version.version }}/index.md %}), [Forum][forum], [Slack][slack]). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@spilchen and @dhartunian - elsewhere you each commented that Enterprise Trial clusters must send telemetry - i also just reviewed the product brief - not sure why I wrote this "(with negotiated exceptions)" clause but I'm removing it FYI
yayyy thanks
I added a line to reference this in the 'Types of Licenses' section, PTAL
|
@@ -0,0 +1,9 @@ | |||
Depending on the status of your cluster's [license]({% link {{ page.version.version }}/licensing-faqs.md %}), the following messages may be displayed in the DB Console: | |||
|
|||
- If the license will expire soon, the message is: _This cluster will require a license key by ${DATE} or the cluster will be throttled._ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I believe this error is only displayed if there is no license key in the first place (not is expiring soon)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We don't actually display a message when the cluster is expiring soon. We only display the banner alerts when the license has actually expired and the cluster is in a grace period before clusters are throttled:
"Your license key expired on . The cluster will be throttled on unless a new license key is added. Learn more"
Depending on the status of your cluster's [license]({% link {{ page.version.version }}/licensing-faqs.md %}), the following messages may be displayed in the DB Console: | ||
|
||
- If the license will expire soon, the message is: _This cluster will require a license key by ${DATE} or the cluster will be throttled._ | ||
- If the license is no longer valid, the message is: _Your license key expired on ${DATE} and the cluster was throttled. Please add a license key to continue using this cluster._ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This message is technically displayed after a grace period and not immediately after a license expires. I don't think we need to advise users about the grace periods, but I'm wondering if we should say "if your cluster was throttled because of license validity issues..." or something along those lines.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is a separate message displayed if the cluster was throttled because no license key was ever added: "This cluster was throttled because it requires a license key. Please add a license key to continue using this cluster. Learn more"
|
||
- If the license will expire soon, the message is: _This cluster will require a license key by ${DATE} or the cluster will be throttled._ | ||
- If the license is no longer valid, the message is: _Your license key expired on ${DATE} and the cluster was throttled. Please add a license key to continue using this cluster._ | ||
- If the cluster is required to send telemetry but has not been sending it, the message is: _Telemetry has not been received from some nodes in this cluster since ${DATE}. These nodes will be throttled on ${DATE} unless telemetry is received._ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is a separate message displayed after the throttling occurs due to telemetry requirements:
"Telemetry has not been received from some nodes in this cluster since . These nodes were throttled on July . Learn more"
Type | Description | ||
-------------|------------ | ||
**Enterprise** <a name="enterprise"></a> | This paid license allows usage of all CockroachDB features with no restrictions under the terms specified in the [CockroachDB Software License][csl]. License must be renewed annually or as negotiated. Support levels available include [Enterprise][support] or [Essential][support]. | ||
**Enterprise Free** <a name="enterprise-free"></a> | Same functionality as **Enterprise**, but free of charge for businesses with less than $10M in annual revenue, and telemetry is required except for ephemeral clusters (7 days or less). Clusters will be [throttled](#throttling) after 7 days without sending telemetry. License must be renewed annually. Support level available is Community (i.e., [Docs]({% link {{ page.version.version }}/index.md %}), [Forum][forum], [Slack][slack]). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I feel like the "ephemeral" language here is confusing. I would delete ", and telemetry is required except for ephemeral clusters (7 days or less)".
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why do we mention the "7 days without sending telemetry" for the Enterprise Free license and not the Enterprise Trial license? I think these should be the same in terms of telemetry.
|
||
{{site.data.alerts.callout_success}} | ||
Note that: | ||
- Clusters with no license have a 7-day grace period before needing to install a license and start sending telemetry data. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would remove the "and start sending telemetry data" part. New clusters can use any license key, doesn't have to be a telemetry license.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You could also mention that this is useful for ephemeral development clusters.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
actually - we should think about how to phrase this in docs but:
Self-hosted clusters without a license key are restricted to development purposes only. Development purposes includes non-production use in an internal development environment for design, prototype, or development purposes only. This restriction is enforced through license terms and conditions.
To obtain an **Enterprise Free** or **Enterprise Trial** license, take the following steps: | ||
|
||
1. Point your web browser to the [CockroachDB {{ site.data.products.cloud }} Console](https://cockroachlabs.cloud) and [log in]({% link cockroachcloud/authentication.md %}#console-ui-authentication). | ||
1. Select **Organization » Enterprise Licenses** from the nav bar dropdown. This will bring you to the **Enterprise Licenses** page, which shows a (possibly empty) list of licenses and their keys, with information about the status of each. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we should mention that you must have "Organization Admin" permissions
1. Click the **Generate License Key** button. You will be redirected to the **Enterprise Licenses** page, where you can [start using the key](#set-a-license). | ||
1. To create an **Enterprise Free** license: | ||
1. Fill in the form with the required information. | ||
1. Toggle the switch called **Find out if my company qualifies for an Enterprise Free license**. *By toggling this switch you are legally attesting to the fact that your company revenue meets the requirements of the license*. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we should have another step after toggle the switch saying "Fill out the additional information". I think the disclaimer "By toggling..." should be moved to this next step.
1. To create an **Enterprise Free** license: | ||
1. Fill in the form with the required information. | ||
1. Toggle the switch called **Find out if my company qualifies for an Enterprise Free license**. *By toggling this switch you are legally attesting to the fact that your company revenue meets the requirements of the license*. | ||
1. Click the **Continue** button. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
At this stage, they may not qualify for the Free license. If they don't qualify, we will give them a Enterprise Trial license instead.
{{site.data.alerts.callout_danger}} | ||
You will not be able to create more than one **Enterprise Trial** license per day. If you try, the UI will prevent you from proceeding, and the following message will be displayed: | ||
|
||
> A new Enterprise Trial license cannot be created at this time because one was recently created. Tell us more about your intended use to find out if you qualify for an Enterprise Free license, or create a new one after October 16, 2024 at 10:49 AM EDT. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This mentions an actual date and time.
|
||
## Set a license | ||
|
||
{% include common/set-enterprise-license.md %} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we add a disclaimer here that you cannot apply a Enterprise Trial license more than once to a cluster? If a cluster has already had an Enterprise Trial before, they cannot get another one.
You can monitor the time until your license expires in the following ways: | ||
|
||
1. [Prometheus]({% link {{ page.version.version }}/monitor-cockroachdb-with-prometheus.md %}): The `seconds_until_enterprise_license_expiry` metric reports the number of seconds until the license on a cluster expires. It will report `0` if there is no license, and a negative number if the license has already expired. For more information, see [Monitoring and Alerting]({% link {{ page.version.version }}/monitoring-and-alerting.md %}). | ||
1. [DB console]({% link {{ page.version.version }}/ui-overview.md %}): Several [license expiration messages]({% link {{ page.version.version }}/ui-overview.md %}#license-expiration-message) may be displayed, depending on the status of your cluster's license. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For Enterprise Free and Trial clusters, we also notify you in the CC console under the Enterprise Licenses section. We will also send emails accordingly.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We also log via Cockroach Logs when clusters are at risk of being throttled due to license expiration (or telemetry requirements). In addition, the database generates warnings and errors in response to SQL transactions.
This will only happen in the following cases: | ||
|
||
- The cluster is not following telemetry requirements. | ||
- There is a 7 day grace period for new **Enterprise Free** and **Enterprise Trial** clusters to start sending telemetry. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This shouldn't be "new" clusters only. Any time there is an interruption in telemetry, the grace period should start.
- **Enterprise**: Never throttles | ||
- **Enterprise Free**: Throttles 30 days after expiration | ||
- **Enterprise Trial**: Throttles 7 days after expiration | ||
- No license: Throttles 7 days after cluster initialization |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I feel like this "No license" point doesn't make sense under this section on "expired license key". I think this should be broken out into its own point.
|
||
When a cluster is being throttled, the number of concurrent open [SQL transactions]({% link {{ page.version.version }}/transactions.md %}) is limited to 5. | ||
|
||
This will only happen in the following cases: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Throttling would also happen when you patch upgrade a core cluster (i.e., no license key and running a Core-supported version) to a Core-not-supported patch. These clusters get a 30 day grace period to de-risk impact to prod clusters.
|
||
### Can I use CockroachDB for academic research? | ||
|
||
Cockroach Labs encourages non-commercial academic research involving CockroachDB. For such projects, please [contact us][support] to discuss a possible licensing arrangement. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
They can use Enterprise Free license for this purpose. No need to contact us.
- [`cockroach start-single-node`]({% link {{ page.version.version }}/cockroach-start-single-node.md %}) | ||
- [`cockroach demo`]({% link {{ page.version.version }}/cockroach-demo.md %}) | ||
|
||
Single node clusters are not [throttled](#throttling). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
might be good to add that you should only be using clusters without a license key for development purposes (not prod).
@@ -149,7 +149,7 @@ By default, the DB Console shares anonymous usage details with Cockroach Labs. F | |||
|
|||
## License expiration message | |||
|
|||
If you have [set a license]({% link {{ page.version.version }}/licensing-faqs.md %}#set-a-license) to use [enterprise features]({% link {{ page.version.version }}/enterprise-licensing.md %}), a license expiration message is displayed at the top-right of the DB Console. While the license is valid, the message will read `License expires in X days`, where `X` is the number of days. If the license is no longer valid, the message will read `License expired X days ago`. Hovering over either message displays a tooltip with the expiration date of the license. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure if we should delete this. This alert will still be around and is relevant for Enterprise licenses. We are adding some more prominent banner alerts for when the cluster is at risk of getting throttled.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@rmloveland finished providing feedback to this version. Let me know if you have any questions.
Addresses:
Summary of changes:
Update 'Licensing FAQs' with the following:
Information about the new licensing tiers
Instructions for self-serve Enterprise Trial and Enterprise Free
licenses in Cloud Console
Updated information about how to monitor for license expiry in DB
Console (with a link to updated UI docs that include the exact
messages)
A description of what throttling is and how it works
A note that single-node developer clusters do not require a license
key
Update 'DB Console Overview > License expiration message' with the
specific messages that may be emitted by Console depending on the
status of the cluster's license
Rendered previews:
NB. These changes only apply to v24.3 docs right now, but once reviewed and approved, these changes will also be backported to v23.1+ docs and sit on a branch awaiting the relevant point releases of those versions in November.