Skip to content

Formations

Cloud-agnostic IaC recipes for deploying infrastructure, applications, and services across the Supercloud.

Overview

RosettaHub Formations are cloud-agnostic IaC recipes that describe the infrastructure resources, applications, security credentials, and SSL certificates needed to create a service on any cloud. Think of a formation as a blueprint that can be used repeatedly to create identical infrastructure across AWS, Azure, GCP, Alibaba Cloud, OVH, and OpenStack -- all from a single template.

When you launch a formation, RosettaHub creates a session containing one or more machines (cloud instances). The formation itself remains unchanged - it's the template from which instances are created. Formations launch under your organization's budget controls and policy enforcement, ensuring that every deployment stays within approved guardrails.

Concept Description
Formation Recipe/template defining infrastructure
Launch Action that creates instances from the recipe
Session Active deployment with running machines
Machine Individual cloud instance

Formations are cloud-agnostic, enabling deployment across AWS, Azure, GCP, Alibaba Cloud, OVH, and OpenStack from a single template. They also serve as a powerful sharing mechanism -- users with access to a shared formation can deploy complex applications with a single click. For more on how formations fit into the MetaCloud layer, see the MetaCloud overview.

Two steps to a running environment

For end users the experience is simple: Launch your formation, then Connect to the running session. Everything else -- provisioning, networking, storage mounting, credential injection -- happens automatically behind the scenes.

What Goes Into a Formation

A formation is composed of up to ten building blocks. Not every formation uses all of them -- you include only what your workload requires.

Component Purpose
Cloud Keys MetaCloud keys that grant the formation access to deploy on a specific cloud account and region -- each key includes a dedicated VPC automatically created by RosettaHub
Machine Images Custom, shared, or public cloud images that define the OS and pre-installed software
Instance Types CPU, memory, and GPU specifications for the machines that will be launched
Cloud Storages Storages -- key-value stores, block stores, file systems -- auto-mounted on launched machines
Container Images Private or public Docker/OCI container images (Docker formations)
Applications and Scripts Software activated on servers or containers at launch time
IaC Templates Infrastructure as Code scripts -- AWS CloudFormation, CDK, Terraform, OpenTofu, Pulumi -- executed during provisioning
SSL Certificates HTTPS certificates auto-deployed on machines launched by the formation
Cluster Definitions Worker node counts, instance types, and configuration for EMR/Dataproc/HPC cluster formations

These components combine into a single template that can be launched repeatedly, shared with collaborators, or published to a marketplace -- producing identical, governed environments every time.

Formation Lifecycle

Formations follow a seven-step lifecycle that enables reproducible, shareable service delivery:

graph LR
    A["1. Clone"] --> B["2. Customize"]
    B --> C["3. Configure"]
    C --> D["4. Launch"]
    D --> E["5. Connect & Install"]
    E --> F["6. Snapshot"]
    F --> G["7. Share / Publish"]
    G -.->|Iterate| A

    style A fill:#e3f2fd,stroke:#1565c0,color:#000
    style B fill:#e3f2fd,stroke:#1565c0,color:#000
    style C fill:#e3f2fd,stroke:#1565c0,color:#000
    style D fill:#fff3e0,stroke:#e65100,color:#000
    style E fill:#fff3e0,stroke:#e65100,color:#000
    style F fill:#e8f5e9,stroke:#2e7d32,color:#000
    style G fill:#e8f5e9,stroke:#2e7d32,color:#000
Step What Happens
Clone Start from a shared formation, marketplace entry, or service catalog that is close to your requirements
Customize Update the formation's label, description, and appearance
Configure Set the cloud images, storages, instance types, IaC templates, and other components
Launch Deploy the formation -- RosettaHub provisions all resources automatically
Connect and Install Access the running session and install any additional software
Snapshot Capture the running machine as a new image, preserving your customizations
Share / Publish Share the formation with colleagues, publish it to an institutional marketplace, or list it in a service catalog

After publishing, others can clone your formation and repeat the cycle -- creating a flywheel of reproducible, community-driven environments.

Formation Types

RosettaHub supports several formation types, each available in both On-Demand and Spot modes. Spot formations launch Spot/Preemptible instances at 60-90% discounts compared to on-demand pricing, with built-in spot instance hibernation to preserve machine state when the cloud provider reclaims capacity.

Type Description Session Structure
Machine Single instance from any cloud image One machine
Docker Single instance with pre-configured containers (Jupyter, RStudio, etc.) One machine with browser access
Machine Pool Pool of identical machines for batch processing or workshops Multiple independent machines
Virtual Lab Any image accessible via browser-based virtual desktop Proxy + target machine
Big Data Cluster Managed Spark/Hadoop clusters (EMR, Dataproc, HDInsight, E-MapReduce) Proxy + master + workers
HPC Cluster Dedicated HPC clusters for scientific computing Head node + compute nodes + shared storage

Creating Formations

Method 1: Create from Scratch

Create a new formation by specifying all configuration:

  1. Click Create Formation in the Formations panel
  2. Select the formation type (Machine, Pool, Virtual Lab, etc.)
  3. Configure:
  4. Image - Base machine or Docker image
  5. Cloud Key - Credentials for deployment
  6. Instance Type - Compute resources
  7. Region - Deployment location
  8. Additional settings specific to formation type
  9. Save the formation

