From a25306fbd4b4a5520f79d6a0dfa39e624f07846e Mon Sep 17 00:00:00 2001 From: Tamal Saha Date: Tue, 21 Apr 2026 00:23:06 +0600 Subject: [PATCH 1/2] Rebrand AppsCode Platform / ACE to KubeDB Platform Replace all user-facing references to AppsCode Platform, AppsCode Cloud Engine (ACE), and Ace with KubeDB Platform across the documentation. Technical identifiers are preserved unchanged: - ace.appscode.com/* Kubernetes API annotations - ace-incluster, ace-licenseserver-cred Kubernetes resource names - ace-dashboard.png and other image filenames - Shell commands using 'ace' as Kubernetes namespace/release name - YAML identifier slugs used for internal doc navigation Signed-off-by: Tamal Saha --- .../kubernetes/credentials.md | 4 +- .../site-administration/ace-upgrade.md | 16 +++---- .../guides/billing-and-usage-guide/_index.md | 2 +- .../billing-and-usage-guide/overview.md | 6 +-- .../cluster-management/cluster-features.md | 2 +- .../cluster-management/cluster-overview.md | 2 +- docs/platform/guides/get-started/_index.md | 2 +- .../guides/get-started/add-cluster.md | 2 +- .../guides/get-started/add-credential.md | 2 +- .../guides/get-started/architecture.md | 10 ++--- .../guides/get-started/enable-features.md | 4 +- .../guides/get-started/register-login.md | 14 +++---- .../guides/get-started/requirements.md | 16 +++---- docs/platform/guides/integrations/_index.md | 2 +- .../guides/integrations/rancher-extension.md | 18 ++++---- .../guides/license-management/_index.md | 2 +- .../guides/license-management/contract.md | 12 +++--- .../license-management/license-proxyserver.md | 42 +++++++++---------- .../guides/license-management/overview.md | 14 +++---- .../license-management/troubleshoots.md | 24 +++++------ docs/platform/selfhost-setup/README.md | 4 +- .../selfhost-setup/install/aws-marketplace.md | 12 +++--- .../install/azure-marketplace.md | 12 +++--- .../selfhost-setup/install/cloud-demo.md | 14 +++---- .../selfhost-setup/install/k8s-app-demo.md | 14 +++---- .../selfhost-setup/install/onprem-demo.md | 14 +++---- .../selfhost-setup/install/openshift-demo.md | 12 +++--- .../install/selfhosted-production.md | 20 ++++----- 28 files changed, 149 insertions(+), 149 deletions(-) diff --git a/docs/platform/guides/account-management/kubernetes/credentials.md b/docs/platform/guides/account-management/kubernetes/credentials.md index 5bd9c67..b1b440f 100644 --- a/docs/platform/guides/account-management/kubernetes/credentials.md +++ b/docs/platform/guides/account-management/kubernetes/credentials.md @@ -357,7 +357,7 @@ Then add the credential [here](https://home.appscode.com/user/settings/credentia ## Rancher -To access Rancher clusters through AppsCode, you need to create an API token in your Rancher system. Follow these steps: +To access Rancher clusters through KubeDB Platform, you need to create an API token in your Rancher system. Follow these steps: 1. In Rancher, click on the profile icon. 2. Select `Account & API Keys`. @@ -369,7 +369,7 @@ Reference: [Rancher API Keys](https://ranchermanager.docs.rancher.com/reference- Copy the generated access key, secret key, and API endpoint from the `Account & API Keys` overview page. -Next, add these credentials to the [AppsCode user settings credentials page](https://home.appscode.com/user/settings/credentials/create). +Next, add these credentials to the [KubeDB Platform user settings credentials page](https://home.appscode.com/user/settings/credentials/create). diff --git a/docs/platform/guides/account-management/site-administration/ace-upgrade.md b/docs/platform/guides/account-management/site-administration/ace-upgrade.md index ff00bfd..1a41ffa 100644 --- a/docs/platform/guides/account-management/site-administration/ace-upgrade.md +++ b/docs/platform/guides/account-management/site-administration/ace-upgrade.md @@ -3,7 +3,7 @@ layout: docs menu: docsplatform_{{.version}}: identifier: account-management-siteadmin-ace-upgrade - name: ACE Upgrade + name: KubeDB Platform Upgrade parent: account-management-siteadmin weight: 60 menu_name: docsplatform_{{.version}} @@ -11,9 +11,9 @@ section_menu_id: guides --- -# ACE Upgrade +# KubeDB Platform Upgrade -Site administrators can upgrade the AppsCode Enterprise (ACE) management cluster directly from the platform UI by uploading a configuration file downloaded from the AppsCode portal. +Site administrators can upgrade the KubeDB Platform management cluster directly from the platform UI by uploading a configuration file downloaded from the KubeDB Platform portal. --- @@ -27,13 +27,13 @@ Before starting the upgrade, download the required values file from the AppsCode --- -## Step 1 — Open ACE Upgrade +## Step 1 — Open KubeDB Platform Upgrade -![ACE Version Page](../images/upgrade-version-1.png) +![KubeDB Platform Version Page](../images/upgrade-version-1.png) -Go to **SITE ADMINISTRATION > ACE Upgrade** from the left-hand menu. +Go to **SITE ADMINISTRATION > KubeDB Platform Upgrade** from the left-hand menu. -The page displays the current ACE version and the upgrade status of all platform components. Click the **Upgrade Version** button at the top right to begin. +The page displays the current KubeDB Platform version and the upgrade status of all platform components. Click the **Upgrade Version** button at the top right to begin. --- @@ -41,7 +41,7 @@ The page displays the current ACE version and the upgrade status of all platform ![Upload Values File](../images/upgrade-version-2.png) -On the **Upgrade ACE** screen: +On the **Upgrade KubeDB Platform** screen: - Click **Upload values file...** and select the `values.yaml` file downloaded from the AppsCode portal. - Click **Update Version** to start the upgrade process. diff --git a/docs/platform/guides/billing-and-usage-guide/_index.md b/docs/platform/guides/billing-and-usage-guide/_index.md index f2b9df2..9788463 100644 --- a/docs/platform/guides/billing-and-usage-guide/_index.md +++ b/docs/platform/guides/billing-and-usage-guide/_index.md @@ -5,7 +5,7 @@ menu: identifier: billing-and-usage-guide name: Billing and Usage Guide parent: guides - description: Billing and Usage Guide for AppsCode's products + description: Billing and Usage Guide for KubeDB Platform's products icon: https://img.icons8.com/external-anggara-basic-outline-anggara-putra/96/external-stats-ui-anggara-basic-outline-anggara-putra.png popular: true weight: 50 diff --git a/docs/platform/guides/billing-and-usage-guide/overview.md b/docs/platform/guides/billing-and-usage-guide/overview.md index 4e9a457..1b6184d 100644 --- a/docs/platform/guides/billing-and-usage-guide/overview.md +++ b/docs/platform/guides/billing-and-usage-guide/overview.md @@ -14,11 +14,11 @@ section_menu_id: guides This document provides a detailed overview of the **Usage** section within our billing system. It explains how to navigate the user interface, monitor resource consumption, and configure **clusters** and **namespaces** for effective cost management. -## **AppsCode Billing Console — Usage** +## **KubeDB Platform Billing Console — Usage** -The AppsCode Billing Console is a web-based hub at [AppsCode Billing Console](https://appscode.com/billing) where you can manage contracts, link clusters, generate license-proxyserver installers, track licensed clusters, and **monitor usage—all in one place**. +The KubeDB Platform Billing Console is a web-based hub at [KubeDB Platform Billing Console](https://appscode.com/billing) where you can manage contracts, link clusters, generate license-proxyserver installers, track licensed clusters, and **monitor usage—all in one place**. -This section focuses on the **Usage** dashboard, which shows the resources consumed by downstream AppsCode services like KubeDB running in your clusters. +This section focuses on the **Usage** dashboard, which shows the resources consumed by downstream KubeDB Platform services like KubeDB running in your clusters. ![usage-dashboard](../images/usage-section-home.png) diff --git a/docs/platform/guides/cluster-management/cluster-features.md b/docs/platform/guides/cluster-management/cluster-features.md index b302915..e705cb2 100644 --- a/docs/platform/guides/cluster-management/cluster-features.md +++ b/docs/platform/guides/cluster-management/cluster-features.md @@ -37,7 +37,7 @@ The Feature Sets grid on the Cluster Overview page shows all available product m | **Multicluster Spoke** | Connect this cluster as a spoke to an existing Multicluster Hub. | | **Networking Addons** | Various networking plugins and extensions for Kubernetes. | | **Observability** | Cluster monitoring, metrics, and dashboards using Prometheus and Grafana. | -| **Opscenter Tools** | DevOps tooling and management utilities for ACE. | +| **Opscenter Tools** | DevOps tooling and management utilities for KubeDB Platform. | | **Policy Management** | Platform-level policy enforcement tools. | | **Secret Management** | Tools for secure secret storage and distribution across namespaces. | | **Security** | TLS certificate management, secret scanning, and image vulnerability tooling. | diff --git a/docs/platform/guides/cluster-management/cluster-overview.md b/docs/platform/guides/cluster-management/cluster-overview.md index ad4b338..470426b 100644 --- a/docs/platform/guides/cluster-management/cluster-overview.md +++ b/docs/platform/guides/cluster-management/cluster-overview.md @@ -88,7 +88,7 @@ Scroll down past the **Basic** section to see the **Feature Sets** grid. Each ca | **Multicluster Spoke** | Connect this cluster as a spoke to a hub | | **Networking Addons** | Various networking addons for Kubernetes | | **Observability** | Cluster monitoring with Prometheus and Grafana | -| **Opscenter Tools** | DevOps tools for ACE | +| **Opscenter Tools** | DevOps tools for KubeDB Platform | | **Policy Management** | Platform policy management tools | | **Secret Management** | Tools for secret management | | **Security** | TLS, secret scanning, and vulnerability tools | diff --git a/docs/platform/guides/get-started/_index.md b/docs/platform/guides/get-started/_index.md index 679b582..e7d2804 100644 --- a/docs/platform/guides/get-started/_index.md +++ b/docs/platform/guides/get-started/_index.md @@ -5,7 +5,7 @@ menu: identifier: guide-start name: Get Started parent: guides - description: Basic information and instructions for first-time users of AppsCode + description: Basic information and instructions for first-time users of KubeDB Platform icon: https://img.icons8.com/00994A/ios/50/rocket--v1.png popular: true weight: 10 diff --git a/docs/platform/guides/get-started/add-cluster.md b/docs/platform/guides/get-started/add-cluster.md index d162f9f..3c94e77 100644 --- a/docs/platform/guides/get-started/add-cluster.md +++ b/docs/platform/guides/get-started/add-cluster.md @@ -13,7 +13,7 @@ section_menu_id: guides # Add a Kubernetes Cluster -With your credentials in place, it's time to connect your Kubernetes cluster to the Platform Console. This step allows AppsCode to seamlessly manage and provide insights into your cluster. +With your credentials in place, it's time to connect your Kubernetes cluster to the Platform Console. This step allows KubeDB Platform to seamlessly manage and provide insights into your cluster. Follow these steps to import your Kubernetes cluster: diff --git a/docs/platform/guides/get-started/add-credential.md b/docs/platform/guides/get-started/add-credential.md index 7defaf7..44b6597 100644 --- a/docs/platform/guides/get-started/add-credential.md +++ b/docs/platform/guides/get-started/add-credential.md @@ -13,7 +13,7 @@ section_menu_id: guides # Add Credential -Now that you have successfully registered and logged in to the Platform Console, let's take the next step in setting up your environment. The first crucial task is to add credentials for your Kubernetes clusters. This ensures a secure connection and allows AppsCode to seamlessly manage your clusters. +Now that you have successfully registered and logged in to the Platform Console, let's take the next step in setting up your environment. The first crucial task is to add credentials for your Kubernetes clusters. This ensures a secure connection and allows KubeDB Platform to seamlessly manage your clusters. Follow these steps to add your credentials: diff --git a/docs/platform/guides/get-started/architecture.md b/docs/platform/guides/get-started/architecture.md index c54831b..dff0c6e 100644 --- a/docs/platform/guides/get-started/architecture.md +++ b/docs/platform/guides/get-started/architecture.md @@ -15,14 +15,14 @@ Let's first discuss some basic terminologies, those will be repeated many times ![architecture](../images/architecture.png) -### ACE -ACE is the central management cluster where we will deploy all the ui-components. Namely the `backend server(ace-platform-api)`, `kubedb-ui`, `cluster-ui`, `billing-ui`, `platform-ui`, `grafana-ui`, ingresses etc. This will be mainly used by the administrators & devops engineers. +### KubeDB Platform +KubeDB Platform is the central management cluster where we will deploy all the ui-components. Namely the `backend server(ace-platform-api)`, `kubedb-ui`, `cluster-ui`, `billing-ui`, `platform-ui`, `grafana-ui`, ingresses etc. This will be mainly used by the administrators & devops engineers. As this is the central point of management, we call it `Management cluster`. As all the UI-components installed in this, we sometimes call `UI cluster`. We also have native-integration of [OCM hub-spoke model](https://open-cluster-management.io/docs/concepts/architecture/). This is by-default enabled. This integration enables the cluster-manager to easily do similar changes(for example: installing a feature) centrally. -ACE is used as the hub of OCM mode. Thats why we call this `Hub cluster` too. +KubeDB Platform is used as the hub of OCM mode. Thats why we call this `Hub cluster` too. -The ACE cluster can be a single-node k3s cluster for staging or development. Or a full-fledged multi-node cluster for prod. +The KubeDB Platform cluster can be a single-node k3s cluster for staging or development. Or a full-fledged multi-node cluster for prod. The installer page on the `selfhost-ui` on appscode.com provides instructions for quickly setting up a K3s cluster to get started immediately. @@ -32,4 +32,4 @@ While importing, if someone make it a spoke, then cluster-manager-spoke features If you don't want to manage it from the hub, we can just import it as a general cluster. In that case, that auto-sync from hub will not happen. -Both ACE & DBaaS clusters can be of any vendors like AWS, Azure, Google Cloud etc. It can be an on-prem cluster too. \ No newline at end of file +Both KubeDB Platform & DBaaS clusters can be of any vendors like AWS, Azure, Google Cloud etc. It can be an on-prem cluster too. \ No newline at end of file diff --git a/docs/platform/guides/get-started/enable-features.md b/docs/platform/guides/get-started/enable-features.md index 78bff21..773ccce 100644 --- a/docs/platform/guides/get-started/enable-features.md +++ b/docs/platform/guides/get-started/enable-features.md @@ -14,13 +14,13 @@ section_menu_id: guides # Enable Features -Once your cluster is imported, you can enable or disable AppsCode features based on your requirements. +Once your cluster is imported, you can enable or disable KubeDB Platform features based on your requirements. 1. Navigate to your Cluster Overview page, selecting your imported cluster in the [Platform Console](https://console.appscode.com/). 2. In the "Feature Sets" section, you'll find a list of FeatureSets associated with your cluster, along with their current status. 3. Click on any FeatureSet in the list to go to the FeatureSet Management page. 4. On the FeatureSet Management page, you can enable or disable specific features according to your needs. -Managing features in the Platform Console is a straightforward process that allows you to tailor your Platform Console to meet your cluster's requirements. Feel free to explore the features and capabilities offered by AppsCode. +Managing features in the Platform Console is a straightforward process that allows you to tailor your Platform Console to meet your cluster's requirements. Feel free to explore the features and capabilities offered by KubeDB Platform. For more advanced configurations and detailed documentation, check out the [Features in Details](../cluster-management/cluster-features.md). diff --git a/docs/platform/guides/get-started/register-login.md b/docs/platform/guides/get-started/register-login.md index 78a1b71..19a45a4 100644 --- a/docs/platform/guides/get-started/register-login.md +++ b/docs/platform/guides/get-started/register-login.md @@ -11,15 +11,15 @@ section_menu_id: guides --- -# Get Started with AppsCode +# Get Started with KubeDB Platform ## Register and Login -Welcome to AppsCode! This is a new version Follow these quick steps to get started: +Welcome to KubeDB Platform! This is a new version Follow these quick steps to get started: ### 1. Register for an Account -1. Navigate to the [AppsCode Registration Page](https://accounts.appscode.com/user/sign_up). +1. Navigate to the [KubeDB Platform Registration Page](https://accounts.appscode.com/user/sign_up). 2. Provide the following information: - Username - Email @@ -33,14 +33,14 @@ Welcome to AppsCode! This is a new version Follow these quick steps to get start ### 2. Verify Your Email -After registration, check your email inbox for a verification email from AppsCode. +After registration, check your email inbox for a verification email from KubeDB Platform. 1. Open the verification email. 2. Click on the verification link to confirm your account. -### 3. Log In to AppsCode +### 3. Log In to KubeDB Platform -1. Once your account is verified, go to the [AppsCode Login Page](https://accounts.appscode.com/user/login). +1. Once your account is verified, go to the [KubeDB Platform Login Page](https://accounts.appscode.com/user/login). 2. Enter your registered `Username` or `Email Address` and `Password`. 3. Click on the `Sign In` button. 4. Optionally, you can sign in using your connected External accounts. @@ -49,4 +49,4 @@ After registration, check your email inbox for a verification email from AppsCod You are now logged in to the Platform Console! Take a moment to explore the features and navigate through the dashboard. -Congratulations! You have successfully registered, verified your email, and logged in to AppsCode. If you encounter any issues or have questions, refer to the [AppsCode Documentation](https://appscode.com/docs/) for detailed guidance. \ No newline at end of file +Congratulations! You have successfully registered, verified your email, and logged in to KubeDB Platform. If you encounter any issues or have questions, refer to the [KubeDB Platform Documentation](https://appscode.com/docs/) for detailed guidance. \ No newline at end of file diff --git a/docs/platform/guides/get-started/requirements.md b/docs/platform/guides/get-started/requirements.md index a3e05d0..b1d9aa5 100644 --- a/docs/platform/guides/get-started/requirements.md +++ b/docs/platform/guides/get-started/requirements.md @@ -3,17 +3,17 @@ layout: docs menu: docsplatform_{{.version}}: identifier: guide-ace-requirements - name: ACE Requirements + name: KubeDB Platform Requirements parent: guide-start weight: 14 menu_name: docsplatform_{{.version}} section_menu_id: guides --- -# Requirements to deploy ACE -We will discuss the resources requirements. networking requirements & best practices for deploying your first ACE & DBaaS cluster. It is highly recommended to read the [architecture](https://appscode.com/docs/en/guides/get-started/architecture.html) doc first before continuing. +# Requirements to deploy KubeDB Platform +We will discuss the resources requirements. networking requirements & best practices for deploying your first KubeDB Platform & DBaaS cluster. It is highly recommended to read the [architecture](https://appscode.com/docs/en/guides/get-started/architecture.html) doc first before continuing. -## Requirements for ACE Cluster +## Requirements for KubeDB Platform Cluster ### 1. Resources **Minimum**: Single node with 4 cpu, 16 GB ram, 100 GB disk attached. A k3s cluster will be deployed on that VM. And then the ui-components will be installed. @@ -40,7 +40,7 @@ These are the required connectivities to everything work correctly: 3. 4222 - NATS.io port 4. 4224 - s3-proxy service port -Here is a sample video on how you can setup ACE: +Here is a sample video on how you can setup KubeDB Platform: ## Requirements for DBaaS Cluster @@ -52,7 +52,7 @@ Minimum: Kubernetes cluster with 3 worker nodes, each with 8- 16GB ram, PVC supp Note that, The largest node must be able to fit the largest DB Pod(in terms of CPU, memory). ### 2. Networking -Literally all the Networking requirements described for ACE are also applicable here, except the `Port Requiements` part. -Only one additional requirement here is that the DBaaS cluster should be accessible from the management/ACE cluster. +Literally all the Networking requirements described for KubeDB Platform are also applicable here, except the `Port Requiements` part. +Only one additional requirement here is that the DBaaS cluster should be accessible from the management/KubeDB Platform cluster. -You now have an overall idea on the requirements. So, [Login](https://appscode.com/docs/en/guides/get-started/register-login.html) into your account & get going with our [installer](https://appscode.com/selfhost/). Happy ACE! +You now have an overall idea on the requirements. So, [Login](https://appscode.com/docs/en/guides/get-started/register-login.html) into your account & get going with our [installer](https://appscode.com/selfhost/). Happy KubeDB Platform! diff --git a/docs/platform/guides/integrations/_index.md b/docs/platform/guides/integrations/_index.md index 650099d..b9d4adf 100644 --- a/docs/platform/guides/integrations/_index.md +++ b/docs/platform/guides/integrations/_index.md @@ -5,7 +5,7 @@ menu: identifier: integrations name: Integrations parent: guides - description: Integrate ACE into your Kubernetes platform + description: Integrate KubeDB Platform into your Kubernetes platform icon: https://img.icons8.com/?size=100&id=80695&format=png&color=000000 popular: true weight: 40 diff --git a/docs/platform/guides/integrations/rancher-extension.md b/docs/platform/guides/integrations/rancher-extension.md index 21e2d58..876565c 100644 --- a/docs/platform/guides/integrations/rancher-extension.md +++ b/docs/platform/guides/integrations/rancher-extension.md @@ -24,25 +24,25 @@ Before proceeding, make sure you have: - A Rancher setup with access to the **Local** cluster. - An account on [appscode.com](https://appscode.com/). -- The [ACE](https://appscode.com/docs/en/selfhost-setup/) platform deployed on your Rancher cluster. +- The [KubeDB Platform](https://appscode.com/docs/en/selfhost-setup/) deployed on your Rancher cluster. --- ## 2. Deploying the KubeDB Rancher Extension -### Step 1 – Deploy ACE +### Step 1 – Deploy KubeDB Platform 1. Create an account at [appscode.com](https://appscode.com/). -2. Follow the [self-hosting ACE guide](https://appscode.com/docs/en/selfhost-setup/) to deploy ACE on your Rancher cluster. - You can also watch this video tutorial for step-by-step instructions: [Self-Hosting ACE Video Guide](https://www.youtube.com/watch?v=1diG8qq73f4&list=PLoiT1Gv2KR1iqWFGkCozbLqYe31QMsQcX&index=2) +2. Follow the [self-hosting KubeDB Platform guide](https://appscode.com/docs/en/selfhost-setup/) to deploy KubeDB Platform on your Rancher cluster. + You can also watch this video tutorial for step-by-step instructions: [Self-Hosting KubeDB Platform Video Guide](https://www.youtube.com/watch?v=1diG8qq73f4&list=PLoiT1Gv2KR1iqWFGkCozbLqYe31QMsQcX&index=2) --- -### Step 2 – Create a Rancher-Type Organization in ACE -1. Visit your ACE URL and log in with your **admin account**. ![ACE URL](../images/ace-url.png) +### Step 2 – Create a Rancher-Type Organization in KubeDB Platform +1. Visit your KubeDB Platform URL and log in with your **admin account**. ![KubeDB Platform URL](../images/ace-url.png) 2. Navigate to **Organizations** and create a new organization with the type set to **Rancher**. 3. Provide a valid **Sync Token**. - > The Sync Token is used to synchronize Rancher users into the ACE platform. + > The Sync Token is used to synchronize Rancher users into the KubeDB Platform. ![Create Organization](../images/organization-create.png) @@ -50,7 +50,7 @@ Before proceeding, make sure you have: ### Step 3 – Sync Rancher Users 1. Go to **Organization Settings → Rancher Extension**. ![Organization Settings](../images/organization-settings.png) -2. Click **Sync User** to import Rancher users into ACE. ![Sync User](../images/organization-settings-sync-users.png) +2. Click **Sync User** to import Rancher users into KubeDB Platform. ![Sync User](../images/organization-settings-sync-users.png) --- @@ -110,4 +110,4 @@ Follow these steps to install the KubeDB extension in Rancher: ✅ Installation Complete! You can now deploy and manage your databases directly from the KubeDB menu in your cluster. -NB: Import your Rancher cluster into the ACE UI under the Rancher organization you created earlier before using the Rancher extension, or it won’t work. +NB: Import your Rancher cluster into the KubeDB Platform UI under the Rancher organization you created earlier before using the Rancher extension, or it won't work. diff --git a/docs/platform/guides/license-management/_index.md b/docs/platform/guides/license-management/_index.md index 6b180b9..12eae48 100644 --- a/docs/platform/guides/license-management/_index.md +++ b/docs/platform/guides/license-management/_index.md @@ -5,7 +5,7 @@ menu: identifier: license-management name: License Management parent: guides - description: License Management for AppsCode's products + description: License Management for KubeDB Platform's products icon: https://img.icons8.com/?size=100&id=80695&format=png&color=000000 popular: true weight: 40 diff --git a/docs/platform/guides/license-management/contract.md b/docs/platform/guides/license-management/contract.md index 0f347e0..980ba6c 100644 --- a/docs/platform/guides/license-management/contract.md +++ b/docs/platform/guides/license-management/contract.md @@ -14,7 +14,7 @@ section_menu_id: guides ## Contract A contract is basically a digital agreement of the licensing relationship between AppsCode and its customers. Each contract represents a formal agreement for the use of -specific AppsCode products, such as KubeDB or platform-enterprise, with defined validity periods and feature sets. +specific KubeDB Platform products, such as KubeDB or platform-enterprise, with defined validity periods and feature sets. The contract management system within the Billing Console provides comprehensive tools for creating, modifying, and monitoring contracts. Administrators can specify product details, validity periods, and associated features, ensuring that customers have access to the appropriate resources for their needs. @@ -23,7 +23,7 @@ product details, validity periods, and associated features, ensuring that custom Key information typically contained within a contract includes: -- **Product:** The specific AppsCode product or bundle covered by the contract (e.g., `kubedb-enterprise`, `platform-enterprise` etc.). +- **Product:** The specific KubeDB Platform product or bundle covered by the contract (e.g., `kubedb-enterprise`, `platform-enterprise` etc.). - **Org/User:** The organization or user account to which the contract is assigned. - **Status:** The current state of the contract (e.g., active, expired, revoked), managed by AppsCode administrators. - **Start Date:** The date from which the contract, and thus the license, becomes valid (not_before). @@ -34,7 +34,7 @@ Contracts ensure that product usage is aligned with the purchased entitlements, ### Managing Cluster Associations with Contracts -For AppsCode products to operate with a valid license on a Kubernetes cluster, customers must explicitly associate that cluster with one or more active contracts +For KubeDB Platform products to operate with a valid license on a Kubernetes cluster, customers must explicitly associate that cluster with one or more active contracts made available to them in the Billing Console. This capability is a key `self-service` feature, allowing customers to dynamically manage which of their Kubernetes environments are licensed under a given contract, within the overall terms and capacity of that agreement. @@ -58,13 +58,13 @@ To remove a cluster's authorization to use licensed products under a specific co 2. **Locate and Remove:** In the `Cluster` section, find the cluster in the associated clusters list that needs to be removed. 3. **Confirm Removal:** Select the `Remove` option (often represented by a `trash` icon) next to the cluster and confirm the action when prompted. ![Cluster Delete](../images/cluster-delete.png) -After removal, the cluster will no longer be authorized to use the licensed products associated with that contract. Any installed AppsCode products on that cluster may revert to their community or limited functionality, depending on their licensing model. +After removal, the cluster will no longer be authorized to use the licensed products associated with that contract. Any installed KubeDB Platform products on that cluster may revert to their community or limited functionality, depending on their licensing model. **Audit Trail:** The Billing Console maintains an audit trail of changes to cluster associations, logging which user performed the action and when. This feature is vital for tracking, security, and troubleshooting. ![Audit Trail](../images/audits.png) ### Cluster Contract Relationship -The AppsCode License Management System supports flexible relationships between clusters and contracts: +The KubeDB Platform License Management System supports flexible relationships between clusters and contracts: 1. **Many-to-One:** Multiple clusters can be associated with a single contract. 2. **One-to-Many:** A single cluster can be associated with multiple contracts for different products. 3. **Many-to-Many:** Multiple clusters can be associated with multiple contracts. @@ -77,7 +77,7 @@ The operational mode of a contract (`online` or `offline`) is a critical setting **Online Mode:** - This is the standard mode for contracts where clusters have internet access. -- The `license-proxyserver` in the customer's cluster regularly connects to AppsCode's central licensing servers (e.g., `AppsCode.com`s) for license `validation` and `renewal`. +- The `license-proxyserver` in the customer's cluster regularly connects to KubeDB Platform's central licensing servers (e.g., `AppsCode.com`s) for license `validation` and `renewal`. - Licenses are typically issued for shorter durations (e.g., `7 days` by default) and are automatically rotated. - This mode facilitates dynamic license management and ensures continuous validation against the current contract status. diff --git a/docs/platform/guides/license-management/license-proxyserver.md b/docs/platform/guides/license-management/license-proxyserver.md index 601b453..b76b8f6 100644 --- a/docs/platform/guides/license-management/license-proxyserver.md +++ b/docs/platform/guides/license-management/license-proxyserver.md @@ -12,23 +12,23 @@ section_menu_id: guides ## The License Proxy Server -The `license-proxyserver` is a critical component of the AppsCode License Management System, deployed within customer Kubernetes clusters to validate and apply licenses to AppsCode products. +The `license-proxyserver` is a critical component of the KubeDB Platform License Management System, deployed within customer Kubernetes clusters to validate and apply licenses to KubeDB Platform products. ### 1. Purpose and Architecture The primary purpose of the `license-proxyserver` is to: -- **Serve Licenses:** Provide valid license tokens to AppsCode products (e.g., KubeDB, KubeStash, KubeVault operators and provisioners) running within the same Kubernetes cluster. +- **Serve Licenses:** Provide valid license tokens to KubeDB Platform products (e.g., KubeDB, KubeStash, KubeVault operators and provisioners) running within the same Kubernetes cluster. - **Validate Licenses:** - In **Online Mode**, The `license-proxyserver` connects periodically to the Billing Server to validate and rotate licenses. This mode provides automatic license updates and ensures that changes to contract status are reflected promptly in the customer environment. - In **Offline Mode**, The `license-proxyserver` operates without connecting to the Billing Server. Instead, it uses `pre-generated` licenses embedded in the installer until the embedded licenses are expired. This mode is ideal for `air-gapped` environments or scenarios where external connections are restricted. -- **Centralized License Management within the Cluster:** Simplifies license management for multiple AppsCode products within a single cluster by acting as a common point for license queries. +- **Centralized License Management within the Cluster:** Simplifies license management for multiple KubeDB Platform products within a single cluster by acting as a common point for license queries. #### Architectural Flow -1. **AppsCode Product Request:** When an AppsCode product (e.g., KubeDB operator) starts or performs a licensed operation, it requests a license from the License Proxy Server running in its cluster. +1. **KubeDB Platform Product Request:** When a KubeDB Platform product (e.g., KubeDB operator) starts or performs a licensed operation, it requests a license from the License Proxy Server running in its cluster. 2. **License Proxy Server Response:** - - **Online Mode:** If the `license-proxyserver` has a valid, cached license, it provides it immediately. If the license is nearing its expiration, has already expired, or is otherwise invalid, the `license-proxyserver` attempts to contact AppsCode `Billing Backend` to fetch a new license. This new license is based on the active contracts associated with that specific cluster. - - **Offline Mode:** The `license-proxyserver` primarily uses the pre-generated licenses embedded in its installer. It operates without connecting to the Billing Console for routine validation. However, if all embedded licenses are found to be expired or have been revoked, the `license-proxyserver` will, as a fallback, attempt to fetch new licenses from the AppsCode billing backend. This means that even in air-gapped environments, a temporary or controlled outbound connection might be necessary for license renewal or recovery if the embedded licenses become invalid over time. + - **Online Mode:** If the `license-proxyserver` has a valid, cached license, it provides it immediately. If the license is nearing its expiration, has already expired, or is otherwise invalid, the `license-proxyserver` attempts to contact KubeDB Platform `Billing Backend` to fetch a new license. This new license is based on the active contracts associated with that specific cluster. + - **Offline Mode:** The `license-proxyserver` primarily uses the pre-generated licenses embedded in its installer. It operates without connecting to the Billing Console for routine validation. However, if all embedded licenses are found to be expired or have been revoked, the `license-proxyserver` will, as a fallback, attempt to fetch new licenses from the KubeDB Platform billing backend. This means that even in air-gapped environments, a temporary or controlled outbound connection might be necessary for license renewal or recovery if the embedded licenses become invalid over time. > Each mode offers distinct advantages and is suitable for different operational contexts. 3. **Product Operation:** A valid license allows the product to operate with its full feature set, while an invalid or absent license may lead to reduced functionality or prevent the product from operating. @@ -36,7 +36,7 @@ The primary purpose of the `license-proxyserver` is to: ### 2. Generating the License Proxy Server Installer -The AppsCode Billing Console provides a dedicated interface for generating the necessary deployment manifests (typically a `Helm chart` or `YAML files`) for the `license-proxyserver`. The generation process requires the administrator to choose the operational mode for which the installer is being created: `online` or `offline`. +The KubeDB Platform Billing Console provides a dedicated interface for generating the necessary deployment manifests (typically a `Helm chart` or `YAML files`) for the `license-proxyserver`. The generation process requires the administrator to choose the operational mode for which the installer is being created: `online` or `offline`. This choice dictates how the installer is packaged and how the deployed `license-proxyserver` will behave regarding license validation. #### Online Mode Deployment @@ -48,24 +48,24 @@ Online mode is suitable for clusters with reliable internet connectivity, allowi When the `Online` option is selected for installer generation in the Billing Console, the system prepares a standard `license-proxyserver` installer. ![Online Installer](../images/online-installer.png) This installer is typically provided as a `Helm` commands or `YAML files`, as seen in the `Scripts` pop-up. ![Online Installer Scripts](../images/online-installer-scripts.png) -The generated installer configures the license-proxyserver to communicate with the AppsCode licensing backend. The cluster where this `license-proxyserver` is installed must be `associated with one or more online contracts` in the Billing Console for successful license acquisition. +The generated installer configures the license-proxyserver to communicate with the KubeDB Platform licensing backend. The cluster where this `license-proxyserver` is installed must be `associated with one or more online contracts` in the Billing Console for successful license acquisition. Key configurations embedded in the installer include: -- The base URL for the AppsCode licensing backend, explicitly set (e.g., `-set platform.baseURL=https://AppsCode.com`). This ensures the `license-proxyserver` knows where to connect for license validation and updates. -- A platform token (e.g., `-set platform.token=dc823391fc8d6d9ca10f47a1ed07************`). This token is used by the `license-proxyserver` to authenticate itself with the AppsCode backend and identify which licenses it is eligible for. +- The base URL for the KubeDB Platform licensing backend, explicitly set (e.g., `-set platform.baseURL=https://AppsCode.com`). This ensures the `license-proxyserver` knows where to connect for license validation and updates. +- A platform token (e.g., `-set platform.token=dc823391fc8d6d9ca10f47a1ed07************`). This token is used by the `license-proxyserver` to authenticate itself with the KubeDB Platform backend and identify which licenses it is eligible for. #### License Acquisition and Rotation - **Initial Acquisition:** Upon startup, the `license-proxyserver` contacts AppsCode.com, identifies its cluster (based on its configuration or a token provided during installation), and requests licenses for the products covered by any active online contracts associated with that cluster. -- **Periodic Rotation:** Licenses issued in online mode have a finite, relatively short lifespan (e.g., the default is 7 days). Before a license expires, the `license-proxyserver` automatically attempts to renew it by contacting the AppsCode backend. This ensures continuous legal operation of the products. +- **Periodic Rotation:** Licenses issued in online mode have a finite, relatively short lifespan (e.g., the default is 7 days). Before a license expires, the `license-proxyserver` automatically attempts to renew it by contacting the KubeDB Platform backend. This ensures continuous legal operation of the products. **Benefits:** - **Up-to-date Compliance:** Ensures the cluster is always checked against the latest contract status. If a contract is terminated or expires, new licenses will not be issued, maintaining compliance. -- **Dynamic Updates:** Allows AppsCode to propagate updates to license terms or features if necessary, which would be picked up during a renewal cycle. +- **Dynamic Updates:** Allows KubeDB Platform to propagate updates to license terms or features if necessary, which would be picked up during a renewal cycle. > **Requirements:** -> - The `license-proxyserver` must have consistent outbound `HTTPS` (typically port 443) connectivity to the AppsCode licensing endpoints. +> - The `license-proxyserver` must have consistent outbound `HTTPS` (typically port 443) connectivity to the KubeDB Platform licensing endpoints. > - `Firewall` rules in the customer's environment must `permit` this communication. #### Offline Mode Deployment @@ -73,7 +73,7 @@ Key configurations embedded in the installer include: Offline mode caters to environments that are air-gapped or have stringent restrictions on external network communications. It is ideal for sectors like finance, government, or critical infrastructure, where Kubernetes cluster environments are completely offline. #### Enabling Offline Contracts -The prerequisite for generating an offline `license-proxyserver` installer is that the relevant contract(s) in the AppsCode Billing Console must be explicitly +The prerequisite for generating an offline `license-proxyserver` installer is that the relevant contract(s) in the KubeDB Platform Billing Console must be explicitly designated as `offline` type by an [AppsCode administrators](https://AppsCode.com/contact/). This tells the system that licenses derived from this contract should be `long-lived` and not require `online renewal`. #### Installer Generation for Offline Mode @@ -87,7 +87,7 @@ Generating an installer for offline mode is a multi-step process, designed to em #### License Characteristics in Offline Mode - **Full Duration Licenses:** Offline licenses are valid for the entire contract term, e.g., June 1, 2025, to May 31, 2026. -- **No Periodic Online Rotation (Initially):** Self-contained licenses don’t need AppsCode server contact until expiration. +- **No Periodic Online Rotation (Initially):** Self-contained licenses don't need KubeDB Platform server contact until expiration. - **Fallback to Online Mode:** Expired offline licenses trigger the license-proxyserver to fetch new licenses online, mimicking online mode. - **Self-Contained Deployment:** Licensing data is embedded in the license-proxyserver, allowing disconnected operation while licenses are valid. - **Updates Require New Installer:** Contract extensions or expired licenses require a new installer from the Billing Console, which must be upgraded or reinstalled to maintain or restore offline functionality. @@ -95,7 +95,7 @@ Generating an installer for offline mode is a multi-step process, designed to em ### 3. Verifying Product License Status -After the `license-proxyserver` is installed and AppsCode products are deployed, administrators can verify the license status directly within the Kubernetes cluster using `kubectl`. +After the `license-proxyserver` is installed and KubeDB Platform products are deployed, administrators can verify the license status directly within the Kubernetes cluster using `kubectl`. #### Using kubectl for License Verification @@ -105,17 +105,17 @@ The `license-proxyserver` component functions as an `extended API server` within kubectl get licensestatus ``` -This command will list the status of licenses being consumed by various AppsCode products within the cluster. +This command will list the status of licenses being consumed by various KubeDB Platform products within the cluster. ##### Interpreting licensestatus Output The output of `kubectl get licensestatus` provides several key pieces of information for each licensed component: - **ID:** A unique identifier for this specific license. -- **PRODUCT:** The name of the AppsCode product that this license status pertains to (e.g., `kubedb`, `kubestash`, `platform` etc.). -- **REQUESTER:** The specific `component` or `service account` within the cluster that requested and is utilizing this license. This helps pinpoint which part of an AppsCode product installation is covered by this license entry (e.g., `system:serviceaccount:kubedb:kubedb-kubedb-provisioner`). -- **CONTRACT:** This field indicates the identifier of the AppsCode contract which is utilized providing the license. There are two scenarios on how this field is populated:

- - If a cluster is not explicitly associated with any contract in the Billing Console, AppsCode automatically provides a `1-month (30-day)` free trial license. In such cases, the `CONTRACT` column in the `licensestatus` output will display `0`. This temporary license is particularly helpful for customers during initial testing and evaluation periods. Each cluster is eligible for this free trial only once. ![Free Trial License](../images/license-status-free-contract.png) +- **PRODUCT:** The name of the KubeDB Platform product that this license status pertains to (e.g., `kubedb`, `kubestash`, `platform` etc.). +- **REQUESTER:** The specific `component` or `service account` within the cluster that requested and is utilizing this license. This helps pinpoint which part of a KubeDB Platform product installation is covered by this license entry (e.g., `system:serviceaccount:kubedb:kubedb-kubedb-provisioner`). +- **CONTRACT:** This field indicates the identifier of the KubeDB Platform contract which is utilized providing the license. There are two scenarios on how this field is populated:

+ - If a cluster is not explicitly associated with any contract in the Billing Console, KubeDB Platform automatically provides a `1-month (30-day)` free trial license. In such cases, the `CONTRACT` column in the `licensestatus` output will display `0`. This temporary license is particularly helpful for customers during initial testing and evaluation periods. Each cluster is eligible for this free trial only once. ![Free Trial License](../images/license-status-free-contract.png) - Otherwise, if a cluster is associated with a specific contract, this column will display the actual `CONTRACT ID` from the Billing Console, allowing administrators to `cross-reference` the license with the detailed contract terms. ![Paid License](../images/license-status-paid-contract.png) - **VALID:** This field indicates the remaining validity period for the current license instance. - **ROTATES:** This field indicates when the license is next scheduled for rotation or renewal. diff --git a/docs/platform/guides/license-management/overview.md b/docs/platform/guides/license-management/overview.md index 5cb1a9d..c6c5faf 100644 --- a/docs/platform/guides/license-management/overview.md +++ b/docs/platform/guides/license-management/overview.md @@ -13,15 +13,15 @@ section_menu_id: guides ## Overview
-The AppsCode License Management System simplifies managing product licenses for Kubernetes deployments. It offers a centralized billing console for efficient license administration and secure validation, supporting both online and offline modes to suit various needs. +The KubeDB Platform License Management System simplifies managing product licenses for Kubernetes deployments. It offers a centralized billing console for efficient license administration and secure validation, supporting both online and offline modes to suit various needs. This guide explores the Billing Console, covering its key components, contract management, license-proxyserver deployment, and troubleshooting tips for common issues. By the end, you’ll know how to effectively manage licenses with this tool. -**Target Audience:** This guide is intended for `administrators` and `personnel` responsible for managing AppsCode's product licenses. +**Target Audience:** This guide is intended for `administrators` and `personnel` responsible for managing KubeDB Platform product licenses. -## AppsCode Billing Console
+## KubeDB Platform Billing Console
-A centralized web-based platform serving as the primary interface for licensing operations in the AppsCode ecosystem. Hosted on [AppsCode Billing Console](https://appsCode.com/billing), this self-managed system allows customers to manage `contracts` by associating clusters, generating `license-proxyserver` installers and tracking clusters for which licenses are generated. +A centralized web-based platform serving as the primary interface for licensing operations in the KubeDB Platform ecosystem. Hosted on [KubeDB Platform Billing Console](https://appsCode.com/billing), this self-managed system allows customers to manage `contracts` by associating clusters, generating `license-proxyserver` installers and tracking clusters for which licenses are generated. While AppsCode administrators are responsible for the core lifecycle of contracts—including their `creation`, `modification`, `revocation`, and `extension`—customers retain the ability to perform specific operations pertinent to the licensing lifecycle. This includes `associating` and `disassociating` their Kubernetes clusters with allocated contracts, generating `installers` for the `license-proxyserver` through the console, and track the `clusters` for which licenses have been issued. @@ -29,10 +29,10 @@ While AppsCode administrators are responsible for the core lifecycle of contract ### Key Components -- **Contracts:** Digital agreements, typically established by [AppsCode administrators](https://appsCode.com/contact/) within the Billing Console, that define the terms of AppsCode's product (e.g., ACE, KubeDB, KubeStash, KubeVault etc.) usage. This includes the specific AppsCode products which can be licensed, the duration of the contract, applicable features, and the clusters authorized to use these licenses. Contracts ensure that usage aligns with legal and financial terms, providing a foundation for all subsequent actions in the console. Contracts can be configured for either online or offline license validation. +- **Contracts:** Digital agreements, typically established by [AppsCode administrators](https://appsCode.com/contact/) within the Billing Console, that define the terms of KubeDB Platform's product (e.g., KubeDB Platform, KubeDB, KubeStash, KubeVault etc.) usage. This includes the specific KubeDB Platform products which can be licensed, the duration of the contract, applicable features, and the clusters authorized to use these licenses. Contracts ensure that usage aligns with legal and financial terms, providing a foundation for all subsequent actions in the console. Contracts can be configured for either online or offline license validation.

-- **Licensed cluster:** The `Licensed Cluster` section within the AppsCode Billing Console offers a comprehensive overview and detailed management capabilities for Kubernetes clusters that have been issued AppsCode product licenses. This component is pivotal for administrators to monitor the cluster(s) `licences` and `events` of licensed products across their infrastructure. +- **Licensed cluster:** The `Licensed Cluster` section within the KubeDB Platform Billing Console offers a comprehensive overview and detailed management capabilities for Kubernetes clusters that have been issued KubeDB Platform product licenses. This component is pivotal for administrators to monitor the cluster(s) `licences` and `events` of licensed products across their infrastructure.

-- **License Proxy Server:** A lightweight in-cluster component that validates licenses, either by connecting to AppsCode servers (online) or using preloaded licenses (offline). The console generates customized installers for deployment. Depending on the contract type (`online` or `offline`), it either periodically refreshes and validates licenses with AppsCode's central licensing servers or uses static preloaded licenses embedded during deployment for the full contract duration. +- **License Proxy Server:** A lightweight in-cluster component that validates licenses, either by connecting to KubeDB Platform servers (online) or using preloaded licenses (offline). The console generates customized installers for deployment. Depending on the contract type (`online` or `offline`), it either periodically refreshes and validates licenses with KubeDB Platform's central licensing servers or uses static preloaded licenses embedded during deployment for the full contract duration. These components work together to provide a seamless experience for license administrators, allowing them to efficiently manage the entire licensing `lifecycle` from a single interface. For instance, AppsCode's administrator creates a contract for KubeDB, and associates the contract to the target customer. Then from the customer panel, the customer can add a cluster to it, generates a customized installer for the `license-proxyserver`, deploys it to the cluster, and then monitors usage—all within the Billing Console. This integrated workflow eliminates the need for disparate tools or manual processes, saving time and reducing errors. diff --git a/docs/platform/guides/license-management/troubleshoots.md b/docs/platform/guides/license-management/troubleshoots.md index 2c8e2e7..f561f09 100644 --- a/docs/platform/guides/license-management/troubleshoots.md +++ b/docs/platform/guides/license-management/troubleshoots.md @@ -106,22 +106,22 @@ license-proxyserver ClusterIP 10.43.189.38 443/TCP,8080/TCP it indicates a problem with the `service selector` or the `license-proxyserver` pod itself (e.g., pod not `running`, `crashlooping`). -#### 4. Test AppsCode Backend Connectivity (for Online Mode/Fallback) -If the `in-cluster` components of the `license-proxyserver` appear healthy, and you are operating in `Online Mode` or troubleshooting an `Offline Mode fallback` scenario, verify that the cluster can reach the AppsCode licensing backend. +#### 4. Test KubeDB Platform Backend Connectivity (for Online Mode/Fallback) +If the `in-cluster` components of the `license-proxyserver` appear healthy, and you are operating in `Online Mode` or troubleshooting an `Offline Mode fallback` scenario, verify that the cluster can reach the KubeDB Platform licensing backend. -1. **Check Network Connectivity:** Ensure that the cluster has internet access and can reach the AppsCode licensing backend. This may involve checking `firewall rules`, `network policies`, or `proxy settings`.

+1. **Check Network Connectivity:** Ensure that the cluster has internet access and can reach the KubeDB Platform licensing backend. This may involve checking `firewall rules`, `network policies`, or `proxy settings`.

2. **Get Cluster ID:** Retrieve the unique identifier for your Kubernetes cluster: ```bash kubectl get ns kube-system -o=jsonpath='{.metadata.uid}' ``` Copy the output, which will be your ``.

-3. **Get Platform Token:** Extract the platform token used by the `license-proxyserver` for authentication with the AppsCode backend: +3. **Get Platform Token:** Extract the platform token used by the `license-proxyserver` for authentication with the KubeDB Platform backend: ```bash kubectl get secrets -n kubeops ace-licenseserver-cred -o=jsonpath='{.data.license-proxyserver\.yaml}' | base64 -d ``` From the output, locate the token field under `platform:` (e.g., `token: ac9b9eeec181fb09j73ab1604bd0180a4361e859`). Copy this value as your ``.

-4. **Get License Using CURL:** Perform a `curl` request to the AppsCode Backend: Use `curl` from within a pod in your cluster (or a machine with network access to the cluster's outbound internet) to simulate a - license request to the AppsCode backend. Replace `` and `` with the values obtained in the previous steps. The features can be get from the Contract details page in AppsCode Billing Console +4. **Get License Using CURL:** Perform a `curl` request to the KubeDB Platform Backend: Use `curl` from within a pod in your cluster (or a machine with network access to the cluster's outbound internet) to simulate a + license request to the KubeDB Platform backend. Replace `` and `` with the values obtained in the previous steps. The features can be get from the Contract details page in KubeDB Platform Billing Console ```bash curl -k -X 'POST' -d '{"cluster":"","features":["kubedb-enterprise"]}' \ -H 'Authorization: Bearer ' \ @@ -130,7 +130,7 @@ If the `in-cluster` components of the `license-proxyserver` appear healthy, and 'https://api.AppsCode.com/api/v1/license/issue' --compressed ``` **Expected curl Response Analysis:** - A successful response indicates that your cluster can communicate with the AppsCode backend and that the authentication token is valid. The response will contain `contract` and `license` sections: + A successful response indicates that your cluster can communicate with the KubeDB Platform backend and that the authentication token is valid. The response will contain `contract` and `license` sections: ```json { "contract": { @@ -142,13 +142,13 @@ If the `in-cluster` components of the `license-proxyserver` appear healthy, and } ``` **Interpretation:** - - `contract.id:` This field is crucial. If it displays `0`, it indicates that the license issued is a `1-month (30-day)` free `trial` license, automatically provided by AppsCode because the cluster is not explicitly associated with any paid contract. This is useful for initial testing. Each cluster is eligible for this free trial only once. + - `contract.id:` This field is crucial. If it displays `0`, it indicates that the license issued is a `1-month (30-day)` free `trial` license, automatically provided by KubeDB Platform because the cluster is not explicitly associated with any paid contract. This is useful for initial testing. Each cluster is eligible for this free trial only once. - `contract.startTimestamp` and `contract.expiryTimestamp:` These fields define the validity period of the contract under which the license was issued. - - `license:` This is the actual `Base64-encoded` license token. A valid token here confirms that the AppsCode backend successfully issued a license. - If the curl command fails (e.g., `connection refused`, `timeout`, `authentication` error), it indicates a network or authentication issue preventing the `license-proxyserver` from reaching the AppsCode backend. + - `license:` This is the actual `Base64-encoded` license token. A valid token here confirms that the KubeDB Platform backend successfully issued a license. + If the curl command fails (e.g., `connection refused`, `timeout`, `authentication` error), it indicates a network or authentication issue preventing the `license-proxyserver` from reaching the KubeDB Platform backend. #### 5. Conclusion -The AppsCode License Management System delivers a `lightweight`, `in-cluster` authority for fast, reliable license validation in Kubernetes. Its `online` and `offline` modes accommodate both +The KubeDB Platform License Management System delivers a `lightweight`, `in-cluster` authority for fast, reliable license validation in Kubernetes. Its `online` and `offline` modes accommodate both always-connected and isolated environments. It empowers customers with `self-service` capabilities for cluster association. -For unresolved issues, email [support@appscode.com](mailto:support@appscode.com) or [platform-support@appscode.com](mailto:support@appscode.com), or file a ticket at [AppsCode Contact](https://appscode.com/contact). \ No newline at end of file +For unresolved issues, email [support@appscode.com](mailto:support@appscode.com) or [platform-support@appscode.com](mailto:support@appscode.com), or file a ticket at [KubeDB Platform Contact](https://appscode.com/contact). \ No newline at end of file diff --git a/docs/platform/selfhost-setup/README.md b/docs/platform/selfhost-setup/README.md index 7b2dffa..32375ca 100644 --- a/docs/platform/selfhost-setup/README.md +++ b/docs/platform/selfhost-setup/README.md @@ -17,12 +17,12 @@ aliases: Welcome to KubeDB Platform's Self-Hosted deployment! Whether you're looking for a quick trial in "Self Hosted Demo" mode or gearing up for a production-ready environment (`Self Hosted Production`), you're in control. -Navigate to [AppsCode Self-Hosted](https://appscode.com/selfhost). Here you will find your previously generated self-hosted installers. +Navigate to [KubeDB Platform Self-Hosted](https://appscode.com/selfhost). Here you will find your previously generated self-hosted installers.

-Click on the `Create New Installer` button to get started. You can either choose deployment type `Self Hosted Demo` or `Self Hosted Production`. Provide the required data and click `Done` button to generate the installer. Upon generation of the installer, you will get the documentation how to host AppsCode Server on your own. +Click on the `Create New Installer` button to get started. You can either choose deployment type `Self Hosted Demo` or `Self Hosted Production`. Provide the required data and click `Done` button to generate the installer. Upon generation of the installer, you will get the documentation how to host KubeDB Platform Server on your own.

To get detailed documentation on `Self Hosted Demo` installer, head over to [Demo Deployment](install/selfhosted-demo.md). diff --git a/docs/platform/selfhost-setup/install/aws-marketplace.md b/docs/platform/selfhost-setup/install/aws-marketplace.md index 9939c53..708d351 100644 --- a/docs/platform/selfhost-setup/install/aws-marketplace.md +++ b/docs/platform/selfhost-setup/install/aws-marketplace.md @@ -14,7 +14,7 @@ section_menu_id: selfhost-setup Welcome to the KubeDB Platform's **AWS Marketplace** deployment! This guide will walk you through the deployment process via the **AWS Marketplace**, ensuring your environment is configured correctly for a seamless installation. -To install **ACE**, you need to have the permissions to manage **EC2**, **IAM**, **CloudFormation** etc. +To install **KubeDB Platform**, you need to have the permissions to manage **EC2**, **IAM**, **CloudFormation** etc. ### Prerequisite @@ -242,9 +242,9 @@ AmazonS3FullAccess (AWS Managed Policy) ``` ## Application Deployment -### 1. Visit the AppsCode Self-Hosted Page +### 1. Visit the KubeDB Platform Self-Hosted Page -Navigate to [AppsCode Self-Hosted](https://appscode.com/selfhost). Here you will find your previously generated self-hosted installers.
+Navigate to [KubeDB Platform Self-Hosted](https://appscode.com/selfhost). Here you will find your previously generated self-hosted installers.
Click on the `Create New Installer` button to get started. ### 2. Choose Deployment Mode And Environment @@ -267,7 +267,7 @@ These credentials define the primary super-user and the initial organizational s For openshift cluster toggle Red Hat OpenShift cluster and give Kube API Server endpoint ### 4. Registry -Ace requires access to various container registries and Helm repositories to pull necessary images and charts. +KubeDB Platform requires access to various container registries and Helm repositories to pull necessary images and charts. **Docker Registry:** Go to the docker registry section first then look for the following settings * **Proxies:** Put registry name for Appscode `r.appscode.com` and other Public Registries like Docker Hub, GitHub Container Registry (`ghcr.io`), Kubernetes Registry, Microsoft (`mcr.microsoft.com`), and Quay. @@ -290,7 +290,7 @@ In this section you can enable or disable features. You can also create an initi ### 7. Branding & UI Customization -Administrators can globally re-brand the Ace interface to match corporate identity. +Administrators can globally re-brand the KubeDB Platform interface to match corporate identity. * **App Name:** Changes the browser tab title. * **Primary Color:** Enter a Hex code (default: `#009948`). @@ -301,7 +301,7 @@ Administrators can globally re-brand the Ace interface to match corporate identi ### 8. Generate Installer and Documentation -Click the "Next" button to submit your information. AppsCode will generate the installer and provide the necessary documentation and further installation guideline in details. +Click the "Next" button to submit your information. KubeDB Platform will generate the installer and provide the necessary documentation and further installation guideline in details. You will find an `Installer URL` for this installer. You have to give this URL in the AWS Marketplace application. diff --git a/docs/platform/selfhost-setup/install/azure-marketplace.md b/docs/platform/selfhost-setup/install/azure-marketplace.md index a506bca..d76ee1b 100644 --- a/docs/platform/selfhost-setup/install/azure-marketplace.md +++ b/docs/platform/selfhost-setup/install/azure-marketplace.md @@ -28,16 +28,16 @@ The **Azure Marketplace** installation wizard will prompt you for specific confi If you encounter any issues during the deployment, please refer to our Official Documentation or contact with us. -### 2. Visit the AppsCode Self-Hosted Page +### 2. Visit the KubeDB Platform Self-Hosted Page -Navigate to [AppsCode Self-Hosted](https://appscode.com/selfhost). Here you will find your previously generated self-hosted installers.
+Navigate to [KubeDB Platform Self-Hosted](https://appscode.com/selfhost). Here you will find your previously generated self-hosted installers.
Click on the `Create New Installer` button to get started. ### 3. Choose Deployment Mode And Environment Choose `Deployment Type` -> `Azure Marketplace` and give it a name in the installer name section. -For deploying ACE using azure marketplace, you usually need these four pieces of information to establish a secure connection. These represent the "Identity" of your application and the "Address" of your billing/directory structure. +For deploying KubeDB Platform using azure marketplace, you usually need these four pieces of information to establish a secure connection. These represent the "Identity" of your application and the "Address" of your billing/directory structure. #### 1. Subscription ID The unique identifier for your **Azure Subscription**. This is where the actual billing for Marketplace services occurs. To get Subscription ID: @@ -85,7 +85,7 @@ For openshift cluster toggle Red Hat OpenShift cluster and give Kube API Server ### 5. Registry -Ace requires access to various container registries and Helm repositories to pull necessary images and charts. +KubeDB Platform requires access to various container registries and Helm repositories to pull necessary images and charts. **Docker Registry:** Go to the docker registry section first then look for the following settings * **Proxies:** Put registry name for Appscode `r.appscode.com` and other Public Registries like Docker Hub, GitHub Container Registry (`ghcr.io`), Kubernetes Registry, Microsoft (`mcr.microsoft.com`), and Quay. @@ -110,7 +110,7 @@ In this section you can enable or disable features. You can also create an init ### 8. Branding & UI Customization -Administrators can globally re-brand the Ace interface to match corporate identity. +Administrators can globally re-brand the KubeDB Platform interface to match corporate identity. * **App Name:** Changes the browser tab title. * **Primary Color:** Enter a Hex code (default: `#009948`). @@ -124,7 +124,7 @@ Administrators can globally re-brand the Ace interface to match corporate identi ### 9. Generate Installer and Documentation -Click the "Deploy" button to submit your information. AppsCode will generate the installer and provide the necessary documentation. +Click the "Deploy" button to submit your information. KubeDB Platform will generate the installer and provide the necessary documentation. ### 10. Deploy KubeDB Platform diff --git a/docs/platform/selfhost-setup/install/cloud-demo.md b/docs/platform/selfhost-setup/install/cloud-demo.md index 32ac1fd..eff5a6a 100644 --- a/docs/platform/selfhost-setup/install/cloud-demo.md +++ b/docs/platform/selfhost-setup/install/cloud-demo.md @@ -26,9 +26,9 @@ Before you begin, please ensure your Kubernetes cluster meets the following mini You will get an instruction to deploy a k3s cluster in Ubuntu VM or you can skip this step if you already have a cluster. -### 1. Visit the AppsCode Self-Hosted Page +### 1. Visit the KubeDB Platform Self-Hosted Page -Navigate to [AppsCode Self-Hosted](https://appscode.com/selfhost). Here you will find your previously generated self-hosted installers.
+Navigate to [KubeDB Platform Self-Hosted](https://appscode.com/selfhost). Here you will find your previously generated self-hosted installers.
Click on the `Create New Installer` button to get started. ### 2. Choose Deployment Mode @@ -76,7 +76,7 @@ These credentials define the primary super-user and the initial organizational s ### 4. Registry -Ace requires access to various container registries and Helm repositories to pull necessary images and charts. +KubeDB Platform requires access to various container registries and Helm repositories to pull necessary images and charts. **Docker Registry:** Go to the docker registry section first then look for the following settings * **Proxies:** Put registry name for Appscode `r.appscode.com` and other Public Registries like Docker Hub, GitHub Container Registry (`ghcr.io`), Kubernetes Registry, Microsoft (`mcr.microsoft.com`), and Quay. @@ -115,7 +115,7 @@ In this section you can enable or disable features ### 8. Branding & UI Customization -Administrators can globally re-brand the Ace interface to match corporate identity. +Administrators can globally re-brand the KubeDB Platform interface to match corporate identity. * **App Name:** Changes the browser tab title. * **Primary Color:** Enter a Hex code (default: `#009948`). @@ -129,11 +129,11 @@ Administrators can globally re-brand the Ace interface to match corporate identi ### 9. Generate Installer and Documentation -Click the "Deploy" button to submit your information. AppsCode will generate the installer and provide the necessary documentation. +Click the "Deploy" button to submit your information. KubeDB Platform will generate the installer and provide the necessary documentation. ### 10. Deploy KubeDB Platform -Follow the documentation provided by AppsCode to deploy the KubeDB Platform on your system. +Follow the documentation provided by KubeDB Platform to deploy the KubeDB Platform on your system. ### 11. Explore the Deployed Platform @@ -144,6 +144,6 @@ Once deployed, access the KubeDB Platform using the specified domain. Log in wit ## Get Support -If you encounter any challenges during the deployment or have questions, reach out to AppsCode support for assistance. +If you encounter any challenges during the deployment or have questions, reach out to KubeDB Platform support for assistance. Congratulations! You have successfully deployed the KubeDB Platform in Cloud Demo mode. Explore the features and capabilities of the platform in your customized environment. diff --git a/docs/platform/selfhost-setup/install/k8s-app-demo.md b/docs/platform/selfhost-setup/install/k8s-app-demo.md index 9451e4a..c30f478 100644 --- a/docs/platform/selfhost-setup/install/k8s-app-demo.md +++ b/docs/platform/selfhost-setup/install/k8s-app-demo.md @@ -25,9 +25,9 @@ Before you begin, please ensure your Kubernetes cluster meets the following mini You will get an instruction to deploy a k3s cluster in Ubuntu VM or you can skip this step if you already have a cluster. -### 1. Visit the AppsCode Self-Hosted Page +### 1. Visit the KubeDB Platform Self-Hosted Page -Navigate to [AppsCode Self-Hosted](https://appscode.com/selfhost). Here you will find your previously generated self-hosted installers.
+Navigate to [KubeDB Platform Self-Hosted](https://appscode.com/selfhost). Here you will find your previously generated self-hosted installers.
Click on the `Create New Installer` button to get started. ### 2. Choose Deployment Mode @@ -53,7 +53,7 @@ These credentials define the primary super-user and the initial organizational s ### 4. Registry -Ace requires access to various container registries and Helm repositories to pull necessary images and charts. +KubeDB Platform requires access to various container registries and Helm repositories to pull necessary images and charts. **Docker Registry:** Go to the docker registry section first then look for the following settings * **Proxies:** Put registry name for Appscode `r.appscode.com` and other Public Registries like Docker Hub, GitHub Container Registry (`ghcr.io`), Kubernetes Registry, Microsoft (`mcr.microsoft.com`), and Quay. @@ -82,7 +82,7 @@ In this section you can enable or disable features ### 7. Branding & UI Customization -Administrators can globally re-brand the Ace interface to match corporate identity. +Administrators can globally re-brand the KubeDB Platform interface to match corporate identity. * **App Name:** Changes the browser tab title. * **Primary Color:** Enter a Hex code (default: `#009948`). @@ -96,11 +96,11 @@ Administrators can globally re-brand the Ace interface to match corporate identi ### 8. Generate Installer and Documentation -Click the "Deploy" button to submit your information. AppsCode will generate the installer and provide the necessary documentation. +Click the "Deploy" button to submit your information. KubeDB Platform will generate the installer and provide the necessary documentation. ### 9. Deploy KubeDB Platform -Follow the documentation provided by AppsCode to deploy the KubeDB Platform on your system. +Follow the documentation provided by KubeDB Platform to deploy the KubeDB Platform on your system. ### 10. Explore the Deployed Platform @@ -111,6 +111,6 @@ Once deployed, access the KubeDB Platform using the specified domain. Log in wit ## Get Support -If you encounter any challenges during the deployment or have questions, reach out to AppsCode support for assistance. +If you encounter any challenges during the deployment or have questions, reach out to KubeDB Platform support for assistance. Congratulations! You have successfully deployed the KubeDB Platform in K8s App Demo mode. Explore the features and capabilities of the platform in your customized environment. \ No newline at end of file diff --git a/docs/platform/selfhost-setup/install/onprem-demo.md b/docs/platform/selfhost-setup/install/onprem-demo.md index ce15f0d..8f4b39d 100644 --- a/docs/platform/selfhost-setup/install/onprem-demo.md +++ b/docs/platform/selfhost-setup/install/onprem-demo.md @@ -24,9 +24,9 @@ Before you begin, please ensure your Kubernetes cluster meets the following mini You will get an instruction to deploy a k3s cluster in Ubuntu VM or you can skip this step if you already have a cluster. -### 1. Visit the AppsCode Self-Hosted Page +### 1. Visit the KubeDB Platform Self-Hosted Page -Navigate to [AppsCode Self-Hosted](https://appscode.com/selfhost). Here you will find your previously generated self-hosted installers.
+Navigate to [KubeDB Platform Self-Hosted](https://appscode.com/selfhost). Here you will find your previously generated self-hosted installers.
Click on the `Create New Installer` button to get started. ### 2. Choose Deployment Mode @@ -52,7 +52,7 @@ These credentials define the primary super-user and the initial organizational s ### 4. Registry -Ace requires access to various container registries and Helm repositories to pull necessary images and charts. +KubeDB Platform requires access to various container registries and Helm repositories to pull necessary images and charts. **Docker Registry:** Go to the docker registry section first then look for the following settings * **Proxies:** Put registry name for Appscode `r.appscode.com` and other Public Registries like Docker Hub, GitHub Container Registry (`ghcr.io`), Kubernetes Registry, Microsoft (`mcr.microsoft.com`), and Quay. @@ -118,7 +118,7 @@ In this section you can enable or disable features ### 10. Branding & UI Customization -Administrators can globally re-brand the Ace interface to match corporate identity. +Administrators can globally re-brand the KubeDB Platform interface to match corporate identity. * **App Name:** Changes the browser tab title. * **Primary Color:** Enter a Hex code (default: `#009948`). @@ -132,11 +132,11 @@ Administrators can globally re-brand the Ace interface to match corporate identi ### 11. Generate Installer and Documentation -Click the "Deploy" button to submit your information. AppsCode will generate the installer and provide the necessary documentation. +Click the "Deploy" button to submit your information. KubeDB Platform will generate the installer and provide the necessary documentation. ### 12. Deploy KubeDB Platform -Follow the documentation provided by AppsCode to deploy the KubeDB Platform on your system. +Follow the documentation provided by KubeDB Platform to deploy the KubeDB Platform on your system. ### 13. Explore the Deployed Platform @@ -147,6 +147,6 @@ Once deployed, access the KubeDB Platform using the specified domain. Log in wit ## Get Support -If you encounter any challenges during the deployment or have questions, reach out to AppsCode support for assistance. +If you encounter any challenges during the deployment or have questions, reach out to KubeDB Platform support for assistance. Congratulations! You have successfully deployed the KubeDB Platform in Onprem Demo mode. Explore the features and capabilities of the platform in your customized environment. diff --git a/docs/platform/selfhost-setup/install/openshift-demo.md b/docs/platform/selfhost-setup/install/openshift-demo.md index eb0766e..33cea39 100644 --- a/docs/platform/selfhost-setup/install/openshift-demo.md +++ b/docs/platform/selfhost-setup/install/openshift-demo.md @@ -22,9 +22,9 @@ Before you begin, please ensure your Kubernetes cluster meets the following mini * **Memory**: 16 GB of RAM. * **Networking**: A routable IP address for external connectivity. -### 1. Visit the AppsCode Self-Hosted Page +### 1. Visit the KubeDB Platform Self-Hosted Page -Navigate to [AppsCode Self-Hosted](https://appscode.com/selfhost). Here you will find your previously generated self-hosted installers.
+Navigate to [KubeDB Platform Self-Hosted](https://appscode.com/selfhost). Here you will find your previously generated self-hosted installers.
Click on the `Create New Installer` button to get started. ### 2. Choose Deployment Mode And Environment @@ -50,7 +50,7 @@ These credentials define the primary super-user and the initial organizational s For openshift cluster toggle Red Hat OpenShift cluster and give Kube API Server endpoint ### 4. Registry -Ace requires access to various container registries and Helm repositories to pull necessary images and charts. +KubeDB Platform requires access to various container registries and Helm repositories to pull necessary images and charts. **Docker Registry:** Go to the docker registry section first then look for the following settings * **Proxies:** Put registry name for Appscode `r.appscode.com` and other Public Registries like Docker Hub, GitHub Container Registry (`ghcr.io`), Kubernetes Registry, Microsoft (`mcr.microsoft.com`), and Quay. @@ -115,7 +115,7 @@ In this section you can enable or disable features ### 10. Branding & UI Customization -Administrators can globally re-brand the Ace interface to match corporate identity. +Administrators can globally re-brand the KubeDB Platform interface to match corporate identity. * **App Name:** Changes the browser tab title. * **Primary Color:** Enter a Hex code (default: `#009948`). @@ -129,11 +129,11 @@ Administrators can globally re-brand the Ace interface to match corporate identi ### 11. Generate Installer and Documentation -Click the "Deploy" button to submit your information. AppsCode will generate the installer and provide the necessary documentation. +Click the "Deploy" button to submit your information. KubeDB Platform will generate the installer and provide the necessary documentation. ### 12. Deploy KubeDB Platform -Follow the documentation provided by AppsCode to deploy the KubeDB Platform on your system. +Follow the documentation provided by KubeDB Platform to deploy the KubeDB Platform on your system. ### 13. Explore the Deployed Platform diff --git a/docs/platform/selfhost-setup/install/selfhosted-production.md b/docs/platform/selfhost-setup/install/selfhosted-production.md index 453313c..c7d2ebf 100644 --- a/docs/platform/selfhost-setup/install/selfhosted-production.md +++ b/docs/platform/selfhost-setup/install/selfhosted-production.md @@ -40,9 +40,9 @@ Before you begin, please ensure your Kubernetes cluster meets the following mini You will get an instruction to deploy a k3s cluster in Ubuntu VM or you can skip this step if you already have a cluster -### 1. Visit the AppsCode Self-Hosted Page +### 1. Visit the KubeDB Platform Self-Hosted Page -Navigate to [AppsCode Self-Hosted](https://appscode.com/selfhost). Here you will find your previously generated self-hosted installers.
+Navigate to [KubeDB Platform Self-Hosted](https://appscode.com/selfhost). Here you will find your previously generated self-hosted installers.
Click on the `Create New Installer` button to get started. ### 2. Choose Deployment Mode And Environment @@ -190,7 +190,7 @@ aws eks associate-access-policy \ --access-scope type=cluster ``` -Provide the output role arn as Ace Installer Role ARN `echo $ROLE_ARN`in the **Ace Installer Role ARN** field. +Provide the output role arn as KubeDB Platform Installer Role ARN `echo $ROLE_ARN`in the **KubeDB Platform Installer Role ARN** field. ### 3. Global Administrative Settings These credentials define the primary super-user and the initial organizational structure. @@ -205,14 +205,14 @@ These credentials define the primary super-user and the initial organizational s ### 4. Release -Define the specific Kubernetes namespace and release information for the Ace components. +Define the specific Kubernetes namespace and release information for the KubeDB Platform components. * **Release Name:** Defaults to `ace`. * **Namespace:** Enter the target namespace (default: `ace`). * **Namespace Automation:** Toggle **"Create namespaces during Helm install"** if you want the installer to handle namespace lifecycle management. ### 5. Registry -Ace requires access to various container registries and Helm repositories to pull necessary images and charts. +KubeDB Platform requires access to various container registries and Helm repositories to pull necessary images and charts. **Docker Registry:** Go to the docker registry section first then look for the following settings * **Proxies:** Put registry name for Appscode `r.appscode.com` and other Public Registries like Docker Hub, GitHub Container Registry (`ghcr.io`), Kubernetes Registry, Microsoft (`mcr.microsoft.com`), and Quay. @@ -245,7 +245,7 @@ If SMTP is enabled then put Host, Username, Password and From. You can also enab #### KubeStash -Ace uses **KubeStash** for automated backups and disaster recovery. +KubeDB Platform uses **KubeStash** for automated backups and disaster recovery. * **Retention Policy:** Define how long backups are kept (e.g., `keep-1mo`). * **Schedule:** Set the backup frequency using Cron syntax (default: `0 */2 * * *` or every 2 hours). @@ -298,7 +298,7 @@ In this section you can enable or disable features ### 11. Branding & UI Customization -Administrators can globally re-brand the Ace interface to match corporate identity. +Administrators can globally re-brand the KubeDB Platform interface to match corporate identity. * **App Name:** Changes the browser tab title. * **Primary Color:** Enter a Hex code (default: `#009948`). @@ -312,15 +312,15 @@ Administrators can globally re-brand the Ace interface to match corporate identi ### 12. Generate Installer and Documentation -Click the "Deploy" button to submit your information. AppsCode will generate the installer and provide the necessary documentation. +Click the "Deploy" button to submit your information. KubeDB Platform will generate the installer and provide the necessary documentation. ### 13. Deploy KubeDB Platform -Follow the documentation provided by AppsCode to deploy the KubeDB Platform on your system. +Follow the documentation provided by KubeDB Platform to deploy the KubeDB Platform on your system. ### 14. Explore the Deployed Platform -Once deployed, access the **KubeDB Platform** using the specified domain. Log in with the admin account credentials provided during the creation process.After the login process you will see the **ACE dashboard** user interface +Once deployed, access the **KubeDB Platform** using the specified domain. Log in with the admin account credentials provided during the creation process.After the login process you will see the **KubeDB Platform dashboard** user interface
\ No newline at end of file From 4063b9d333da59bb841b9b8f8c96d0e2a2946fe8 Mon Sep 17 00:00:00 2001 From: Tamal Saha Date: Tue, 21 Apr 2026 09:37:29 +0600 Subject: [PATCH 2/2] Restore AppsCode branding for billing and licensing infrastructure Keep AppsCode name for the billing console, license management system, and backend servers. KubeDB Platform products (KubeDB, KubeStash, etc.) retain the KubeDB Platform product name. - AppsCode Billing Console (not KubeDB Platform Billing Console) - AppsCode License Management System - AppsCode backend / licensing backend / servers Signed-off-by: Tamal Saha --- .../guides/billing-and-usage-guide/_index.md | 2 +- .../billing-and-usage-guide/overview.md | 4 +-- .../guides/license-management/_index.md | 2 +- .../guides/license-management/contract.md | 4 +-- .../license-management/license-proxyserver.md | 28 +++++++++---------- .../guides/license-management/overview.md | 10 +++---- .../license-management/troubleshoots.md | 24 ++++++++-------- 7 files changed, 37 insertions(+), 37 deletions(-) diff --git a/docs/platform/guides/billing-and-usage-guide/_index.md b/docs/platform/guides/billing-and-usage-guide/_index.md index 9788463..f2b9df2 100644 --- a/docs/platform/guides/billing-and-usage-guide/_index.md +++ b/docs/platform/guides/billing-and-usage-guide/_index.md @@ -5,7 +5,7 @@ menu: identifier: billing-and-usage-guide name: Billing and Usage Guide parent: guides - description: Billing and Usage Guide for KubeDB Platform's products + description: Billing and Usage Guide for AppsCode's products icon: https://img.icons8.com/external-anggara-basic-outline-anggara-putra/96/external-stats-ui-anggara-basic-outline-anggara-putra.png popular: true weight: 50 diff --git a/docs/platform/guides/billing-and-usage-guide/overview.md b/docs/platform/guides/billing-and-usage-guide/overview.md index 1b6184d..bba158f 100644 --- a/docs/platform/guides/billing-and-usage-guide/overview.md +++ b/docs/platform/guides/billing-and-usage-guide/overview.md @@ -14,9 +14,9 @@ section_menu_id: guides This document provides a detailed overview of the **Usage** section within our billing system. It explains how to navigate the user interface, monitor resource consumption, and configure **clusters** and **namespaces** for effective cost management. -## **KubeDB Platform Billing Console — Usage** +## **AppsCode Billing Console — Usage** -The KubeDB Platform Billing Console is a web-based hub at [KubeDB Platform Billing Console](https://appscode.com/billing) where you can manage contracts, link clusters, generate license-proxyserver installers, track licensed clusters, and **monitor usage—all in one place**. +The AppsCode Billing Console is a web-based hub at [AppsCode Billing Console](https://appscode.com/billing) where you can manage contracts, link clusters, generate license-proxyserver installers, track licensed clusters, and **monitor usage—all in one place**. This section focuses on the **Usage** dashboard, which shows the resources consumed by downstream KubeDB Platform services like KubeDB running in your clusters. diff --git a/docs/platform/guides/license-management/_index.md b/docs/platform/guides/license-management/_index.md index 12eae48..6b180b9 100644 --- a/docs/platform/guides/license-management/_index.md +++ b/docs/platform/guides/license-management/_index.md @@ -5,7 +5,7 @@ menu: identifier: license-management name: License Management parent: guides - description: License Management for KubeDB Platform's products + description: License Management for AppsCode's products icon: https://img.icons8.com/?size=100&id=80695&format=png&color=000000 popular: true weight: 40 diff --git a/docs/platform/guides/license-management/contract.md b/docs/platform/guides/license-management/contract.md index 980ba6c..4a38541 100644 --- a/docs/platform/guides/license-management/contract.md +++ b/docs/platform/guides/license-management/contract.md @@ -64,7 +64,7 @@ After removal, the cluster will no longer be authorized to use the licensed prod ### Cluster Contract Relationship -The KubeDB Platform License Management System supports flexible relationships between clusters and contracts: +The AppsCode License Management System supports flexible relationships between clusters and contracts: 1. **Many-to-One:** Multiple clusters can be associated with a single contract. 2. **One-to-Many:** A single cluster can be associated with multiple contracts for different products. 3. **Many-to-Many:** Multiple clusters can be associated with multiple contracts. @@ -77,7 +77,7 @@ The operational mode of a contract (`online` or `offline`) is a critical setting **Online Mode:** - This is the standard mode for contracts where clusters have internet access. -- The `license-proxyserver` in the customer's cluster regularly connects to KubeDB Platform's central licensing servers (e.g., `AppsCode.com`s) for license `validation` and `renewal`. +- The `license-proxyserver` in the customer's cluster regularly connects to AppsCode's central licensing servers (e.g., `AppsCode.com`s) for license `validation` and `renewal`. - Licenses are typically issued for shorter durations (e.g., `7 days` by default) and are automatically rotated. - This mode facilitates dynamic license management and ensures continuous validation against the current contract status. diff --git a/docs/platform/guides/license-management/license-proxyserver.md b/docs/platform/guides/license-management/license-proxyserver.md index b76b8f6..b289913 100644 --- a/docs/platform/guides/license-management/license-proxyserver.md +++ b/docs/platform/guides/license-management/license-proxyserver.md @@ -12,7 +12,7 @@ section_menu_id: guides ## The License Proxy Server -The `license-proxyserver` is a critical component of the KubeDB Platform License Management System, deployed within customer Kubernetes clusters to validate and apply licenses to KubeDB Platform products. +The `license-proxyserver` is a critical component of the AppsCode License Management System, deployed within customer Kubernetes clusters to validate and apply licenses to KubeDB Platform products. ### 1. Purpose and Architecture The primary purpose of the `license-proxyserver` is to: @@ -27,8 +27,8 @@ The primary purpose of the `license-proxyserver` is to: 1. **KubeDB Platform Product Request:** When a KubeDB Platform product (e.g., KubeDB operator) starts or performs a licensed operation, it requests a license from the License Proxy Server running in its cluster. 2. **License Proxy Server Response:** - - **Online Mode:** If the `license-proxyserver` has a valid, cached license, it provides it immediately. If the license is nearing its expiration, has already expired, or is otherwise invalid, the `license-proxyserver` attempts to contact KubeDB Platform `Billing Backend` to fetch a new license. This new license is based on the active contracts associated with that specific cluster. - - **Offline Mode:** The `license-proxyserver` primarily uses the pre-generated licenses embedded in its installer. It operates without connecting to the Billing Console for routine validation. However, if all embedded licenses are found to be expired or have been revoked, the `license-proxyserver` will, as a fallback, attempt to fetch new licenses from the KubeDB Platform billing backend. This means that even in air-gapped environments, a temporary or controlled outbound connection might be necessary for license renewal or recovery if the embedded licenses become invalid over time. + - **Online Mode:** If the `license-proxyserver` has a valid, cached license, it provides it immediately. If the license is nearing its expiration, has already expired, or is otherwise invalid, the `license-proxyserver` attempts to contact AppsCode `Billing Backend` to fetch a new license. This new license is based on the active contracts associated with that specific cluster. + - **Offline Mode:** The `license-proxyserver` primarily uses the pre-generated licenses embedded in its installer. It operates without connecting to the Billing Console for routine validation. However, if all embedded licenses are found to be expired or have been revoked, the `license-proxyserver` will, as a fallback, attempt to fetch new licenses from the AppsCode billing backend. This means that even in air-gapped environments, a temporary or controlled outbound connection might be necessary for license renewal or recovery if the embedded licenses become invalid over time. > Each mode offers distinct advantages and is suitable for different operational contexts. 3. **Product Operation:** A valid license allows the product to operate with its full feature set, while an invalid or absent license may lead to reduced functionality or prevent the product from operating. @@ -36,7 +36,7 @@ The primary purpose of the `license-proxyserver` is to: ### 2. Generating the License Proxy Server Installer -The KubeDB Platform Billing Console provides a dedicated interface for generating the necessary deployment manifests (typically a `Helm chart` or `YAML files`) for the `license-proxyserver`. The generation process requires the administrator to choose the operational mode for which the installer is being created: `online` or `offline`. +The AppsCode Billing Console provides a dedicated interface for generating the necessary deployment manifests (typically a `Helm chart` or `YAML files`) for the `license-proxyserver`. The generation process requires the administrator to choose the operational mode for which the installer is being created: `online` or `offline`. This choice dictates how the installer is packaged and how the deployed `license-proxyserver` will behave regarding license validation. #### Online Mode Deployment @@ -48,24 +48,24 @@ Online mode is suitable for clusters with reliable internet connectivity, allowi When the `Online` option is selected for installer generation in the Billing Console, the system prepares a standard `license-proxyserver` installer. ![Online Installer](../images/online-installer.png) This installer is typically provided as a `Helm` commands or `YAML files`, as seen in the `Scripts` pop-up. ![Online Installer Scripts](../images/online-installer-scripts.png) -The generated installer configures the license-proxyserver to communicate with the KubeDB Platform licensing backend. The cluster where this `license-proxyserver` is installed must be `associated with one or more online contracts` in the Billing Console for successful license acquisition. +The generated installer configures the license-proxyserver to communicate with the AppsCode licensing backend. The cluster where this `license-proxyserver` is installed must be `associated with one or more online contracts` in the Billing Console for successful license acquisition. Key configurations embedded in the installer include: -- The base URL for the KubeDB Platform licensing backend, explicitly set (e.g., `-set platform.baseURL=https://AppsCode.com`). This ensures the `license-proxyserver` knows where to connect for license validation and updates. -- A platform token (e.g., `-set platform.token=dc823391fc8d6d9ca10f47a1ed07************`). This token is used by the `license-proxyserver` to authenticate itself with the KubeDB Platform backend and identify which licenses it is eligible for. +- The base URL for the AppsCode licensing backend, explicitly set (e.g., `-set platform.baseURL=https://AppsCode.com`). This ensures the `license-proxyserver` knows where to connect for license validation and updates. +- A platform token (e.g., `-set platform.token=dc823391fc8d6d9ca10f47a1ed07************`). This token is used by the `license-proxyserver` to authenticate itself with the AppsCode backend and identify which licenses it is eligible for. #### License Acquisition and Rotation - **Initial Acquisition:** Upon startup, the `license-proxyserver` contacts AppsCode.com, identifies its cluster (based on its configuration or a token provided during installation), and requests licenses for the products covered by any active online contracts associated with that cluster. -- **Periodic Rotation:** Licenses issued in online mode have a finite, relatively short lifespan (e.g., the default is 7 days). Before a license expires, the `license-proxyserver` automatically attempts to renew it by contacting the KubeDB Platform backend. This ensures continuous legal operation of the products. +- **Periodic Rotation:** Licenses issued in online mode have a finite, relatively short lifespan (e.g., the default is 7 days). Before a license expires, the `license-proxyserver` automatically attempts to renew it by contacting the AppsCode backend. This ensures continuous legal operation of the products. **Benefits:** - **Up-to-date Compliance:** Ensures the cluster is always checked against the latest contract status. If a contract is terminated or expires, new licenses will not be issued, maintaining compliance. -- **Dynamic Updates:** Allows KubeDB Platform to propagate updates to license terms or features if necessary, which would be picked up during a renewal cycle. +- **Dynamic Updates:** Allows AppsCode to propagate updates to license terms or features if necessary, which would be picked up during a renewal cycle. > **Requirements:** -> - The `license-proxyserver` must have consistent outbound `HTTPS` (typically port 443) connectivity to the KubeDB Platform licensing endpoints. +> - The `license-proxyserver` must have consistent outbound `HTTPS` (typically port 443) connectivity to the AppsCode licensing endpoints. > - `Firewall` rules in the customer's environment must `permit` this communication. #### Offline Mode Deployment @@ -73,7 +73,7 @@ Key configurations embedded in the installer include: Offline mode caters to environments that are air-gapped or have stringent restrictions on external network communications. It is ideal for sectors like finance, government, or critical infrastructure, where Kubernetes cluster environments are completely offline. #### Enabling Offline Contracts -The prerequisite for generating an offline `license-proxyserver` installer is that the relevant contract(s) in the KubeDB Platform Billing Console must be explicitly +The prerequisite for generating an offline `license-proxyserver` installer is that the relevant contract(s) in the AppsCode Billing Console must be explicitly designated as `offline` type by an [AppsCode administrators](https://AppsCode.com/contact/). This tells the system that licenses derived from this contract should be `long-lived` and not require `online renewal`. #### Installer Generation for Offline Mode @@ -87,7 +87,7 @@ Generating an installer for offline mode is a multi-step process, designed to em #### License Characteristics in Offline Mode - **Full Duration Licenses:** Offline licenses are valid for the entire contract term, e.g., June 1, 2025, to May 31, 2026. -- **No Periodic Online Rotation (Initially):** Self-contained licenses don't need KubeDB Platform server contact until expiration. +- **No Periodic Online Rotation (Initially):** Self-contained licenses don't need AppsCode server contact until expiration. - **Fallback to Online Mode:** Expired offline licenses trigger the license-proxyserver to fetch new licenses online, mimicking online mode. - **Self-Contained Deployment:** Licensing data is embedded in the license-proxyserver, allowing disconnected operation while licenses are valid. - **Updates Require New Installer:** Contract extensions or expired licenses require a new installer from the Billing Console, which must be upgraded or reinstalled to maintain or restore offline functionality. @@ -114,8 +114,8 @@ The output of `kubectl get licensestatus` provides several key pieces of informa - **ID:** A unique identifier for this specific license. - **PRODUCT:** The name of the KubeDB Platform product that this license status pertains to (e.g., `kubedb`, `kubestash`, `platform` etc.). - **REQUESTER:** The specific `component` or `service account` within the cluster that requested and is utilizing this license. This helps pinpoint which part of a KubeDB Platform product installation is covered by this license entry (e.g., `system:serviceaccount:kubedb:kubedb-kubedb-provisioner`). -- **CONTRACT:** This field indicates the identifier of the KubeDB Platform contract which is utilized providing the license. There are two scenarios on how this field is populated:

