Skip to content
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

Open
wants to merge 7 commits into
base: main
Choose a base branch
from

Conversation

rmloveland
Copy link
Contributor

@rmloveland rmloveland commented Oct 10, 2024

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.

@rmloveland rmloveland marked this pull request as draft October 10, 2024 15:59
Copy link

github-actions bot commented Oct 10, 2024

Files changed:

Copy link

netlify bot commented Oct 10, 2024

Deploy Preview for cockroachdb-interactivetutorials-docs canceled.

Name Link
🔨 Latest commit 75ea919
🔍 Latest deploy log https://app.netlify.com/sites/cockroachdb-interactivetutorials-docs/deploys/6728fef55894b7000820afb7

Copy link

netlify bot commented Oct 10, 2024

Deploy Preview for cockroachdb-api-docs canceled.

Name Link
🔨 Latest commit 75ea919
🔍 Latest deploy log https://app.netlify.com/sites/cockroachdb-api-docs/deploys/6728fef5755cd40008667411

Copy link

netlify bot commented Oct 10, 2024

Deploy Preview for cockroachdb-docs failed. Why did it fail? →

Name Link
🔨 Latest commit 01e6c09
🔍 Latest deploy log https://app.netlify.com/sites/cockroachdb-docs/deploys/6707f9dd2b59a200080844f7

Copy link

netlify bot commented Oct 10, 2024

Deploy Preview for cockroachdb-docs failed. Why did it fail? →

Name Link
🔨 Latest commit 75ea919
🔍 Latest deploy log https://app.netlify.com/sites/cockroachdb-docs/deploys/6728fef58c5ac00008f78005

@rmloveland rmloveland force-pushed the 20241010-DOC-11203-update-licensing-faq branch from df3f405 to 836c8ca Compare October 15, 2024 16:13
@rmloveland rmloveland force-pushed the 20241010-DOC-11203-update-licensing-faq branch 5 times, most recently from 846a969 to e66bbd2 Compare October 21, 2024 15:52
@rmloveland rmloveland marked this pull request as ready for review October 21, 2024 15:53
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
@rmloveland rmloveland force-pushed the 20241010-DOC-11203-update-licensing-faq branch from e66bbd2 to 681e7dc Compare October 21, 2024 15:55
@rmloveland
Copy link
Contributor Author

@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!

Copy link

@spilchen spilchen left a 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.

src/current/_includes/common/set-enterprise-license.md Outdated Show resolved Hide resolved
src/current/_includes/common/licensing-faqs.md Outdated Show resolved Hide resolved

This will only happen in the following cases:

- The cluster has no [valid license key](#obtain-a-license).

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

Copy link
Contributor Author

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

src/current/_includes/common/licensing-faqs.md Outdated Show resolved Hide resolved

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

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?

Copy link
Contributor Author

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

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.

Copy link
Contributor Author

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

Copy link

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."

Copy link
Contributor

@dhartunian dhartunian left a 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]).
Copy link
Contributor Author

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

@rmloveland
Copy link
Contributor Author

@dhartunian :

DB Console text LGTM.

yayyy thanks

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?

I added a line to reference this in the 'Types of Licenses' section, PTAL

Clusters with Enterprise Free or Enterprise Trial licenses cannot disable telemetry; if such a cluster signals a telemetry sending error, it will be due to firewall configuration or a network issue.

@@ -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._
Copy link

@jaiayu jaiayu Oct 29, 2024

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)

Copy link

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"

Copy link
Contributor Author

@rmloveland rmloveland Oct 31, 2024

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)
We don't actually display a message when the cluster is expiring soon.

Ah ok, i took these from some UI screenshots that were shared a while back. Makes sense that they got out of date, thanks for the updated info

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"

Ok, updated to the following:

  • If your cluster has an invalid license key and the cluster is still in the grace period, the message is: Your license key expired on ${DATE1}. The cluster will be throttled on ${DATE2} unless a new license key is added.


- 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._
Copy link

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"

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK, added another bullet and ordered them together as follows:

  • If the cluster is required to send telemetry but has not been sending it, and is not yet being throttled, 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.
  • If the cluster is required to send telemetry but has not been sending it, and is currently being throttled, the message is: Telemetry has not been received from some nodes in this cluster since ${DATE1}. These nodes were throttled on ${DATE2}.

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*.
Copy link

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.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done, PTAL

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.
Copy link

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.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice, added another bullet:

  1. [CockroachDB {{ site.data.products.cloud }} Console][cloud-console]: If you have an Enterprise Free or Enterprise Trial cluster, you will see notifications in the Enterprise Licenses section, as well as receive notification emails to the email address associated with your account.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

great! the only additional comment is that emails are sent to the cloud org's admins (i.e., users with Org Admin permissions).

- **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
Copy link

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.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Made this a separate standalone sentence after the bulleted list that says

"If no valid license key is ever entered, the cluster will be throttled 7 days after cluster initialization."

also FYI I removed the text "only" from the top of this section, so it now says "this will happen in the following cases", which is still correct but leaves open the option to edit this text in future if/when someone internally or on the interwebs sees it later and goes "hey you missed one" - more of a good tech writing practice than anything to do with this PR specifically

Copy link

@jaiayu jaiayu left a 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.

@rmloveland
Copy link
Contributor Author

finished providing feedback to this version. Let me know if you have any questions.

thanks for the review @jaiayu

I have made updates that hopefully address all of your feedback in the latest commit named Update with jaiayu feedback (1), PTAL and let me know what you think!

Copy link

@spilchen spilchen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! I had a minor edit suggestion, but no need for another review from me.

src/current/_includes/common/licensing-faqs.md Outdated Show resolved Hide resolved
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**.
1. Fill out the additional information. *By toggling this switch you are legally attesting to the fact that your company revenue meets the requirements of the license*.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@rmloveland toggling does not legally attest that your company meets the requirements of the license. I think we should remove this line.

They actually attest at Step E (when they select the T&Cs)


### Can I host CockroachDB as a service for internal use at my organization?

Yes, employees and contractors can use your internal CockroachDB instance as a service, but no people outside of your organization will be able to use it without purchasing a license. Use of Enterprise features will always require a license.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we still say "use of Enterprise features" -- with the new licensing change, all features require a license.

This will happen in the following cases:

- The cluster is not following telemetry requirements.
- There is a 7 day grace period for **Enterprise Free** and **Enterprise Trial** clusters to (re)start sending telemetry. This applies when a cluster is newly created, or any time there is an interruption in telemetry.
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this should say "applies when the license is first added" (or something along those lines) instead of when a cluster is newly created.

Copy link

@jaiayu jaiayu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @rmloveland! I reviewed the latest version and resolved most of my open comments. Added new comments for a couple of small things.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants