Loading the SDK to a Cluster

Once a cluster is up, you need to use the Genvid Toolbox genvid-sdk command to upload the SDK and the project. The steps are similar for AWS and Azure–the directions will call out where there are differences.

To load a project in the cloud:

  1. Upload the SDK images.

genvid-sdk -c myclusterid upload-images-sdk -u
  1. Set up the SDK.

    genvid-sdk -c myclusterid setup
    

    After this step, some services are available in Cluster-UI.

  2. Open the Cluster UI.

    genvid-sdk -c myclusterid monitor
    

    Although the list of jobs is empty, you can find the list of nodes at the top. It may take some time for some nodes to show up, like the game node.

    Note

    On average, a Windows server will finish configuring after between 15 and 25 minutes, although it can take up to an hour. If your setup is taking longer than that, check with your cloud provider to see if the node will eventually come up or if there are other issues with it.

    Even without all the nodes available, you can continue setting up.

  3. Load the SDK configuration into the cluster.

    genvid-sdk -c myclusterid load-config-sdk
    

At this point, the SDK definition is loaded and now there is one job: services.

Example: Building the DirectX Sample for the Cloud

If you’ve set up a Docker host, you can build images for the Run the DirectX Sample to see how it works. See the Genvid Toolbox documentation on how to build images with Docker for AWS and Azure.

  1. Build the cloud image (this will create the associated images we need to run it on the cloud):

    py ./samples/cube/web/web.py build-cloud
    
  2. Upload the image we just created and update the config for it:

    py ./samples/cube/web/web.py -c USERNAME-CLUSTERNAME upload-images --update-config
    
  3. Load the cube config on the cluster:

    py ./samples/cube/web/web.py -c USERNAME-CLUSTERNAME load
    
  4. Repeat the process for the game. There are different game samples available, below is the directx one:

    py ./samples/cube/directx/directx.py prepare
    py ./samples/cube/directx/directx.py build-cloud
    py ./samples/cube/directx/directx.py -c USERNAME-CLUSTERNAME upload-images --update-config
    py ./samples/cube/directx/directx.py -c USERNAME-CLUSTERNAME load
    

After this step, the images are available from cloud storage and the project configuration is loaded and ready to use in the cloud.

  1. Open the Jobs page.

    genvid-sdk -c myclusterid monitor
    
  2. Click the Start all button.

  3. Click the CUBE SAMPLE link.

  4. Check that everything is working correctly.

When you’re finished click the Stop All button to stop the services.

Note that the Unity Cube Sample and Unreal Cube Sample can be run in the cloud with similar steps.