Fenergo is a global financial services solution provider. Fenergo’s solution enables banks to adopt a lifecycle approach to managing clients, facilitating new data take-on, initial compliance, onboarding and regular & event-triggered compliance refreshes. TerraAlto has been working with them as a technical consultancy partner with expertise and experience of DevOPs in AWS.
They traditionally install their application stacks in on-premise and or hosted data-centers. However they want to enable their clients and partners to deploy their applications in cloud environments including AWS. As part of this they engaged TerraAlto to work with them on developing a fully automated deployment of their application environment including network, IAM and highly available, scale-able application stack
Solution
We created a 1 button deployment of their application and all required components of their application environment from the ‘ground up’. The nested Cloudformation stack is stateless, regionless and requires a few simple parameter inputs to create an isolated and secure application stack environment for a new client.
- A nested Cloudformation stack that creates all required component of the environment including;
- AWS VPC network
- AWS AWS Identity & Access Management
- AWS Directory Service
- AWS RDS Oracle instance and database creation.
- AWS MQ
- AWS SES
- AWS Storage Gateway
- AWS S3
- Amazon Route 53
- Elastic Load Balancing
- AWS Auto Scaling
- AWS Lambda
- Custom resources in the Cloudformation stacks creating Lambda functions to;
- Add users and conditional forwarders to AWS Directory Services MS AD Domain as required by application.
- Build and prepare base AMI for deployment of application servers.
- Launching of EC2 instance, running Oracle DB and schema creation scripts, and then terminating the EC2 instance.
Outcomes
- DevOPs team can now deploy the full application stack and environment in 2 hours, previously this deployment took a number of days.
- Repeatable and consistent creation of a complete application stack environment.
- Closer integration between the application development and infrastructure deployment teams.
- Resource required for new client deployments has been reduced by 80%.
- As part of the activities around this work a significant number of changes were made to existing installation scripts and the application deployment archive, which has removed all hard coding and introduced the concept of stateless both at the configuration parameters and the server instance level.
- The internal AWS team and competency center have significantly increased their knowledge and experience, which will lead to further innovations and improvements going forward.
Lessons learned
- Creation of an AWS Directory Services MS AD Domain an populating the required users and conditional forwarders prior to deployment of the application stack.
- Allowing for ongoing changes to application during the development, testing and deployment of this solution.