BYOC with AWS — overview
Bring Your Own Cloud (BYOC) runs your pipelines on compute that lives in your own AWS account, with inputs and results in your own S3 bucket — while Carolina Cloud does all the scheduling, provisioning, and teardown for you. You point us at your AWS account once; after that, launching a cloud run is a single toggle.
It’s the same Nextflow experience as a normal Carolina Cloud run — the same launcher, the same live view, the same pipelines — just executed on infrastructure you own.
When to use it
Section titled “When to use it”- Your data can’t leave your account. Inputs, work dir, and outputs all stay in your S3 bucket; nothing is copied to Carolina Cloud storage.
- You already have AWS commitments — credits, a committed-spend agreement, or reserved capacity — and want pipeline compute to draw against them.
- You want egress on your terms. Data never crosses a cloud boundary during a run, so there are no cross-cloud egress fees.
If none of those apply, the standard Carolina Cloud compute path is simpler — there’s nothing to set up.
How it works
Section titled “How it works”A BYOC run has two halves:
- The head — the small driver that runs your
nextflowprocess, builds the DAG, and reports progress — runs on Carolina Cloud. It holds no pipeline data; it only orchestrates. - The workers — where the actual tasks run — are single-tenant nodes provisioned in your AWS account, one pool per pipeline run, used only by that run and torn down when it finishes. Scheduling is still done entirely by Carolina Cloud; your nodes just execute the tasks they’re handed.
Your S3 bucket is the pipeline’s work dir and output location, so task data is read and written in-region, inside your account — the workers never ship it elsewhere.
When a run ends (success, failure, or cancel), the worker pool and its nodes are automatically torn down. Your S3 bucket is never touched — Carolina Cloud only ever reads and writes the run’s objects; it never deletes your bucket.
What you pay
Section titled “What you pay”- Your AWS bill, directly from AWS, for the worker EC2 instances the run used (and your S3 storage). Carolina Cloud never sees or marks this up — it’s between you and AWS.
- Carolina Cloud bills only the head — the small orchestration driver that runs on our side — at the standard container rate. The worker nodes, where the real compute happens, run in your account, so Carolina Cloud doesn’t charge for them at all.
In other words: the heavy compute is on your AWS bill, and the only Carolina Cloud charge is the tiny always-small head container.
What you need
Section titled “What you need”- An AWS account you can create an IAM user in.
- To be an org admin in Carolina Cloud (the AWS connection is org-wide).
Setup is two one-time steps — connect your AWS account for compute, and link an S3 bucket. See Getting started.