When creating a cluster, GPUStack can leverage DigitalOcean to create workers and add them to the GPUStack cluster.
You need to sign up for a DigitalOcean account and create a Personal Access Token on the API page.
Note: The token scope must be set to Full Access. If you select permissions using Custom Scopes, you may encounter issues deleting droplets.
When starting the MaaS-Base Server, you need to specify the --server-external-url parameter. This parameter is used to configure the worker's --server-url after the droplet is created and the worker is started. If your server is running behind a proxy, please set the proxy address to ensure that droplets running on the public network can access the MaaS-Base Server API using this address after startup.
Please refer to the steps in Creating DigitalOcean Cluster
Create a DigitalOcean cloud credential on the Cloud Credentials page.
On the cluster creation page, select DigitalOcean as the Cloud Provider:
Enter a name, select the cloud credential you just created, and choose a region that supports GPU droplets.
Click Next to create a worker pool for the cluster.
Fill in the Name, Replicas, and Batch Size as needed. Then select the Instance Type (droplet size in DigitalOcean terms) for the worker pool.
Next, select the OS Image.
Currently, only Nvidia series GPU Droplets are supported, as AMD GPU Droplets are often unavailable. Only Debian-based operating systems are supported.
nvidia-open driver, CUDA 12.8, and nvidia-container-toolkit 1.17.8-1 via cloud-init.nvidia-driver-570 driver, CUDA 12.8, and nvidia-container-toolkit 1.17.8-1 via cloud-init.Labels and volumes are supported to set in worker pool to provision worker. The volumes created and attached for droplet won't be mount into worker container automatically. You can modify the run worker script in /opt/gpustack-run-worker.sh to mount the volumes as needed.
Click Save if all set.
After saving the cluster, navigate to the Workers page to view the provisioning progress of DigitalOcean workers.
The provisioning process includes several steps:
Initialized status and waits for the worker container to start and connect to the server.Once the worker reaches the Ready status, you can deploy models on it.
When a DigitalOcean worker is no longer needed, follow these steps to safely destroy the droplet: