Skip to content

Portal Customization

GPU Cloud Providers have extensive options to customize the end user portal, offering flexibility in both appearance and in what compute/services are visible to users. These customizations are available via the Operations Console and require the Super Admin role.


Theme Customization

ℹ️ Minimum Controller Version: v3.1-30

To modify the look and feel of the portal:

  • Log in to the Operations Console
  • Navigate to Partners → click Edit
  • Select the Theme Customizations tab
  • Choose a Primary Color and Secondary Color

Portal Customization

  • A preview will update in real-time as you make selections

Portal Customization

  • Click Save Changes.

Once saved, these changes will reflect in the end user portal.

Portal Customization


Logo Customization

To customize the logo shown on the portal:

  • Navigate to Partners → click Edit.
  • Click Edit again on the profile.
  • Provide the logo URL.

Portal Customization


Customizing Compute Types

ℹ️ Minimum Controller Version: v3.1-30

GPU Providers can define which compute types are visible in the end user portal. For example, custom entries such as "Namespace" can be used to reflect internal conventions.

Steps:

  • Log in to the Operations Console.
  • Navigate to Partners → click Edit.
  • Select the PaaS Customizations tab.

Portal Customization

  • Edit or add to the YAML/JSON configuration using the following structure:
{
  "compute": {
    "nav_label": "Compute",
    "types": [
      {
        "value": "baremetal",
        "label": "Baremetal",
        "icon": "zmdi zmdi-laptop",
        "description": "Physical dedicated servers with direct hardware access, providing maximum performance and control for resource-intensive workloads.",
        "objectLabel": "Bare Metal",
        "templateCard": {
          "labelClass": "text-red-700/70",
          "iconClass": "border-yellow-500/10 bg-yellow-100"
        },
        "homeComputeCard": {
          "description": "Bare Metal instances provide dedicated physical servers with direct hardware access, offering maximum performance, security isolation, and control for demanding workloads that require consistent performance or specific hardware configurations.",
          "iconClass": "border-red-500/10 bg-red-100 text-red-700/70"
        }
      },
      {
        "value": "vm",
        "label": "Virtual Machines",
        "icon": "zmdi zmdi-cloud",
        "description": "Virtualized computing environments that provide flexible, isolated instances with dedicated resources for various workload requirements.",
        "objectLabel": "Virtual Machine",
        "templateCard": {
          "labelClass": "text-red-700/70",
          "iconClass": "border-yellow-500/10 bg-yellow-100"
        },
        "homeComputeCard": {
          "description": "Virtual Machines offer flexible, isolated computing environments with dedicated CPU, memory, and storage resources. Ideal for a wide range of applications, VMs provide OS-level isolation with the ability to scale resources based on workload demands.",
          "iconClass": "border-yellow-500/10 bg-yellow-100 text-yellow-700/70"
        }
      },
      {
        "value": "k8s",
        "label": "Kubernetes",
        "icon": "zmdi zmdi-brain",
        "description": "Container orchestration platform for deploying, scaling, and managing containerized applications with automated workload distribution.",
        "objectLabel": "Kubernetes",
        "templateCard": {
          "labelClass": "text-red-700/70",
          "iconClass": "border-blue-500/10 bg-blue-100"
        },
        "homeComputeCard": {
          "description": "Kubernetes provides a powerful container orchestration platform for deploying, scaling, and managing containerized applications. With features like automated deployment, scaling, load balancing, and self-healing capabilities, it offers an efficient environment for modern microservices architectures.",
          "iconClass": "border-purple-500/10 bg-purple-100 text-purple-700/70"
        }
      },
      {
        "value": "vcluster",
        "label": "vCluster",
        "icon": "zmdi zmdi-robot",
        "description": "Virtual Kubernetes clusters that provide isolated environments within a shared infrastructure, enabling multi-tenant resource optimization.",
        "objectLabel": "vCluster",
        "templateCard": {
          "labelClass": "text-red-700/70",
          "iconClass": "border-pink-500/10 bg-pink-100"
        },
        "homeComputeCard": {
          "description": "vClusters are virtual Kubernetes clusters that run inside a namespace of an underlying Kubernetes cluster, providing fully isolated environments with their own control plane. Ideal for multi-tenant scenarios, they enable efficient resource utilization while maintaining strict workload separation.",
          "iconClass": "border-pink-500/10 bg-pink-100 text-pink-700/70"
        }
      },
      {
        "value": "Namespace",
        "label": "Namespace",
        "icon": "zmdi zmdi-robot",
        "description": "Isolated namespaces in a Kubernetes cluster.",
        "objectLabel": "Namespace",
        "templateCard": {
          "labelClass": "text-red-700/70",
          "iconClass": "border-pink-500/10 bg-pink-100"
        },
        "homeComputeCard": {
          "description": "Isolated namespaces in a Kubernetes cluster for efficient resource utilization.",
          "iconClass": "border-pink-500/10 bg-pink-100 text-pink-700/70"
        }
      }
    ]
  }

Portal Customization

Note: Default compute types include: Baremetal, Virtual Machines, Kubernetes, and vCluster.

When a new compute profile is created, the corresponding compute type options become available for selection.

Portal Customization

Migration

If upgrading from a controller version older than v3.1-30:

  • Annotate existing compute profiles to associate the appropriate compute type, e.g.:
"paas.envmgmt.io/compute_type": "vm"
  • Run the migration script to associate existing compute instances with the correct type

Important: Contact Rafay support for assistance with the migration process.


Customizing Service Types

Just like compute types, service types can also be customized.

Steps:

  • Log in to the Operations Console.
  • Navigate to Partners → click Edit.
  • Select the PaaS Customizations tab.
  • Edit or add to the YAML/JSON configuration using the following structure:
{
  "service": {
    "navLabel": "Services",
    "types": [
      {
        "value": "notebook",
        "label": "Notebooks",
        "icon": "zmdi zmdi-laptop",
        "description": "Notebooks are applications that run on compute instances.",
        "objectLabel": "Notebook"
      },
      {
        "value": "Applications",
        "label": "Applications",
        "icon": "zmdi zmdi-robot",
        "description": "Pre-defined application configurations.",
        "objectLabel": "Applications"
      }
    ]
  }
}

Portal Customization

When a new service profile is created, the corresponding service type options become available for selection.

Portal Customization


Renaming the Developer Hub Portal

To change the label of the end user portal (default is Developer Hub):

  • Go to Partners → click Edit.
  • In the PaaS Customizations tab, add:
"developer_hub_label": "Customer Hub"