Dashboard

Configuring and managing applications

Overview

This page provides a detailed look into advanced options available when creating and configuring SPS applications. Refer to this page to learn how to quickly create a default application with minimal configuration required.

Details
Details

Navigate to the Application section of the side menu to view the applications summary table. It provides an insight into the most important information about your applications on the cluster:

  • A list of SPS applications currently running or waiting on your cluster;
  • Information about versions assigned to each application;
  • The number of currently active instances for each application;
  • Overprovisioning for each application if enabled;
  • Hyperlinks to access details for the listed applications and their instances.

The Actions dropdown allows you to easily manipulate selected applications (e.g. edit, duplicate, delete them, etc.). Click the Create application button to begin setting up a new application.

Application configuration

When creating a new application, you can specify its advanced configuration, which is described in detail below.

Details

Name: Mandatory field for your application’s name. It may only contain lowercase alphanumeric characters and dashes, must be at least 2 characters long and at most 20 characters long.

Custom Domain: You can set up your uniquely branded domain name. Read more about custom domains here.

Instances Plugins

Custom plugin endpoints: If you are customizing your SPS instances with plugins on your cluster, add the DNS names for any plugins that you would like to be enabled for instances of this application to the list.

Custom ICE servers

Custom ICE server URLs: List of registered STUN/TURN servers to be used in addition to the default CoTURN server. The browser will always try STUN connection first, if it is possible. Each tab can contain a list of STUN/TURN servers that can be authorized with the supplied username/credential pair for that list.

Username/Credential: Credentials to authenticate with the list of STUN/TURN servers.

For more information on RTC Connection options refer to RTCPeerConnection - Configuration.

Authentication

Note that your application HTTP endpoint URL by default is public, so anyone with the link can access your application. To restrict the link, you need to configure authentication as described below.

Scalable Pixel Streaming offers two authentication methods out of the box: None and OAuth2.

SPS authentication type: Choose one of the offered authentication methods: None, OAuth2 or Custom.

None is the default authorization method and means that any user who has the application endpoint link will be able to spin up instances of that application on demand.

You can restrict access to your application by using a third-party OAuth2 authorization system or supplying your own plugin. Read more about OAuth2 here.

If you require OAuth2 authentication, before you can set it up, first finish creating the application with None authentication, as you will require the application endpoint to be generated. Using placeholder endpoint is not recommended, as it can be occasionally cached by the pods.

After the application is created, retrieve its endpoint URL from the dashboard, and navigate to editing its authentication parameters. You will then need to enter the following details.

Group name: Assign a name to this authorisation group to easily identify it. This could simply be the name of your OAuth2 provider or a name for the group of users with specific access.

Client ID: Client ID supplied by your OAuth2 provider.

Client Secret: Client secret supplied by your OAuth2 provider.

Client Redirect URL: SPS application link to be redirected to upon successful authorisation. Note that some OAuth providers do not require this field, so it can be left blank for those providers.

Note that changing the region of the deployment at a later stage will change the application endpoint, so remember to manually update it here and on the auth provider end. After manually updating an existing OAuth2 configuration on SPS, the application will need to be reset: select the application from the list in the dashboard, and click Unassign version in the dropdown list. Then open the application’s versions list and set the desired version to be Active again. This will clear any remaining pod cache, enabling the new configuration to function correctly.

Endpoint Auth Style: Select an option that represents how your OAuth2 provider authenticated requests for tokens: AutoDetect (0), In Parameters (1) or In Headers (2).

Endpoint Auth/Token URL: Authorisation and token exchange server endpoints associated with your OAuth2 provider. Reference this page for a list of URLs for different providers.

Scopes: Provider-specific list of permissions that the application requires.

If Custom is chosen, then you will need to supply a link to the endpoint of your custom system that will handle authorisation outside SPS and redirect the user to the target SPS URL upon successful login. Similarly, if your existing custom authentication configuration is manually updated, the application will need to be reset as detailed above.

Cloud Parameters (CoreWeave only)

Here, you are able to overwrite the default scheduling of the SPS instance to a different Region, GPU, and set their respective weights.

GPUs: Overwrite the default types of GPU you would like to use for your application.

Regions: Overwrite the default regions where you would like your application deployed.

Weight: Assign preferences to a GPU-Region pairing, where higher weight reflects higher priority. For example, RTX6000 in ORD1 with a weight of 100 will be prioritised in resource allocation compared to an RTX6000 in LGA1 with a weight of 80.

Advanced

CPU: Overwrite the default CPU resource unit for an SPS Instance. For more info on CPU units refer to Kubernetes CPU Units.

Memory: Overwrite the default memory allocation for an SPS Instance. For more info on Memory units refer to Kubernetes Memory Units.

Signalling Server Replicas: Increase the default number of signalling server replicas for a given application.

Instance Manager Replicas: Increase the default number of instance manager replicas for a given application.

Authentication Replicas: Increase the default number of authentication replicas for a given application.

All application settings except for its name can be changed later via the Edit option. Once happy with your settings, click the Continue to version button and advance to the next screen where you can create a version for your application.

Applications actions

After your application has been created, it will appear in the applications summary table where you can interact with it via the Actions dropdown. Select one or multiple applications via the checkbox next to their name and choose the desired option in the dropdown.

View details: Navigates you to the application summary page where you can view its current configuration, a list of its versions, a detailed view of its active version, and all its running instances. From the list of versions, you can set any version of the application as active, view details of any version and delete them.

Edit application: Navigates you to the application edit screen, where you can change its entire configuration except its name.

Create version: Navigates you to the create version screen, where you can configure and assign a new version to the selected application.

Mark as inactive: For all selected applications, unassigns their respective current active versions and terminates all of their instances. The applications will stay in the Awaiting version status until one of their respective versions is assigned as Active.

Duplicate application: Navigates you to the application creation screen and will duplicate the configuration of the current application. The new application’s name will be appended with a copy suffix, which can be changed at this stage.

Delete application: Deletes all selected applications, their associated versions, and terminates all its running instances.