Users and management

A user is part of an organization and can be assigned a predefined role. A user can be part of and assigned to multiple tenants. All users within the same tenant can view or manage projects and workloads present in the tenant. SambaStudio allows organizations to assign users across multiple tenants.

This document describes:

See Tenants and management for more information on SambaStudio tenants.

Structure and nomenclature

SambaStudio uses the following terminology in describing hardware, tenants, organizational structure, and users.

Organization

Organization describes an entity or customer using SambaStudio.

User

A user is part of an organization and can be assigned a predefined role. A user can be part of and assigned to multiple tenants. All users within the same tenant can view or manage projects and workloads present in the tenant.

Tenant

A tenant is an allotment of users and resources within an organization. Each tenant has its own resources, users, and workloads.

Default tenant

The default tenant is where all resources are allocated initially. During the SambaStudio installation, the default tenant (Default Tenant) is created and an organization administrator (OrgAdmin) is assigned to it.

When updating tenant RDUs and reallocation of resources is performed, resources will get removed from the selected tenant and assigned to the default tenant. The resources then can be added from the default tenant to another tenant.

Project

A project is a logical grouping of workloads and artifacts within a tenant.

Nodes and RDUs

A node describes the collection of SambaNova Systems' Reconfigurable Dataflow Units™ (RDUs) available per SambaNova hardware generation. For each SambaNova hardware generation (SN10, SN30, SN40L), a total of eight RDUs are available per node. The number of nodes per hardware configuration affects the the number of available RDUs. For example, if your SN10 hardware generation is configured with two nodes, you will have a total of 16 RDUs (eight RDUs per node).

If a job or endpoint requires more than one RDU to start, the RDUs must be available on the same node of the SambaNova hardware generation (SN10, SN30, SN40L).

User roles

A role is a predefined category that can be assigned to a user by an organization administrator (OrgAdmin) or tenant administrator (TenantAdmin). SambaStudio users are defined by the following user roles.

Organization administrator

The organization administrator (OrgAdmin) has the ability to manage resources and users across all tenants. As such, the organization administrator can access the Users and Tenant management menu items from the left menu panel.

Rights

  • Can manage all users, resources, and workloads across all tenants of the platform.

  • Can view compute resources across all tenants of the platform.

  • Can stop and delete jobs and endpoints created by any user.

  • Can add endpoint API keys across all tenants.

  • Can delete datasets and models created by any user.

  • Can update the allocation of resources across tenants.

Tenant administrator

The tenant administrator (TenantAdmin) can manage users as described in this document. The tenant administrator can access the Users menu item from the left menu panel.

Rights

  • Can manage users within their assigned tenant.

  • Can stop and delete jobs and endpoints created by any user in their assigned tenant.

  • Can add endpoint API keys within their assigned tenant.

  • Can delete datasets and models created by any user in their assigned tenant.

User

Users are assigned a Username and tenant by an organization administrator (OrgAdmin) or tenant administrator (TenantAdmin). A user can be part of and assigned to multiple tenants.

Rights

  • Can take all actions for their own workloads.

  • Can add endpoint API keys for endpoints they own.

  • Can only view jobs, endpoints, models, and datasets created by other users in their tenant(s).

  • Cannot delete or stop any workloads created by other users in their tenant(s).

User management

An organization administrator (OrgAdmin) or tenant administrator (TenantAdmin) can assign users across multiple tenants.

User management using the GUI

Click Users from the left menu to navigate to the User management window.

The User management window displays a list of all users in a multi-column table. The table presents the following information.

The table can be arranged according to specific data by using the All tenants and Filters drop-down.

  • Username displays the name assigned to the user.

  • Role displays the role assigned to the user by an organization administrator (OrgAdmin) or tenant administrator (TenantAdmin).

  • Tenant displays the tenants assigned to the user. If a user is assigned to more than one tenant, the user will appear in more than one row with each row displaying the different tenant names.

  • Added by displays the user or entity that added the user to the tenant.

  • Added on displays the date the user was added to the tenant.

  • Status displays the current status of the user, as Adding, Active, Removing, and Removed.

  • The three dots open a drop-down menu that allows the removal of a user.

User management
Figure 1. User management window

User management using the CLI

Run snapi user --help in the snapi command line to display the options and commands available for user management via the CLI.

Example snapi user help
$ snapi user --help
Usage: snapi user [OPTIONS] COMMAND [ARGS]...

Options:
  --help  Show this message and exit.

Commands:
  add     Add users to a tenant or organization.
  delete  Delete users from a tenant or organization
  list    Lists users associated with the tenants and org

Using the GUI to add a user

The organization administrator (OrgAdmin) and tenant administrator (TenantAdmin) can add users to the platform by following the steps below.

  1. Click the Add user button. The Add users box will display.

  2. Enter a name for the user in the Username field.

  3. Select a role for the user from the User role drop-down.

  4. Select a tenant to assign to the user from the For tenants drop-down. More than one tenant can be assigned.

    1. Select the checked tenant from the drop-down to unassign it to the user. Alternately, click the X next to the tenant name (under the Username field) to unassign the tenant.

  5. Click Add more users to add multiple users during the process.

  6. Click Save to complete the process. Click Cancel to stop the process and close the box.

Add users
Figure 2. Add users

Using the CLI to add a user

The example commands below demonstrate how to use the snapi command line to add a user. The command specifies the following:

  • johnd as the name of the user to add.

  • User as the role of the added user.

  • test01 as the tenant to assign the user.

Example snapi user add
$ snapi user add \
    --user-name johnd \
    --role User \
    --tenant test01

Run snapi user add --help for additional command options.

Using the CLI to delete a user

The example commands below demonstrate how to use the snapi command line to delete a user. The command specifies the following:

  • johnd as the name of the user to delete.

  • test01 as the tenant that is assigned to the user.

Example snapi user add
$ snapi user delete \
    --user-name johnd \
    --tenant test01

Run snapi user delete --help for additional command options.

Using the CLI to list users

Run snapi user list in the snapi command line to display a list of users. The command will return the following information.

  • User Id displays the username or ID of the user.

  • Role displays the role assigned to the user by an organization administrator or tenant administrator.

  • Tenant displays the tenants assigned to the user. If a user is assigned to more than one tenant, the user will appear in more than one row with each row displaying the different tenant names.

  • Added By displays the user or entity that added the user to the tenant.

  • Added On displays the date the user was added to the tenant.

  • Status displays the current status of the user.

Example snapi user list
$ snapi user list

------------
User Id               |  johnd
Role                  |  OrgAdmin
Tenant                |  All tenants
Added By              |  janed
Added On              |  2023-05-12
Status                |  Active
------------
User Id               |  janed
Role                  |  OrgAdmin
Tenant                |  All tenants
Added By              |  system
Added On              |  2023-05-09
Status                |  Active