User Tools

Site Tools


zededa:workshop:02_datastores

This is an old revision of the document!


Datastores

A Datastore is a pointer to remote storage from which ZEDEDA Cloud retrieves images and artifacts for deployment to edge nodes. Datastores are project-scoped and reusable across multiple image definitions. Credentials are stored encrypted in ZEDEDA Cloud and never transmitted to edge nodes in plain text.

What It Is

  • Supported types: S3 (AWS S3 and S3-compatible), Azure Blob Storage, HTTP/HTTPS, SFTP
  • Credentials (access key, secret, SAS token, or password) stored encrypted per datastore record
  • Scoped to a project; can be referenced by multiple image definitions
  • Used at image download time when EVE-OS pulls an image to the local node storage

Flow: ZEDUI to API to Edge Node

ZEDUI

  1. Navigate to Objects > Datastores
  2. Click Add Datastore
  3. Select the datastore type (S3, Azure, HTTP, SFTP)
  4. Enter the FQDN or bucket URL, path prefix, and credentials
  5. Click Save

Terraform

resource "zedcloud_datastore" "s3_store" {
  name         = "workshop-s3"
  ds_type      = "DATASTORE_TYPE_S3"
  fqdn         = "s3.us-east-1.amazonaws.com"
  api_key      = var.aws_access_key
  password     = var.aws_secret_key
  dpath        = "my-bucket/images"
  project_id   = zedcloud_project.workshop.id
}

API

POST /v1/datastores
{
  "name": "workshop-s3",
  "dType": "DATASTORE_TYPE_S3",
  "fqdn": "s3.us-east-1.amazonaws.com",
  "apiKey": "<access_key>",
  "password": "<secret_key>",
  "dPath": "my-bucket/images",
  "projectId": "<project_id>"
}

What Happens on the Edge Node

  • The datastore itself is not pushed to the edge node at creation time
  • When an image referencing this datastore is assigned to an app instance on the node, EVE-OS receives the image download config including the resolved datastore URL and auth token
  • EVE-OS authenticates to the datastore and fetches the image directly, verifying integrity via SHA256 hash
zededa/workshop/02_datastores.1780243539.txt.gz ยท Last modified: (external edit)