How to run batch jobs on Vultr
Feb 19, 2025 Batch Jobs Written by Vivek Shukla
Table of Contents
Introduction
Vultr doesn’t provide a native way to run batch jobs. However, we can use Daestro to run batch jobs on Vultr. Daestro is a platform that allows you to run compute workloads across multiple cloud providers. In this guide, we will learn how to run a batch job on Vultr using Daestro.
Prerequisites
- Daestro account: If you don’t have one, you can sign up here
- Vultr account: If you don’t have one, you can sign up here (affiliate link)
Vultr API Key
We will need to create a Vultr API key to let Daestro access your Vultr account.
- Go to the Vultr API page
- Click on the “Enable API” button, if it’s not already enabled
- Click on “Allow All IPv4” and “Allow All IPv6” button to allow all IP addresses
- Keep the API key handy, we will need it in the next steps
Setting up Cloud Auth in Daestro
- Go to the Cloud Auth page in Daestro Console
- Click on the “Add New” button
- Select “Vultr” from the given options
- Enter appropriate name for the account, e.g. “Vultr API”
- Enter the API key you created in the previous steps
- Click on the “Add Cloud Auth” button
API Keys are encrypted with AES-256-GCM at rest (database) and in transit using TLS. You can delete and update the API key anytime. However, for security reasons, you won’t be able to see the API key after you submit.
Compute Environment
Let’s define the instance type that we want to run our job on. We do that by creating a compute environment.
- Go to the Compute Environments page in Daestro Console
- Click on the “Add New” button
- Select your Cloud Auth
- Select the Instance Family then Instance Type that you want to run your job on
- Give this compute environment a name, e.g. “Vultr-2-cpu-16-gb”
- Click on the “Add Compute Environment” button
Job Queue
Job queues define how and when jobs are executed.
- Go to the Job Queue page in Daestro Console
- Click on the “Create Job Queue” button
- Fill in the details and click on the “Create Job Queue” button
- After job queue is created, add the compute environment to the job queue
Job Definition
Job definition is the blueprint for the job. Here we define the docker image that we want to run and all the attributes to the container that we want to pass on.
- Go to the Job Definition page in Daestro Console
- Fill in the details for the job definition
- Click on the “Create Job Definition” button
Running Job
You can submit jobs either from Daestro Console or use the API.