Skip to content

Service Profile

Service Profiles are a way for administrators to manage "app configurations" as code, make them available to end users of GPU PaaS for consumption. The software defined components that are part of the service profile are then deployed by the end user onto a compute instance that they would have already launched.

The lifecycle of Service Profiles and their configuration is managed by administrative users in the Rafay GPU PaaS Studio. The PaaS studio is an administrative portal purpose built for management of reusable profiles.

Service profiles are "project scoped" by default i.e. they are locked to the Rafay Project they are created in. As with all resources in a project, they can be optionally shared with selected/all projects.

Info

In addition to the web console, administrators can also perform all the tasks described below programmatically using the platform's REST APIs.


Create Service Profile

To create a service profile, access PaaS Studio and navigate to the home page. The page provides options to manage profiles, including service profiles, which can be customized to meet specific requirements. Clicking on the View All icon or launching a service profile will navigate to the service profiles page, or click on the Service Profiles menu on the left to access the service profiles page.

Add Backup Policy

Click on New Service Profile. A prompt will appear to specify the following in a wizard-like experience.

Add Backup Policy

The following information is prompted in a wizard-type experience. Details captured in the service profile are presented to the end user when provisioning the service.

General Section

Unique Name

Provide a unique name for the service profile (e.g. jupyter-notebook). Note that you cannot change the unique name once the profile has been created.

Display Name

This is typically a user friendly name such as "Jupyter Notebook" that will make sense to the end users. This name is what the end users will see an experience.

Description

Provide a multiple sentence description that will help the end users understand more details about the service profile.

Environment Template

Select the name of the environment template from the drop down. When an instance of a service is launched using the profile, the "code" encapsulated in the associated environment template is used to drive the deployment of the necessary software components.

Environment Template Version

Select the version of the environment template from the drop down.

Service Type

Select a service type from the dropdown list. Note that Service Profiles tagged with a specific service type are made available to end users in the right category to make it easy to find by presenting it in the right context for the end user.

  • Notebook
  • Inference
  • Jobs
  • Custom Service

Add Backup Policy

A good example of a custom service is admins at a biotech company packaging "Nvidia's BioNemo" software and make it available for their data scientists as a "1-click" experience.

Important

Rafay provides a number of system service profiles that are available out of box in the platform.

Click Save & Continue

Once saved, General Information appears as below.

Add Backup Policy

Datacenters

The Datacenters section in service profiles defines the datacenter context used for storage filtering during service instance creation. Selecting a datacenter ensures that only the storage resources associated with that datacenter are displayed.

  • The list of available datacenters is fetched from the Inventory (InventoryDatacenter objects).
  • The selected datacenter is used for filtering storage and also participates in inventory-based matchmaking and agent selection during deployment.
  • Storage resources fall under two categories:
  • Datacenter-specific storage: storage deployed with a datacenter attached
  • Open storage: storage created without a datacenter and visible across all datacenters
  • When no datacenter is selected, the storage list displays only open storage.
  • When a datacenter is selected:
  • Storage mapped to that datacenter is shown
  • Open storage is also shown
  • Enabling Exposed makes the datacenter visible during service instance creation.
  • Enabling Overridable allows end users to modify the datacenter value while launching a service instance.
  • Only one datacenter can be selected per service profile.

Service Profile Datacenter & Storage

Example

If a storage resource such as highspeed-dc2 is deployed with Data Center 2:

  • It appears only when Data Center 2 is selected during service instance creation.
  • Storage created without a datacenter (open storage) appears for all datacenters, regardless of the selected value.

During profile creation, the system maps the profile to:

  • Datacenter-specific agents, if the same datacenter is configured in Global Settings
  • Global agents, if no matching datacenter is defined in Global Settings

For details on how datacenters map to agents, see Global Settings.

Storage

