Genomics

How to deploy production-grade bioinformatics pipelines using AWS HealthOmics?

What Is AWS HealthOmics?

AWS HealthOmics is a HIPAA-eligible service that accelerates clinical diagnostic testing, drug discovery, and agricultural research by managing the infrastructure behind bioinformatics workflows.

HealthOmics supports industry-standard workflow languages, including WDL, Nextflow, and CWL. It can scale bioinformatics infrastructure to support data from large testing volumes while providing more predictable per-sample costs.

By managing compute resources and workflow engines, HealthOmics allows teams to focus more on scientific work and less on infrastructure operations.

Primary Use Cases

  • Clinical diagnostics
  • Drug discovery
  • Agricultural research

Key Benefits

  • Scale without unnecessary infrastructure complexity
  • Focus on science rather than infrastructure management
  • Use built-in compliance-oriented capabilities

Prerequisites for Running a Bioinformatics Workflow on AWS HealthOmics

There are three main prerequisites:

  1. Create an Amazon S3 bucket to store input reads and collect workflow outputs.
  2. Create an Amazon ECR repository to store the Docker images used by the workflow.
  3. Create an IAM service role that allows AWS HealthOmics to access the required S3 and ECR resources.

You can use this demo Nextflow pipeline or provide your own workflow.

How to Deploy a Nextflow Pipeline on AWS HealthOmics

Step 1: Open AWS HealthOmics

Sign in to the AWS Management Console, search for HealthOmics, and open the service.

In the left navigation, select Private workflows.

AWS HealthOmics homepage showing private workflows
AWS HealthOmics homepage.

AWS HealthOmics also provides Ready2Run workflows that can be executed directly against your data. Pricing information is provided with each workflow.

Under the storage section, HealthOmics also provides Reference Stores and Sequence Stores. These can be used to store reference data and genomic sequences.

This tutorial uses Amazon S3 instead.

Step 2: Create a Private Workflow

Scroll to the private workflows section and select Create workflow.

Private workflows section in AWS HealthOmics
Private workflows in AWS HealthOmics.

Step 3: Configure the Workflow

Creating a bioinformatics workflow in AWS HealthOmics involves four configuration stages.

Fields marked as optional can be skipped when they are not required.

Step 3.1: Define the Workflow

Provide a workflow name and, optionally, a description.

AWS HealthOmics define workflow screen
Define the workflow.

Select the workflow language. Although this setting is optional, selecting the correct language can reduce detection latency.

Next, select the workflow definition source. AWS HealthOmics supports Amazon S3, a Git repository, or direct upload from a local source.

This tutorial uses Amazon S3.

AWS HealthOmics workflow definition source configuration
Workflow definition source configuration.

Select dynamic storage because this example does not require a large fixed storage allocation.

AWS HealthOmics default run storage configuration
Default run storage configuration.

Leave the remaining optional fields blank unless the workflow requires them.

Step 3.2: Add Workflow Parameters

This step is optional. In this example, a parameter is used to pass the Amazon S3 path for the input reads.

Add workflow parameter in AWS HealthOmics
Add the workflow parameter.

Step 3.3: Configure Container URI Remapping

This step is optional.

Select None for the mapping-file source because the required Docker images are already stored in Amazon ECR and referenced directly by the workflow source code.

AWS HealthOmics container URI remapping
Container URI remapping configuration.

Step 3.4: Review and Create the Workflow

Review the workflow configuration, scroll to the bottom, and select Create workflow.

AWS HealthOmics may take several minutes to prepare the workflow.

AWS HealthOmics creating a private workflow
AWS HealthOmics is creating the workflow.

When the workflow is ready, HealthOmics displays a confirmation message.

AWS HealthOmics workflow successfully created
The workflow was created successfully.

Step 4: Run the Workflow

After the workflow is ready, select Start run.

Start run button in AWS HealthOmics
Start the workflow run.

Running the workflow involves several configuration steps.

Step 4.1: Specify Run Details

Select Owned workflow because this tutorial uses the workflow created in the previous step.

Provide a name for the run and select dynamic storage.

Specify workflow run details in AWS HealthOmics
Specify the workflow run details.

Provide an Amazon S3 output destination and select an IAM service role that allows HealthOmics to access the required S3 resources.

Amazon S3 output destination and IAM service role in AWS HealthOmics
Configure the S3 output destination and service role.

Step 4.2: Add Parameter Values

Choose the manual input option and provide the Amazon S3 path to the FASTQ input file.

AWS HealthOmics workflow parameter value
Provide the workflow parameter value.

Step 4.3: Add a Run Group, Run Cache, and Tags

This step is optional. Run groups, caching, and tags can help organize workflows and optimize larger production environments.

AWS HealthOmics preparing a workflow run
AWS HealthOmics is preparing the workflow run.
AWS HealthOmics workflow running
AWS HealthOmics is running the workflow.

Step 4.4: Confirm the Successful Run

After the workflow finishes successfully, AWS HealthOmics displays a confirmation message.

AWS HealthOmics workflow executed successfully
The workflow completed successfully.

Review the run summary and task details at the bottom of the page.

AWS HealthOmics private workflow run tasks
Run tasks for the private workflow.

The workflow run is now complete, and the output files are available in the configured Amazon S3 bucket.