- - If a cluster is not explicitly associated with any contract in the Billing Console, KubeDB Platform automatically provides a `1-month (30-day)` free trial license. In such cases, the `CONTRACT` column in the `licensestatus` output will display `0`. This temporary license is particularly helpful for customers during initial testing and evaluation periods. Each cluster is eligible for this free trial only once. ![Free Trial License](../images/license-status-free-contract.png) +- **CONTRACT:** This field indicates the identifier of the AppsCode contract which is utilized providing the license. There are two scenarios on how this field is populated:

+ - If a cluster is not explicitly associated with any contract in the Billing Console, AppsCode automatically provides a `1-month (30-day)` free trial license. In such cases, the `CONTRACT` column in the `licensestatus` output will display `0`. This temporary license is particularly helpful for customers during initial testing and evaluation periods. Each cluster is eligible for this free trial only once. ![Free Trial License](../images/license-status-free-contract.png) - Otherwise, if a cluster is associated with a specific contract, this column will display the actual `CONTRACT ID` from the Billing Console, allowing administrators to `cross-reference` the license with the detailed contract terms. ![Paid License](../images/license-status-paid-contract.png) - **VALID:** This field indicates the remaining validity period for the current license instance. - **ROTATES:** This field indicates when the license is next scheduled for rotation or renewal. diff --git a/docs/platform/guides/license-management/overview.md b/docs/platform/guides/license-management/overview.md index c6c5faf..f207ca3 100644 --- a/docs/platform/guides/license-management/overview.md +++ b/docs/platform/guides/license-management/overview.md @@ -13,15 +13,15 @@ section_menu_id: guides ## Overview
-The KubeDB Platform License Management System simplifies managing product licenses for Kubernetes deployments. It offers a centralized billing console for efficient license administration and secure validation, supporting both online and offline modes to suit various needs. +The AppsCode License Management System simplifies managing product licenses for Kubernetes deployments. It offers a centralized billing console for efficient license administration and secure validation, supporting both online and offline modes to suit various needs. This guide explores the Billing Console, covering its key components, contract management, license-proxyserver deployment, and troubleshooting tips for common issues. By the end, you’ll know how to effectively manage licenses with this tool. **Target Audience:** This guide is intended for `administrators` and `personnel` responsible for managing KubeDB Platform product licenses. -## KubeDB Platform Billing Console
+## AppsCode Billing Console
-A centralized web-based platform serving as the primary interface for licensing operations in the KubeDB Platform ecosystem. Hosted on [KubeDB Platform Billing Console](https://appsCode.com/billing), this self-managed system allows customers to manage `contracts` by associating clusters, generating `license-proxyserver` installers and tracking clusters for which licenses are generated. +A centralized web-based platform serving as the primary interface for licensing operations in the AppsCode ecosystem. Hosted on [AppsCode Billing Console](https://appsCode.com/billing), this self-managed system allows customers to manage `contracts` by associating clusters, generating `license-proxyserver` installers and tracking clusters for which licenses are generated. While AppsCode administrators are responsible for the core lifecycle of contracts—including their `creation`, `modification`, `revocation`, and `extension`—customers retain the ability to perform specific operations pertinent to the licensing lifecycle. This includes `associating` and `disassociating` their Kubernetes clusters with allocated contracts, generating `installers` for the `license-proxyserver` through the console, and track the `clusters` for which licenses have been issued. @@ -31,8 +31,8 @@ While AppsCode administrators are responsible for the core lifecycle of contract - **Contracts:** Digital agreements, typically established by [AppsCode administrators](https://appsCode.com/contact/) within the Billing Console, that define the terms of KubeDB Platform's product (e.g., KubeDB Platform, KubeDB, KubeStash, KubeVault etc.) usage. This includes the specific KubeDB Platform products which can be licensed, the duration of the contract, applicable features, and the clusters authorized to use these licenses. Contracts ensure that usage aligns with legal and financial terms, providing a foundation for all subsequent actions in the console. Contracts can be configured for either online or offline license validation.

-- **Licensed cluster:** The `Licensed Cluster` section within the KubeDB Platform Billing Console offers a comprehensive overview and detailed management capabilities for Kubernetes clusters that have been issued KubeDB Platform product licenses. This component is pivotal for administrators to monitor the cluster(s) `licences` and `events` of licensed products across their infrastructure. +- **Licensed cluster:** The `Licensed Cluster` section within the AppsCode Billing Console offers a comprehensive overview and detailed management capabilities for Kubernetes clusters that have been issued KubeDB Platform product licenses. This component is pivotal for administrators to monitor the cluster(s) `licences` and `events` of licensed products across their infrastructure.

-- **License Proxy Server:** A lightweight in-cluster component that validates licenses, either by connecting to KubeDB Platform servers (online) or using preloaded licenses (offline). The console generates customized installers for deployment. Depending on the contract type (`online` or `offline`), it either periodically refreshes and validates licenses with KubeDB Platform's central licensing servers or uses static preloaded licenses embedded during deployment for the full contract duration. +- **License Proxy Server:** A lightweight in-cluster component that validates licenses, either by connecting to AppsCode servers (online) or using preloaded licenses (offline). The console generates customized installers for deployment. Depending on the contract type (`online` or `offline`), it either periodically refreshes and validates licenses with AppsCode's central licensing servers or uses static preloaded licenses embedded during deployment for the full contract duration. These components work together to provide a seamless experience for license administrators, allowing them to efficiently manage the entire licensing `lifecycle` from a single interface. For instance, AppsCode's administrator creates a contract for KubeDB, and associates the contract to the target customer. Then from the customer panel, the customer can add a cluster to it, generates a customized installer for the `license-proxyserver`, deploys it to the cluster, and then monitors usage—all within the Billing Console. This integrated workflow eliminates the need for disparate tools or manual processes, saving time and reducing errors. diff --git a/docs/platform/guides/license-management/troubleshoots.md b/docs/platform/guides/license-management/troubleshoots.md index f561f09..2c8e2e7 100644 --- a/docs/platform/guides/license-management/troubleshoots.md +++ b/docs/platform/guides/license-management/troubleshoots.md @@ -106,22 +106,22 @@ license-proxyserver ClusterIP 10.43.189.38 443/TCP,8080/TCP it indicates a problem with the `service selector` or the `license-proxyserver` pod itself (e.g., pod not `running`, `crashlooping`). -#### 4. Test KubeDB Platform Backend Connectivity (for Online Mode/Fallback) -If the `in-cluster` components of the `license-proxyserver` appear healthy, and you are operating in `Online Mode` or troubleshooting an `Offline Mode fallback` scenario, verify that the cluster can reach the KubeDB Platform licensing backend. +#### 4. Test AppsCode Backend Connectivity (for Online Mode/Fallback) +If the `in-cluster` components of the `license-proxyserver` appear healthy, and you are operating in `Online Mode` or troubleshooting an `Offline Mode fallback` scenario, verify that the cluster can reach the AppsCode licensing backend. -1. **Check Network Connectivity:** Ensure that the cluster has internet access and can reach the KubeDB Platform licensing backend. This may involve checking `firewall rules`, `network policies`, or `proxy settings`.

+1. **Check Network Connectivity:** Ensure that the cluster has internet access and can reach the AppsCode licensing backend. This may involve checking `firewall rules`, `network policies`, or `proxy settings`.

2. **Get Cluster ID:** Retrieve the unique identifier for your Kubernetes cluster: ```bash kubectl get ns kube-system -o=jsonpath='{.metadata.uid}' ``` Copy the output, which will be your ``.

-3. **Get Platform Token:** Extract the platform token used by the `license-proxyserver` for authentication with the KubeDB Platform backend: +3. **Get Platform Token:** Extract the platform token used by the `license-proxyserver` for authentication with the AppsCode backend: ```bash kubectl get secrets -n kubeops ace-licenseserver-cred -o=jsonpath='{.data.license-proxyserver\.yaml}' | base64 -d ``` From the output, locate the token field under `platform:` (e.g., `token: ac9b9eeec181fb09j73ab1604bd0180a4361e859`). Copy this value as your ``.

-4. **Get License Using CURL:** Perform a `curl` request to the KubeDB Platform Backend: Use `curl` from within a pod in your cluster (or a machine with network access to the cluster's outbound internet) to simulate a - license request to the KubeDB Platform backend. Replace `` and `` with the values obtained in the previous steps. The features can be get from the Contract details page in KubeDB Platform Billing Console +4. **Get License Using CURL:** Perform a `curl` request to the AppsCode Backend: Use `curl` from within a pod in your cluster (or a machine with network access to the cluster's outbound internet) to simulate a + license request to the AppsCode backend. Replace `` and `` with the values obtained in the previous steps. The features can be get from the Contract details page in AppsCode Billing Console ```bash curl -k -X 'POST' -d '{"cluster":"","features":["kubedb-enterprise"]}' \ -H 'Authorization: Bearer ' \ @@ -130,7 +130,7 @@ If the `in-cluster` components of the `license-proxyserver` appear healthy, and 'https://api.AppsCode.com/api/v1/license/issue' --compressed ``` **Expected curl Response Analysis:** - A successful response indicates that your cluster can communicate with the KubeDB Platform backend and that the authentication token is valid. The response will contain `contract` and `license` sections: + A successful response indicates that your cluster can communicate with the AppsCode backend and that the authentication token is valid. The response will contain `contract` and `license` sections: ```json { "contract": { @@ -142,13 +142,13 @@ If the `in-cluster` components of the `license-proxyserver` appear healthy, and } ``` **Interpretation:** - - `contract.id:` This field is crucial. If it displays `0`, it indicates that the license issued is a `1-month (30-day)` free `trial` license, automatically provided by KubeDB Platform because the cluster is not explicitly associated with any paid contract. This is useful for initial testing. Each cluster is eligible for this free trial only once. + - `contract.id:` This field is crucial. If it displays `0`, it indicates that the license issued is a `1-month (30-day)` free `trial` license, automatically provided by AppsCode because the cluster is not explicitly associated with any paid contract. This is useful for initial testing. Each cluster is eligible for this free trial only once. - `contract.startTimestamp` and `contract.expiryTimestamp:` These fields define the validity period of the contract under which the license was issued. - - `license:` This is the actual `Base64-encoded` license token. A valid token here confirms that the KubeDB Platform backend successfully issued a license. - If the curl command fails (e.g., `connection refused`, `timeout`, `authentication` error), it indicates a network or authentication issue preventing the `license-proxyserver` from reaching the KubeDB Platform backend. + - `license:` This is the actual `Base64-encoded` license token. A valid token here confirms that the AppsCode backend successfully issued a license. + If the curl command fails (e.g., `connection refused`, `timeout`, `authentication` error), it indicates a network or authentication issue preventing the `license-proxyserver` from reaching the AppsCode backend. #### 5. Conclusion -The KubeDB Platform License Management System delivers a `lightweight`, `in-cluster` authority for fast, reliable license validation in Kubernetes. Its `online` and `offline` modes accommodate both +The AppsCode License Management System delivers a `lightweight`, `in-cluster` authority for fast, reliable license validation in Kubernetes. Its `online` and `offline` modes accommodate both always-connected and isolated environments. It empowers customers with `self-service` capabilities for cluster association. -For unresolved issues, email [support@appscode.com](mailto:support@appscode.com) or [platform-support@appscode.com](mailto:support@appscode.com), or file a ticket at [KubeDB Platform Contact](https://appscode.com/contact). \ No newline at end of file +For unresolved issues, email [support@appscode.com](mailto:support@appscode.com) or [platform-support@appscode.com](mailto:support@appscode.com), or file a ticket at [AppsCode Contact](https://appscode.com/contact). \ No newline at end of file