The Storage section in service profiles lists the storage instances that can be attached to the service. The storage options shown are filtered based on the selected datacenter and the type of storage defined in the profile.

  • Storage instances are fetched from existing storage service deployments.
  • Storage appears in two categories:
  • Datacenter-specific storage – storage originally deployed with a datacenter attached
  • Open storage – storage deployed without a datacenter and visible across all datacenters
  • When no datacenter is selected, only open storage is displayed.
  • When a datacenter is selected:
  • Storage mapped to that datacenter is displayed
  • Open storage is also displayed
  • The storage field supports Exposed and Overridable controls, allowing visibility and modification during service instance creation.
  • Supported storage types include high-speed-storage and object-storage, depending on how the service profile is configured.

Dynamic Storage-to-Datacenter Mapping

If a storage instance does not belong to a datacenter but is selected together with a datacenter in a service profile, the system automatically maps that storage to the selected datacenter after the service instance is deployed.

Example

  • Storages: hss-common, hss-east, obj-west, obj-shared, hss-backup
  • Datacenters: dc-1, dc-2, dc-3, dc-4, dc-5
  • hss-backup is not associated with dc-1
  • During profile creation, the user selects dc-1 and chooses hss-backup
  • After deployment, hss-backup becomes associated with dc-1

As a result:

  • When creating future service profiles and selecting dc-1, hss-backup will appear under the storage list for that datacenter

service Profile Inputs

Labels

Labels are optional metadata in the form of key-value pairs that will be automatically attached to the resulting compute instances when they are launched. Labels help in categorizing and organizing compute instances based on specific criteria like environment, project, or team.

To allow Day-2 operations (redeployment of services even when the status is Success), include the following label in the service profile:

ALLOW_DAY2_OPERATIONS: true

Add Backup Policy

Annotations

Annotations are also optional metadata in key-value pair format, but unlike labels, they are typically used for descriptive purposes rather than for categorization or filtering. Annotations provide additional context or information about the compute instance.

Extra Configuration

The Extra Configuration field in the service profile allows adding key-value pairs for additional settings, such as environment variables or custom parameters, to enable further customization of the profile.

Add Backup Policy

Design Profile (Optional)

Icon URL

Provide a URL for the Icon that will be displayed to the end user in the catalog of SKUs.

Readme

Provide a detailed readme in plain text or markdown. Administrators can use the readme as a means to educate the end user about the service profile and optionally even capture instructions.

Add Backup Policy

Input Settings

Environment templates backing a service profile can require/expect inputs from the user. The inputs can either be mandatory/required or optional. This section allows the PaaS admin to make decisions on whether they would like provide "defaults" and allow end users to "override" it.

For example, for a Jupyter notebook service profile, the user can be shown a list of notebook profiles requiring the end user to select one from this list. This will ensure that required libraries and frameworks from the selected profile will be automatically installed in the notebook for the user.

Add Backup Policy

⚠️ Important

Multi-cluster support requires the environment template to include the input variable cluster_details under the Input Variables section. This variable provides the list of eligible target clusters used by the matchmaker to determine the most appropriate deployment destination.

  • The value type should be Text and supports comma-separated cluster names.
  • This variable is optional, allowing the same template to be used for both single-cluster and multi-cluster configurations.
  • When creating a service profile, select an environment template that defines cluster_details, ensuring that the service profile inherits this input and enables matchmaker-based multi-cluster deployment.

Input Settings


Output Settings (Optional)

This section allows the PaaS admin to determine what information they would like to show the end user after the compute instance has been created. These are typically key/value pairs that are dynamically generated by the environment template.

For example, for a Jupyter notebook service profile, once the notebook has been launched, some details (URL and credentials) may need to be presented to the user so that they can access it.

Add Backup Policy


Action Settings

The Action Settings section enables admins to configure and manage action variables defined in the selected environment template. This section appears while creating or editing a Service Profile, providing an interface to customize how each action and its variables are presented at the instance level.

Actions and variables listed here are automatically derived from the underlying environment template. Each action, such as Start, or Stop, appears with its respective input variables. The configuration defined in this section acts as an override to the base template definition, allowing refinement of the display configuration and control of whether variables can be modified further in the instance layer.

