SCC

Brasil

os cloud gurus

AWS

Software Cloud Consulting

Your software development, cloud, consulting & shoring company

Germany German efficiency and quality from Brasil Germany

Learn More

AWS




Solutions


SCC Brasil is a Service Provider, we are supporting companies on their Cloud Journey.
So most of our work depends much of the individual requirements of each customers, we do not offer Products or Standard Software.
But often the same requirements have to be implemented for various Customers.
Common problems and use-cases many clients need for AWS and DevOps.
These solutions can be re-used, maybe you have to adapt it a bit for you individual needs, but probably will serve almost out of the box for your current needs.
We are offering these solutions as Open Source to you and the AWS Community to accelerate your Cloud Journey and hope you find it useful for your company and also give as a feedback and ideas for changes or improvements.
solutions

Pipeline for automatic CloudFormation Deployments
codepipeline
Are you using CloudFormation as Infrastructure as Code Tool but you still deploy your Templates manually on the Web Console?
You should definitelly do this by Pipeline (CI/CD) to avoid changes made in the Template and Repo are not being promoted to the Stages or vice versa changes not being committed to the Templates Repo are being deployed on the CloudFormation Console.
There are various options: Jenkins, Azure DevOps, Gitlab, Bitbucket and more.
But still it will be a considerable effort to create all Pipelines manually.
CloudFormation Deployment Pipeline
Do you need an automation to deploy your CloudFormation Templates to your AWS Account(s)?
A Pipeline or a tool that will automatically create a CloudFormation Deployment Pipeline for each of your stacks ?
If so take a look into this solution from us, that will allow you to create these pipelines fully automatically by a Generator. The Pipelines will be in AWS CodePipeline. Once created you can trigger them to create or update your Template and define this as the standard process for IaC changes.
An overview about this Generator in this video :

You find more information about this solution in this blog :
Blog - Pipeline for automatic CloudFormation Deployments
or you can have a look directly in out Github Repo:
Github - Pipeline for automatic CloudFormation Deployments
CDK Pipelines
codepipeline
Are you using CDK as IaC Tool but not yet setup a Pipeline for the Deployment Process?
If so, these to 2 solutions might be of interest for you.

CDK CodePipeline
The first is a AWS CodePipeline you can integrate in your CDK project, which will create a CodePipeline for your CDK project.
Once deployed to your account (or a toolchain account), it will automatically deploy changes in your CDK code to the stages.
The project also shows how to use a super class for the pipeline, so you can sublass various classes from it - if you need this.
More Infos you will find in this blog:
CodePipeline with CDK Python and generic Superclass
And this is the Github Repo for the project :
Git Wolfgang Unger CDK Pipeline

Multi Branch CodePipeline
Maybe your are already using AWS CodePipeline to deploy your CDK Code and infrastructure to your Stage Accounts. Perfect.
This works fine, but only on your main/master branch.
There is no build in functionality with CodePipeline that supports building mulitple feature branches.
For small companies and projects this is ok, but if you work on a bigger projects with lets say 20 developers
working on the CDK and infrastructure, 3-5 open feature branches the same time, you will miss this feature.
You want to test your feature branches before merging them back into the main branch.
If have implemented a multi feature branch pipeline, it is available in my github account.
Read more about it in this blog :
Blog - Feature Brach Pipeline
or you can have a look directly in our Github Repo:
Pipeline multi-branch | Github Wolfgang Unger
Instance Scheduler Lambda
codepipeline
There are a number of ways to reduce your AWS bill, you can use the AWS Cost Explorer to analyze usage and costs,
we have an comprehensive guide to make this analisys in the blog
Blog - Cost optimization strategies
Instance Scheduler Lambda
But if you already have your basis covered, there is one simple lambda that can help you reduce even more your costs.
Usually the non production environments, don't neeed to be up 24/7, so this lambda can reduce your compute costs
more than 50% on non-production environments.
This simple Lambda Function can stop and start your EC2 and RDS instances once you have tagged them with a dedicated Tag. Also autoscaled instanced are supported
More detailed informations in this blog :
Blog - Schedule/Stop your instances automatically
or you can have a look directly in our Github Repo:
Cost savings lambda | Github Wolfgang Unger
Terraform Example Project
terraform
If you start to work with terraform will maybe ask yourself, how should you structure your terraform project?
You can find various example repos and projects in the web, but not all will server for your use case.
In this tutorial I will try to show a setup which will be usefull in quite a lot of situations
Of yourse you will have to adapt it for your special needs, but it should serve as a good generic solution to start.
More detailed informations in this blog :
Terraform example structure
or you can have a look directly in our Github Repo:
Github Wolfgang Unger - Terraform
IPv6 IaC Templates
Tterraform"
February 2024 AWS started to charge not only unused IP addresses but by now all public IP Adresses.
Together with the NAT costs, which have increased also a lot over the years, a VPC is now a considerable cost factor especially for small workloads.
The costs on IP addresses are also a way of AWS to push more the usage of IPv6.
Time to have a closer look on IPv6, because we are running out of IPv4 addresses and sooner o later we have to switch to IPv6.
We have published IPv6 examples for CloudFormation, CDK and Terraform
The repo (under construction) is :
Stay tuned !
Github Wolfgang Unger - AWS IPv6