Deploy a production environment ( S3, ECS, ASG, VPC, AWS, ELB)

Job ID: 32129218

Budget: $25 – $50 USD

As a Deployment engineer, I need the capability to configure and deploy all application and infrastructure components of the ChainShield Product, so that I can repeatedly install to a designated target environment to permit secure access to the ChainShield Application for Development, Integration, and Production environments.

Key deployment tasks include:

UI5 deploys to S3
Node.js deploys to ECS
ASG (Auto Scaling Groups) are used by ECS
Keycloak SSO deploys to ECS
ASG (Auto Scaling Groups) are used by ECS
OpenSearch (ElasticSearch) Service deploys to ECS? (Verify as not in original writeup to deploy to ECS)
Need ELB (Load Balancer) for Node.js
Need ELB for (Load Balancer) Keycloak
* VPC networking configuration finalized (if not already done so)
Technical IaaS (Infrastructure-as-a-service) tooling should be considered in the development of this task ( Amazon Cloudfront or the more cloud-neutral tool Terraform). This decision should be aligned with more organization wide SAP NS2 Cloud efforts.
These tools will greatly assist in the automation of the deployment of infrastructure components to AWS.

A DevOps pipeline includes secure Build, Package, and Deploy Phases. All of these components must be analyzed and then configured to automate the deployment of the ChainShield product. i.e. We cannot have a manual build process (or even partial automation) and meet our deployment objectives. The breakout of the DevOps Pipeline include:

Build
Standardize the deployment and configuration a build tool chain (utilize tooling such as Jenkins, Gradle, etc. to automate the build of the product.)
Package
Standardize building and deployment via Docker Registry (Image Repo) and the construction of Application Containers
Deploy
Packages listed above must be configured and deployed to production environment. This includes both the infrastructure and application software.
This ticket is the umbrella effort to integrate the linked specific component tasks.

See tickets linked below.

Acceptance Criteria:

Demonstration of the ability to auto-deploy application from a selected source code configuration in Bitbucket (dev/integration branch, etc.)
Need to define a verification test for the ChainShield application
A UAT is being defined by Flavia Baciu for Sprint 9 (and can be used to validate environment
Technical documentation updates to following (as it effects the content of these documents)
* Technical Architecture Guide
* Security Guide
* Admin Guide ( have to check on status of this document)
Related categories: XML Amazon Web Services Node.js Kubernetes Amazon ECS