If the selected environment template has no actions configured, the Action Settings section still appears, but no actions are displayed.

Outputs

Configuring Action Variables

Each action includes a set of variables that can be configured individually. For every variable, the following options are available:

  • Alias: Updates the display name of the variable for clarity (for example, changing input1 to Sample Input 1).
  • Tooltip: Adds helper text visible when hovering over the variable name, providing additional context for administrators and operators.
  • Allow Override: Controls whether the variable can be modified in the instance layer. When disabled, the variable remains fixed and does not appear during action execution.

These configurations are stored per action, ensuring each action can have distinct customization based on its function and context. For example, inputs such as run_strategy can have different default values (e.g., started or halted) for respective actions like start and stop. The Allow Override option can be enabled or disabled to control whether authorized users can modify these values at runtime, while display properties such as labels or tooltips can be customized to improve clarity.

Example: Editing Display Configuration

The following image shows an example of the display configuration edit interface for one action. In this view, the admin can modify the alias, tooltip, and other display parameters for selected variables within that specific action.

This interface represents the configuration screen for a single action. Each action listed in the Action Settings section provides a similar configuration experience.

Outputs

Click Save Changes.


View Service Profile

When PaaS Admins click on the service profiles menu on the left, the entire list of service profiles available are listed. They can search for the service profile by providing input into the search box. Some basic information about the service profile is shown to the admin in the main listing.

  • Unique Name
  • Service Type
  • Creation Date
  • Sharing
  • Actions Menu (ellipses)

To view additional details about a service profile, simply click on it. This will display all the details the administrator would have configured during initial creation.

Add Backup Policy


Update Service Profile

Follow the steps above for "View" service profile to view details about a service profile. Alternatively, click on the actions (ellipses) on the far right of a service profile and select "Edit Configuration". PaaS Admins can now make necessary changes to the service profile and save it.

Info

Any changes will go into effect only for "new" services that are launched based on the profile. Already running instances of the service profile will not be impacted.


Share Service Profile

To share a service profile with selected or all projects, click on the actions (ellipses) on the far right of a service profile and select "manage sharing". Now, select how you wish to share the project. The options are:

  • None (This is the default)
  • All Projects
  • Selected Projects

The ability to share service profiles with other projects allows platform teams to centralize the mgmt of service profiles and share them hierarchically with downstream projects where they can be used by end users in multiple teams/departments.

Add Backup Policy


Clone Service Profile

Administrators can now clone existing service profiles, making it easier to replicate and reuse configurations without having to create new profiles from scratch. This streamlines profile management and reduces administrative overhead.

  • From the Service Profiles page, click the ellipsis menu (⋯) next to an existing profile and select Clone Profile to start the cloning process

Note: - If a service profile is inherited from another project, no actions (e.g., edit, clone, share, delete) can be performed on it within the current project. - Service profiles shared by the Org Admin to the tenant from the System Catalog cannot be shared, deleted, or cloned. However, users can edit these profiles within the tenant project.

Add Backup Policy

  • Provide a Name for the profile, and optionally add a Display Name and Description
  • Select the Target Project where the profile should be created with the same configuration
  • Click Save

Add Backup Policy

Important
The environment template must be shared with the project before cloning a service profile. Otherwise, the operation will fail with an error as shown below.

Add Backup Policy

When to Use Cloning

  • Clone within the same project
    Enables creation of a new service profile with similar configurations based on an existing one.
    Example: A development team needs a service profile identical to the staging profile, with only a minor change in resource limits.

  • Clone to a different project
    Supports quick onboarding of new teams or users in separate projects by replicating a previously defined service profile.
    Example: A new project requires the same node pool configuration and taints used in a production setup from another project.


Delete Service Profile

To delete a service profile, click on the actions (ellipses) on the far right of a service profile and select delete.

Info

This is a destruction action and cannot be reversed. Once a service profile is deleted, it is no longer available to end users for use.