DevOps & Cloud
How we helped our clients gain the most value from moving to AWS
There’s no doubt that we’re deep into the cloud era. In this story, I will try to summarize what problems are Clients addressing and what kind of value are they getting from using Cloud technologies. Of course, if you are an enterprise Client and have complex environments, your journey to the Cloud will not be simple and it requires a lot of planning, experimenting, and a skillful team of experts.
Clients and challenges
There are many books, articles, and other resources where we could just take the main benefits of moving to the Cloud, but we will concentrate on a couple of them that we encountered on our projects.
Two of our Clients are Fintech companies providing specialized IT solutions for financial institutions. From core banking to wealth management systems, they’ve been around for 20 years and traditionally they were using on-premises-based solutions. For each new Client, the onboarding process included setting up new HW/SW infrastructure, separate servers, VMs, network and security, Databases, authentication, logging, and auditing… It was, of course, automated to some degree but still, it was slow and costly. Additionally, they were not able to optimize nor plan the infrastructure costs. Therefore, it was hard for them to calculate how much they should charge to each Client.
So to summarize, the main challenges were:
- Speeding up the on-boarding of new Clients
- Being able to customize the solution for every Client without affecting other instances
- Optimizing costs
- Segmentation of costs per Client
To address those challenges, our Clients decided to move their workload to AWS Cloud. The main goals of the project were:
- Setting up new environments/solution instances in a matter of hours vs. days/weeks – increased time to market
- Customizing each dedicated solution without affecting other instances (Customers) – increased customer satisfaction
- Easier maintenance – decreased OPEX
- Control and manage infrastructure costs per each Customer – cost control
How did CROZ help:
CROZ was hired to help the Client with various aspects of moving into AWS Cloud as listed below:
- Automating AWS environment provisioning
- Using Terraform scripting, new environments are now provisioned with needed components which include:
- Virtual Private Cloud (VPC) with different access zones
- Network security with ACLs and security groups
- Identity management and security policies
- High availability across different zones
- Load balancers
- Application and network firewalls
- AWS S3 storage
- Elastic Container Services to run containerized applications
- Serverless Database Engine with PostgreSQL (Aurora)
- Monitoring and Alerting (CloudWatch, CloudTrail, AWS Macie, AWS Config, Kinesis data stream for detailed logging to S3 bucks for WAF, SNS)
- API Gateway
- Lambda functions (Serverless architecture)
- Continuous Integration pipelines to support DevOps practice. Pipelines are built on top of the Azure DevOps service. Pipeline capabilities include:
- Building new components in case of code commits
- Provisioning new environments
- GitOps – applying new changes as changes in Terraform scripts are introduced
- Component versioning and release management
- Advising the Client on how to improve existing applications to maximize Cloud benefits and deployment automation
Working with our enterprise clients for many years and being in a position to observe and tackle many different challenges across industries we identified a couple of the most common scenarios
- 1. Migrate AS IS (lift and shift)
We are using the underlying AWS infrastructure and migrating existing applications (AS IS) from on-prem to cloud infrastructure. That means that we are utilizing cloud infrastructure (networking, VMs, security mechanisms, logging and auditing, monitoring…) and deploying applications on top.
- 2. Migrate and modify applications to use AWS Services
The approach is very similar to the first one, but also includes modification of applications to be able to use some of the AWS services like (S3 storage, API management, managed databases, etc.)
- 3. Greenfield projects
This one is obvious. You’re building a completely new application based on Cloud Native architecture and you want to use as many Cloud services as possible.
There are many specific business cases and scenarios for utilizing the possibilities of the Cloud. Done right – it brings lots of benefits in most aspects of your business. Done wrong it can bring a lot of headaches… And additional expenses.
To make sure you do it right – feel free to contact us for help or advice.