Installation¶
This section describes how to install the LabCas Workflow API on AWS.
LabCas Workflows is meant to be installed on an Amazon Web Service account.
Prerequisites¶
What you need to install LabCas Workflows is:
System administrator support to comply with the security constraints defined by your organization.
An AWS account with a VPC and private subnets
Some knowledge of the AWS console and AWS CLI is helpful.
Architecture Overview¶
The LabCas workflow API is a sub-component of the LabCas Workflows documentation system, which relies on several AWS services to function properly.
See the architecture diagram in the LabCas Workflows documentation for more details on the high level architecture.
The API component is responsible for handling RESTFul API requests, managing workflow definitions, and orchestrating workflow executions. It interacts with other components such as the workflow engine (e.g., Apache Airflow) and storage services (e.g., S3 buckets) by providing logical access (workflows, datasets) to the users according to their authorizations and without exposing the actual infrastructure (workflow engine, computing resources, storage).
The API is deployed as an AWS/API Gateway. Each API endpoint correspond to specific functions implemented with AWS/Lambda functions that process the requests and interact with other AWS services as needed.
graph TD
subgraph LabCas API
F[AWS API Gateway]
J[Authorizer Lambda]
K[Implementation Lambda Functions]
F --> J
F --> K
end
subgraph LabCas Workflows
G[Workflow_Engine_Airflow]
H[(DAG_S3_bucket)]
I[(Staging_S3_bucket)]
K --> G
K --> I
G --> H
G --> I
end
Doing the Installation¶
Create the implementation lambda functions¶
Create the API Gateway¶
The API gateway is
Create the authorizer Lambda function