Skip to content
The trerraform configuration for integration platform based on open-source products dockerized and orchestrated with kubernetes
Branch: master
Clone or download
Latest commit c2499cd May 20, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
assets refactoring Apr 25, 2019
persistent deploy API from files May 9, 2019
terraform/aws filter ami May 9, 2019
.gitignore initial version Mar 27, 2019
LICENSE Initial commit Feb 20, 2019
README.md Update README.md May 20, 2019

README.md

Integration Platform demo on AWS

This demo project based on terraform modules published here: https://github.com/eleks/terraform-kubernetes-demo

So, for details please reffer this parent project.

Screencast: https://www.youtube.com/watch?v=cbrwnMNKjC4

Infrastructure Overview

architecture

NOTE: the following instruction works under linux and windows

0. Prerequisites

Create AWS iam user/group with the following permissions:

  1. AmazonEC2FullAccess
  2. AmazonVPCFullAccess
  3. AmazonRoute53FullAccess
  4. AmazonElasticFileSystemFullAccess
  5. AmazonS3FullAccess

Download terraform https://www.terraform.io/downloads.html

The terraform configs created for the version 0.11.x

1. Generate your deployer key pair:

go into the project root directory and generate the deployer-key and public ssh cert

or put into .ssh folder your own key and public part for it

ssh-keygen -t rsa -f ~/.ssh/deployer-key

This key you could use to connect bastion server

2. Define AWS credentials

Create file terraform/aws/1.auto.tfvars with content:

aws_access_key = "Here put your access_key"
aws_secret_key = "Here put your secret_key"

Actually the file should match *.auto.tfvars to be loaded automatically.

3. Create terraform workspace

go into the directory terraform/aws

cd terraform/aws
terraform workspace new api-demo

4. Initialize terraform

The following command verifies your *.tf configuration and downloads providers and modules required.

terraform init

5. Deploy Integration Platform

This command compares local configuration with current state and suggests changes to be applied. Type yes when asked.

terraform apply

6. Certificate (Important)

We are using self-signed certificate for Application LoadBalancer. It is signed with custom CA certificate. So, to make server certificate valid for your brawser/mobile import the following file into the truststore:

ca.docker.local.cer

Find details here: certificates/README.md

You can’t perform that action at this time.