Moving from Jenkins/Terraform/Packer to Atlas/Terraform/Packer

394 views
Skip to first unread message

Rajinder Singh

unread,
Jan 9, 2016, 11:50:51 AM1/9/16
to Terraform
I am working with a client that is 100% windows. I am helping them with their first AWS project.
Our current setup is below:
Source Code Repo: Git hosted in Visual Studio Online
Build Server: Jenkins hosted in AWS

AMI Creation
We use Packer to bake the AMI. We have a base image along with a web server image.
AMI has AWS code deploy agent and other application dependencies.

Provisioning
We use terraform to provision our infrastructure. All the terrafrom/packer configurations are stored in a separate project in Git.

We use Git flow

when a developer checks in their code it is checked into a feature branch. They make pull request and it is approved it gets merged into Dev branch. Jenkins builds the project, runs unit tests and static code analysis using SonarQube.
If there are no failures the application is deployed to the integration testing environment. 
If integration testing is successful release admin approves and Jenkins deploys the application to QA environment.

Our deployments are performed using AWS code deploy. Jenkins AWS CodeDeploy plugin makes it easy. It loads the artifacts into S3 bucket.
AWS Code deploy integrated with auto scaling groups as well. 

We haven't done a lot of testing yet but in our initial testing everything is working.

We haven't provisioned our production environment yet. We want to do  blue green deployments.

We want to implement immutable infrastructure where we want to bake AMI's with application and code in it.
We also want to automate  AMI creation process. AWS sends SNS notifications whenever new Windows AMI's are released.

We don't use Consul at this time.

Atlas will give us centralized configuration management, it will also help orchestrate packer/terraform etc.

I was wondering if anyone has made the similar transition.


Jenkins has worked well for  us so far. I am trying to determine what role Jenkins will play if we start using Atlas.

We are moving from Visual studio online git to Github.

Any suggestions are welcome.

ryan....@reflektion.com

unread,
Mar 21, 2016, 9:46:27 PM3/21/16
to Terraform
Hi Rajinder,

I'm curious what you ended up with thus far? I too am attempting a similar strategy, but the blue/green aspect of using Atlas and TF is not entirely clear. Let us know where you are!

Cheers,
Ryan

Rajinder Singh

unread,
May 3, 2016, 11:14:57 AM5/3/16
to Terraform
Ryan,

I somehow missed your message.
We have still not started using Atlas yet.
With Terraform we were able to use ASG, ELB to implement blue green deployments.
We create a new ASG and once it reaches a minimum capacity ELB points to the new ASG.
Even Hashicorp uses similar pattern.

Raj
Reply all
Reply to author
Forward
0 new messages