License Management
This topic outlines the licensing for EGS (Elastic GPU Service) and explains how to manage licenses for GPU resource management.
Overview
The EGS licensing provides organizations with flexibility and control over GPU resource management within Kubernetes clusters. It enables efficient utilization of GPU resources while ensuring compliance with defined licensing terms and policies. The enforcement of the license is based on the number of GPUs specified in the license file. After the licensed GPU limit is reached, no new GPU requests can be scheduled. The license count applies to the onboarded GPU resources within the Kubernetes clusters.
License Features
The EGS license includes the following features:
- GPU Provisioning: Ability to create and manage GPU Provisioning Requests (GPRs) for deploying GPU-based applications.
- Multi-cluster Support: Manage GPU resources across multiple clusters within your organization.
- Advanced Scheduling: Priority scheduling for GPU workloads based on the license type.
- Overage Support: Option to configure overage limits, allowing temporary usage beyond the licensed GPU count.
License Types
EGS supports both trial and enterprise licenses.
Trial License
Trial License allows limited access for evaluation purposes and typically includes:
- Access to a limited number of GPUs (example, 2 GPUs)
- Support and documentation
- Limited period (example, 30 days)
- Customizable overage options (example, 20% overage)
Trial licenses are ideal for testing and evaluation of EGS features and capabilities.
Enterprise License
Enterprise License provides full functionality, including access to advanced features, multi-cluster support, and priority GPU scheduling and typically include:
- Access to a larger number of GPUs (example, 4 GPUs or more)
- Support and documentation
- Longer period (example, 6 months, 12 months, and 24 months)
- Customizable overage options (example, 20% overage)
Enterprise licenses are suitable for production deployments and large-scale GPU workloads.
How to Request for License
-
Enterprise License: To request an enterprise license, please contact the Avesha sales team with your organization's details and usage requirements. You can reach out through your account manager.
-
Trail License: To request a trail license, go to the Avesha registration page and fill out the form. After your request is received, the Avesha team will evaluate it and send you a license or token file through email. You will receive a license secret file to your registered email address. The license file is a YAML file that contains the license details in a structured format. It includes information such as the number of GPUs, their type, memory, and duration.
How to Activate the License
An admin can install a license using CLI.
Activate the License Using CLI
To activate the license using the CLI, you need to have access to the Kubernetes cluster where you will install EGS. You
can use the kubectl
command-line tool to apply the license secret file. Apply the license secret file provided by
the Avesha team. The secret file should be in YAML format and contain the license details.
First, create a kubeslice-controller
namespace if it does not already exist using the following command:
kubectl create namespace kubeslice-controller
The following is an example of the license secret file format:
apiVersion: v1
kind: Secret
type:
metadata:
name: <license-secret-name>
namespace: kubeslice-controller
labels:
data:
customer-name: <base64-encoded-license>
grace-period: <base64-encoded-license>
license-expiration: <base64-encoded-license>
license-type: <base64-encoded-license>
license-created: <base64-encoded-license>
license-updated: <base64-encoded-license>
license-id: <base64-encoded-license>
license.key: <base64-encoded-license>
machine file: <base64-encoded-license>
Use the following command to apply the license secret file to the kubeslice-controller
namespace on the controller cluster:
kubectl apply -f <license-secret-file> -n kubeslice-controller
After the license is applied, it is stored securely in the EGS system. You can manage the license through CLI. The license secret
is stored in the kubeslice-controller
namespace and can be viewed using:
kubectl get secret <license-secret-name.yaml> -n kubeslice-controller -o yaml
After applying the license secret, you can install the EGS controller using the Helm chart. The license will be automatically detected and applied during the installation process. To install EGS, follow the instructions in the EGS Installation Guide.
License Validation
The EGS system automatically validates the license upon application. You can also manually trigger a validation check through the EGS Admin Portal. If the license is valid, the system allows you to provision and manage GPU resources. If the license is invalid or expired, the system prevents any changes to GPU resources and displays an error message.
License Expiry Notifications
EGS sends notifications for upcoming license expirations. Warnings
are displayed through the portal and logs as the license approaches
expiration. Critical
alerts are triggered after the expiration date is reached or GPU usage exceeds the licensed quota.
How to Upgrade Your License
If your organization requires additional GPU capacity or features beyond the current license, you can upgrade your license. This typically involves purchasing a new license or extending the existing one to include more GPUs, longer duration, or additional features. Upgrading a license allows you to scale your GPU resources as needed without service disruption.
You can upgrade your license from the EGS Admin Portal or through the CLI. The upgrade process involves uploading a new license secret
file that contains the updated license details. Contact Avesha Support at support@aveshasystems.com
to extend or upgrade your license.
To upgrade your license through the EGS Admin Portal:
-
Log in to the EGS Admin Portal.
-
Click the Upgrade License button on the left sidebar. The pop-up window displays your current license details.
-
Drag and drop the new license secret file or Click here to upload the file.
-
Click the Extend License button to apply the new license.
How to Renew Your License
Licenses have a validity period and must be renewed before expiry to avoid service disruption. Expiring licenses can trigger alerts in the EGS Admin Portal.
If your license is nearing expiration, you receive notifications through the EGS Admin Portal and email. It is important to renew your license before it expires to avoid any disruption in service. If your license has expired, you will not be able to make any changes to the GPU resources. You must renew your license to continue using the EGS features. Contact Avesha Support to renew your license.
To renew your license:
-
Log in to the EGS Admin Portal.
-
Click the Upgrade License button on the left sidebar. The pop-up window displays your current license details.
-
Drag and drop the new license secret file or Click here to upload the file.
-
Click the Extend License button to apply the new license.
EGS License Enforcement: Scenarios and System Responses
Scenario | System Message | Recommended Action |
---|---|---|
License Expired | "The GPU license has expired. You cannot make any changes. Please contact support." | Contact Avesha Support to renew or extend the license. |
Within Grace Period | "The GPU license has expired but is within the grace period. Please contact support." | Contact Avesha Support to update the license before grace period expires. |
Missing License Secret | "The GPU license secret is not found." | Verify and apply the correct license secret; contact support if issue persists. |
Invalid Machine File | "The GPU machine file is invalid. Please contact support." | Validate the machine file with support and reapply a valid version. |
Cannot Decrypt License Key | "The GPU license key is invalid. Please contact support." | Request a new valid key from Avesha Support. |
Tampered License File | "License file is tampered." | Refrain from manual edits; reapply a valid file or contact support. |
License Support
For any licensing issues or questions, please reach out to the Avesha support team at support@avesha.com. They can assist with troubleshooting, answer compliance questions, and address other concerns related to licensing as needed.