This CDK stack deploys the above components into a new VPC in the target account.
- An internet-facing network load balancer will be instantiated to receive inbound messages on the configured HL7 port
- An AWS Fargate cluster running Apache Camel will be deployed for message parsing and handling
- An Amazon S3 bucket is created by the CDK to store message payload
- An Amazon SQS queue is created to store message and event metadata
- Once messages are received, they will be forwarded to the AWS Fargate containers running Apache Camel. They will: parse and acknowledge messages, store the full message payload in Amazon S3 and store message and event metadata in AWS SQS
- Consumers will be able to pop messages from the AWS SQS queue and reference the full message payload in Amazon S3
- Launch an AWS Cloud9 m5.large environment in the ca-central-1 region with default settings
- Open the IDE environment and clone the provided git repo
git clone https://github.com/ejahnke/hl7-connector.git
- navigate into the recently cloned folder workshopVpc and install required libraries
cd hl7-connector
npm install aws-cdk-lib
-
If required, modify the HL7 listening port value under hl7Port in cdk.json
-
You MUST configure the IP address of the sending application in cdk.json under the property sourceIP (e.g. 172.16.32.0/32). This will allow connections from the source IP into the AWS Fargate containers
-
bootstrap the AWS account for CDK deployments
cdk bootstrap
- deploy the CDK stack
cdk deploy