Version: Latest

Installation Guide (Replicated)

Requirements

To deploy Studio with Replicated you need:

  • Rasa Account: An enterprise Rasa account and a Rasa Pro and Studio license keys.
  • LLM API Key: OpenAI API key or credentials for another LLM.
  • VM Specs: 4 vCPUs, 16GB RAM, 100GB disk space (x86 CPU only).
  • OS: Ubuntu >=22.04 or RHEL 9.
  • DNS: A DNS record pointing at your VM.
  • Security: sudo access on the VM, with open ports for 22 (SSH), 443 (HTTPS), 30000 (Admin Console), and optionally 30002 for Kafka.
Your VM must be able to access the following domains on the internet. These domains are required to install the embedded Kubernetes cluster inside your VM and then deploy Rasa Studio artifacts onto that cluster. If your environment performs outbound traffic filtering, ensure that your firewll permits CNAME redirections and that the following domains are whitelisted.
*.amazonaws.com.
github.com
kubernetes.github.io
objects.githubusercontent.com
raw.githubusercontent.com
proxy.replicated.com
registry.k8s.io
registry.rasa.com
replicated.rasa.com
europe-west2-docker.pkg.dev
europe-west3-docker.pkg.dev
googlecode.l.googleusercontent.com.

Get Started

The installation is in two parts: firstly you will install the embedded Kubernetes cluster onto your VM and then you will deploy Rasa Studio on top.

Step 1: Install the Embedded Cluster

To install the embedded cluster in your VM, your Rasa account team will provide you with a URL and password to download an installation bundle. You can either download this bundle directly onto your VM or transfer it across using a tool such as SCP.

  1. On your VM, extract the installation bundle

    tar -xvzf studio-dragon-stable.tgz
  2. Install the embedded cluster. If you are performing an online install, use:

    sudo ./studio-dragon install --license license.yaml

    If you are performing an airgap install, use:

    sudo ./studio-dragon install --license license.yaml --airgap-bundle studio-dragon.airgap
  3. You'll be prompted for an Admin Console password. This will allow you to access the Replicated Admin Console to deploy Studio. You must remember this password as you proceed with the installation.

  4. Wait for the install to complete. You'll be told when it is ready:

    image
  5. You can now visit the Admin Console on https://<external-ip-or-hostname>:30000. Note that depending on the network architecture of where you deployed the VM, you may have to use a public or private IP. Proceed through the setup wizard where you may optionally add your own TLS certificate, or stick with the self-signed one.

  6. Login with the password you just set during the setup.

  7. When prompted to optionally add nodes to the cluster, click "Continue". Rasa Studio only supports running on a single node here.

Step 2: Configure Rasa Studio

We can now proceed to the install of Studio itself. You will be presented with a configuration screen where the sections are described below.

Container Images & API Keys

Here you will supply the versions of products that you wish to deploy and add the OpenAI API key that is required for building CALM bots in Studio. We recommend that you stick to the default versions set on this page to ensure good compatibility.

tip

You can also choose here to use a Private Registry for if you're using an on-prem Docker image registry such as Artifactory. To do this, you'll need to first create a Kubernetes ImagePullSecret object on the embedded cluster to authenticate with your private registry. On your VM, run the following command to get a shell into the embedded Kubernetes cluster:

sudo ./studio-dragon shell

Create an ImagePullSecret following the official Kubernetes documentation:

kubectl create secret docker-registry regcred --docker-server=<your-registry-server> --docker-username=<your-name> --docker-password=<your-pword> --docker-email=<your-email>

Accessing Rasa Studio

You must also provide an Ingress DNS Hostname for Studio to be accessible after the installation. This should be the bare domain you have pointing to your VM that was a prerequisite. You should also pick whether you're intending to access Studio over HTTP or HTTPS. The Annotations field can be left blank unless you understand what this is and have specific annotations you want to add.

tip

If you're deploying on AWS and accessing the machine over the internet, you can use the instance's default public DNS name eg ec2-[IP-ADDRESS].[REGION].compute.amazonaws.com.

Model Training and Bot Runs

Here you will configure how many assistants you expect to train and run simultaneously inside of Studio. You can reduce this number to lower the hardware requirements, or leave it as the default.

Keycloak

Set administrator credentials for Keycloak, which is the authentication provider for Studio that allows you to connect it to your own SSO provider.

Database

Choose to use an embedded PostgreSQL server or connect to an existing external PostgreSQL database. If you intend to run this instance of Studio in production, we recommend using an external PostgreSQL instance to ensure data resiliency.

If you choose to use embedded PostgreSQL, all of the setup will be handled for you.

If you choose to use an external PostgreSQL database, you must configure the hostname and authentication credentials.

Kafka

Choose to use an embedded Kafka deployment or connect to an existing external Kafka deployment. If you intend to run this instance of Studio in production with significant volume of bot traffic making use of the Conversation Review feature, we recommend using an external Kafka deployment to ensure adequate performance and resiliency.

If you choose to use embedded Kafka, no further configuration is required.

If you choose to use an external Kafka deployment, you must configure the hostname, authentication, security settings and pre-create topics on your Kafka deployment yourself before connecting it.

You may optionally choose to expose the embedded Kafka deployment to be accessible from outside of your VM so that you can connect a deployed bot to your Studio instance. If you enable this, Kafka will be exposed on the VM on port 30002 and you must ensure that appropriate security group or firewall rules are configured to be able to access this port.

Resource Management

Optionally configure Kubernetes resource limits and requests for Studio components. This is advanced configuration to allow people who are familiar with Kubernetes to manually set resource usage requirements. If you're not sure what this is, you can safely ignore this section.

Step 3: Install Rasa Studio

  1. When you've supplied all of the configuration values, click Continue.

  2. You'll move on to the Preflight Checks screen, which will identify any issues with your infrastructure that may prevent you from successfully deploying Studio. Be sure to resolve any issues that are found before going further.

    image
  3. When all checks have passed, click Deploy.

  4. Wait for the installation to complete. This will take about 10 minutes. When the deployment is complete, the status on the dashboard will say Ready and you'll be able to use the Access Studio link to use Rasa Studio.

    image
    • You can access the Rasa Studio UI by visiting https://HOSTNAME in your browser where HOSTNAME is the DNS name you provided in the configuration..
    • You can access the Rasa Studio User Management UI (Keycloak) by visiting the URL https://HOSTNAME/auth. The credentials to login to the Keycloak administration console are the values you set in the Keycloak section of the Studio Configuration above.

🎉 That's it! You can now proceed to activate your license.