This method gives you full control over all settings but requires more configuration.

Method 2: Clone an Existing Formation

Start from a public or shared formation:

  1. Find a formation in the Formations panel
  2. Right-click and select Clone
  3. RosettaHub creates a copy with your default keys and certificates
  4. Customize as needed

Cloning is the quickest way to get started with tested, working configurations.

Working with Formations

Customizing Your Formation

After creating or cloning a formation:

Customize Appearance

Change the formation's metadata:

  • Label - Display name
  • Description - What the formation does
  • Icon - Visual identifier

Update Settings

Configure formation parameters:

Setting Description
Instance Type Compute resources (CPU, memory)
Spot Bid Price Maximum price for Spot instances
SSL Certificate HTTPS certificate for secure access
Cluster Nodes Number of worker nodes (clusters only)
Region Deployment location

Configure Machine Launch Options

Fine-tune machine settings:

  • Root Disk Size - Storage for the operating system
  • Container Settings - Volumes, applications, environment variables
  • Network Configuration - VPC, subnets, security groups

Launching a Formation

Deploy your formation to create running instances:

  1. Select the formation
  2. Click Launch or double-click
  3. RosettaHub provisions all resources automatically
  4. A session is created with one or more machines
  5. Machines appear in the Machines panel

Formation vs Machine Actions

After launching, you manage the session, not the formation. Stop, start, hibernate, and delete actions apply to machines within the session. See Sessions for lifecycle management.

Connecting to Your Session

Access your running machines:

  • SSH - Terminal access to Linux instances
  • RDP - Desktop access to Windows instances
  • Web Interface - Browser-based access (Jupyter, RStudio, etc.)
  • Virtual Desktop - Full graphical desktop in browser

Creating Images from Sessions

Capture customizations from a running machine:

  1. Launch a formation and connect to the machine
  2. Install additional software and configure the environment
  3. In the Machines panel, select your machine
  4. Right-click and choose Snapshot
  5. The new image can be used in formations

Formation Actions

Management Actions

Action Description
Create Create a new formation from scratch
Clone Create a copy with your keys and certificates
Customize Change label, description, icon
Update Modify instance type, spot price, SSL certificate, nodes
Configure Container Edit Docker container settings (managed images)
Configure Machine Launch Options Set disk size, network, startup scripts
Delete Remove the formation

Deployment Actions

Action Description
Launch Deploy the formation to create machines

Sharing Actions

Action Description
Share Grant access to users, groups, or organizations
Publish List on the RosettaHub Marketplace (share with "hub" first)

Batch Actions (for Shared Formations)

Action Description
Launch on Sharees Deploy formation for all users it's shared with
Stop on Sharees Stop machines for all sharees
Delete on Sharees Remove machines for all sharees

Organization Actions

For organization managers:

Action Description
Set Default Formation UIDs Define default formations for the organization
Launch Organization Formations Deploy all default formations
Stop Organization Formation Instances Stop all default formation machines
Start Organization Formation Instances Start all stopped machines
Delete Organization Formation Instances Remove all formation machines

Spot vs On-Demand

Aspect On-Demand Spot
Pricing Standard rates 60-90% discount
Availability Guaranteed May be interrupted
Use Case Production, critical workloads Development, batch processing, fault-tolerant tasks
Termination User-controlled Provider may reclaim

Spot Best Practices

  • Enable Snapshot on Termination or Spot Hibernation to preserve work automatically
  • Use Fallback to On-Demand for critical tasks
  • Choose instance types with better Spot availability
  • Leverage hibernation to resume exactly where you left off when capacity returns

Best Practices

Formation Design

  • Start from tested public formations when possible
  • Document your customizations in the description
  • Use meaningful labels that describe the purpose
  • Test formations before sharing

Resource Management

  • Stop machines when not in use (see Sessions)
  • Use Spot instances for development and testing
  • Set up auto-stop timeouts for idle resources
  • Delete unused sessions to avoid charges

Sharing

  • Test formations thoroughly before sharing
  • Include clear instructions in the description
  • Consider creating organization-specific variations
  • Keep shared formations stable

Sharing and Collaboration

Formations are designed for sharing. RosettaHub provides four collaboration models that work across organizational and cloud boundaries.

URL-Based Sharing

Share a formation as a simple link. Recipients click the URL, select their own cloud key, and launch -- deploying a full environment from a shared template without manual configuration.

Institutional Collaboration

Share formations across organizational boundaries. A research group at one institution can share an environment with collaborators at another, each launching under their own budgets and governance policies.

Private and Public Marketplaces

Curate formations into institutional service catalogs (private marketplaces) or publish them to the RosettaHub public marketplace. Marketplaces act as self-service portals where users browse, select, and launch pre-approved environments.

Cross-Cloud Portability

Formations adapt to any target cloud. A formation built on AWS can be launched on Azure, GCP, or a private cloud -- the recipient chooses where to deploy. This ensures that sharing is never constrained by which provider either party uses.

  • Sessions - Connect to running machines and containers
  • Images - Machine images used by formations
  • Cloud Keys - Credentials for launching formations
  • Perspectives - Organize formation views