Deploying & Managing Workloads
1. Deploying the Vorta Cluster
Starting the Vorta Mainframe:
Bash
./bin/vorta-mainframe --config config/mainframe.yamlThe Mainframe initializes, starts its API, and listens for workers.
Starting a Vorta Worker:
Bash
./bin/vorta-worker --config config/worker.yaml --node-id worker-01-zoneAThe worker registers with the Mainframe.
Deploying Smart Contracts (Optional):
If using blockchain components:
Bash
cd contracts forge script script/DeployVortaRegistry.s.sol --rpc-url $RPC_URL --private-key $PRIV_KEY --broadcast
2. Preparing a Secure Workload
Create a Dockerfile for your application (e.g., AI model, ZK verifier).
Build and Push the Docker image to a registry accessible by workers.
Prepare a Gramine Manifest Template for your application, specifying how it runs in SGX.
3. Submitting a Job
Define a Job Specification (
example_job.json):JSON
Submit using
vorta-cli(Placeholder Command):Bash
4. Monitoring Job Status and Cluster Health
Get Job Status:
Bash
List All Jobs:
Bash
View Cluster Metrics: Via Prometheus scraping the Mainframe's
/metricsendpoint and visualizing in Grafana.
5. Retrieving Attestation Reports and Results
Get Attestation Report for a Job:
Bash
The report contains the SGX quote and collateral for independent verification.
Accessing Job Outputs: Outputs are available at the
destination_urlspecified in the job spec upon successful, attested completion.
📄 Page: Example: ZK-Proof Verification Job
This page details submitting a specific ZK-Proof verification job.
Job Spec for ZKP (
zkp_verify_job.json):JSON
Submission:
Bash
Last updated