Shared Chef Code For Amazon Machine Images and Docker Images

If you are building Docker images you might be using a Dockerfile to define the state of the image. For example: FROM centos:7 RUN yum install -y httpd RUN mkdir -p /var/www/html/images COPY images/foo.png /var/www/html/images/foo.png RUN chown apache: /var/www/html/images/foo.png EXPOSE 80 If you have been creating Amazon Machine Images (AMIs) you might be using Chef or some other configuration management tool. A problemContinue reading “Shared Chef Code For Amazon Machine Images and Docker Images”

Deploy a Serverless SFTP Server With AWS

Let’s imagine you want to migrate an existing SFTP server to Amazon Web Services (AWS). You might consider deploying an EC2 instance to facilitate this. With this approach you are responsible for maintaining and patching that instance. Also, if you want to make your service highly available you would have to deploy multiple instances acrossContinue reading “Deploy a Serverless SFTP Server With AWS”

Serverless Web Applications In AWS

In this article I will demonstrate how to start developing serverless web applications in Amazon Web Services (AWS). A serverless architecture allows developers to focus on their code — the complexity of building and maintaining the infrastructure necessary to run the code is removed from their view. Design Starfleet has asked you to create a web applicationContinue reading “Serverless Web Applications In AWS”

Continuous Deployment with AWS CodePipeline and Chef Zero

In this article I will show how you can use AWS CodePipeline and Chef Zero to implement a blue-green continuous deployment model to automatically release changes to your EC2 hosted web application. AWS CodePipeline is a fully managed continuous delivery service that helps you automate your release pipelines for fast and reliable application and infrastructure updates. CodePipeline automates the build, test,Continue reading “Continuous Deployment with AWS CodePipeline and Chef Zero”

EC2 Jump Host For ECS Fargate Docker Containers

Introduction The benefits of Docker containers are well understood however, the challenges in managing the host operating system remain. AWS Fargate solves this problem. Fargate makes it easy for you to focus on building your applications. Fargate removes the need to provision and manage servers. By outsourcing the management of the host OS to AWS you doContinue reading “EC2 Jump Host For ECS Fargate Docker Containers”

Serverless Caching With AWS AppConfig and Lambda Extensions

Introduction In this article I will show how you can deploy a simple caching solution for AWS Lambda functions by combining the AWS AppConfig service with the Lambda Extensions feature. To demonstrate this, lets create a problem that we must solve. Suppose you have been asked to implement a solution that will allow the engineersContinue reading “Serverless Caching With AWS AppConfig and Lambda Extensions”

Serverless File Transfer Workload – Part 3 – CSV-To-DynamoDB

Introduction The last piece of our overall solution is the processing of a CSV file into a data store. Design We will use Amazon DynamoDB as our data store and AWS Lambda to perform the CSV processing. This design was influenced by the AWS blog post at Implementing bulk CSV ingestion to Amazon DynamoDB |Continue reading “Serverless File Transfer Workload – Part 3 – CSV-To-DynamoDB”

Serverless File Transfer Workload – Part 2 – AntiVirus

Introduction We require uploaded files to be scanned for viruses before they can be processed further. Design Our design for this solution can be represented in the following diagram. There is a lot in this so let’s describe all that is happening here. We use ClamAV to perform the anti-virus scans. ClamAV definitions are storedContinue reading “Serverless File Transfer Workload – Part 2 – AntiVirus”

Serverless File Transfer Workload – Part 1 – SFTP

Introduction Suppose a file transfer workload exists between a business and their customers. A comma-separated values (CSV) file is transferred to the business and the records are loaded into a database. The business has regulatory requirements mandating that all external assets are virus scanned before being processed. Additionally, an intrusion prevention system (IPS) must operateContinue reading “Serverless File Transfer Workload – Part 1 – SFTP”