×

How to create a complete VPC with automatic subnet calculation using Rubycfn

This blog post describes how you can create a complete VPC, including the calculation of subnets with the use of the Fn::Cidr intrinsic function, an internet gateway, route tables, routes and subnet associations using Rubycfn. The product of this Rubycfn script is a CloudFormation template that you can deploy. Check out Rubycfn at https://github.com/dennisvink/rubycfn or try out the online Rubycfn compiler at https://rubycfn.com/ Introduction Rubycfn is a CloudFormation abstraction layer and deployment orchestration tool. Read more...

How to create serverless CI/CD pipelines for docker images with AWS

When you look at AWS services like CodeBuild, CodeCommit, CodePipeline and ECR, you would think it is very easy to create a simple CI/CD build pipeline for a docker image. But it is not. In this blog we will introduce a CloudFormation template which creates a serverless CI/CD pipeline for Docker images. The template allows you to create CI/CD pipelines for Docker images in minutes!

Read more...

Building a global app with AWS Global Accelerator

This blog post describes how to use the AWS Global Accelerator with a simple service across two regions, deployed with Terraform. AWS Global Accelerator is a networking service that improves the availability and performance of the applications that you offer to your global users. The source code can be found on GitHub: https://github.com/binxio/tf-global-accelerator I used a lot of inspiration from the following blog post by Adrian Hornsby: “Multi-region serverless backend”. Read more...

AWS CLI aliases: shorten your most used commands

One of the best kept secrets of the AWS CLI should be the ‘alias’ feature. It’s a native feature of AWS. In this blog post I’ll describe how to get started and show you a couple of my most used aliases so far. cat > ~/.aws/cli/alias <<! [toplevel] whoami = sts get-caller-identity cf = cloudformation cfls = !f() { aws cloudformation list-stacks }; f ! Now try your new aliases. Read more...

How to configure TrendMicro DeepSecurity for AWS using CloudFormation

TrendMicro DeepSecurity provides intrusion detection and threat mitigation for your virtual machine instances on AWS. In this blog, we will introduce you to the CloudFormation custom provider for TrendMicro DeepSecurity. With this provider you can deploy both EC2 instances and DeepSecurity policies and rules from a single CloudFormation template.

Read more...

Nine reasons to use CloudFormation instead of Terraform

I love CloudFormation, and I love Terraform. I use both tools often in blog posts, in courses, and at clients. I often get the question to choose between CloudFormation and Terraform. In this blog post, I want to share a couple of CloudFormation features to help you make a choice. Features that are easy to use and are important considerations when selecting the right tool when running production workloads. Read more...

Automatic database sharding with Alibaba Cloud Table Store

At some point in your application’s lifecycle, there might come a time when you need to start scaling your data storage. If you are storing media files or other blobs that have no relations between them, you can easily add storage capacity to solve the problem. For (semi-)structured data in a database however, scaling is a whole different story. Simply adding database instances is not enough. You will need to reconsider the usage patterns and decide what solution solves the problem you have. Read more...

Installing pyenv on macOS

Python is very well suited for writing AWS Lambda functions. For local development, you might want to be able to run the whole range of supported Python runtimes on your Mac. Unfortunately, setting this up is not as straightforward as you might think.

Read more...

Creating type providers for Google Deployment Manager

Deployment Manager is an infrastructure deployment service that automates the creation and management of Google Cloud Platform resources. A lot of GCP resources can be created using the available GDM types. In essence a GDM type is an abstraction on top of the API of a GCP service. However some types are missing, so in this blog I want to show you how to add those yourself. GDM supports jinja2 and Python templates, for this blog we will use python.

Read more...
Page 1 of 11 Next Page