SlideShare ist ein Scribd-Unternehmen logo
1 von 14
Testing Infrastructure
Code Using Test-
kitchen, Docker & Chef-
zero
Kamalika Majumder
https://twitter.com/mjkamalika
Who Am I
I am an Infrastructure Automation Specialist and a Senior
Consultant with Thoughtworks. Started my career as a
System/Network Administrator for three years, continued the
journey in Infrastructure Automation and Configuration
Management across private and public clouds
(AWS, Openstack). Interested in Infrastructure and Application
Security, IaaS, PaaS and Continuous delivery and usually
present at various conferences.
Read me at : http://www.kamalika.net/
https://twitter.com/mjkamalika
Topics to be covered
 Why TDD for infra code
 What is test-kitchen
 Provision instances on demand => kitchen-docker
 Configure the instances => Chef-zero
 Test the infra code => Test-kitchen
 Quick Demo
https://twitter.com/mjkamalika
Problems Solutions
https://twitter.com/mjkamalika
What are we trying to solve
I. Manual setups per server.
Each Server becomes a
"work of art".
II. No track of what
changes were made
when.
III. Code works in local host
, not in production.
IV. Testing takes forever.
I. Model server
configs, relationships with
other servers, packages in
code.(Configuration
Management)
II. Infra as Code, Code to be
version controlled.
III. Host production like
environment locally.
IV. Scalable Environment On
Demand .
Infrastructure As Code
 Treat your infrastructure as Code
 Server configuration, packages installed, relationships with
other servers etc should be modeled with code to be
automated, removing manual steps prone to errors.
 Use version controlling for that code.
 For instance we can (and should!)
 tag, branch and release the code that define our servers.
 have a lifecycle that covers different stages through the
infrastructure code, ie. dev, QA, production.
 continuously test our infrastructure as we make changes.
https://twitter.com/mjkamalika
Sample Infra Code
Environment
Production,
Qa,Dev
Recipes(run_list)
node
Recipes(run_list)
node
Recipes(run_list)
node
Roles
Web, DB, App
Chef Workflow
Databags
https://twitter.com/mjkamalika
Why Test Driven Development for
Infrastructure Code
Code works in my machine as well as in my
production server.
Quick feedback for testing Infra code.
 Faster you test code , faster you deploy in
Production.
Shorter Release Cycle for apps.
https://twitter.com/mjkamalika
Some Real World
Scenarios/Examples
Changing web ports
Adding new app metrics
Changing app user
Add a new user
Add basic authentication
Configuring a new machine
Adding additional node to cluster
https://twitter.com/mjkamalika
Example Workflow
https://twitter.com/mjkamalika
Test-Kitchen:
Test Kitchen is a test harness tool to
execute your configured code on one or
more platforms in isolation.
Drivers for
cloud/virtualization
platforms
Configuration
Management
Support for test
frameworks
https://twitter.com/mjkamalika
Detailed Demo
https://twitter.com/mjkamalika
What do we achieve:
 More stable and tested build .
 Production like environment on your machine in minutes is a
reality now.
 Consistency across all environments.
 Automated and Scalable Environment On Demand
 Fully Tested Configuration management.
 Production go live from 3 weeks to 1 week to multi
deployment per week.
 Overall testing time reduction went down by multifold. Build
pipeline time cycle reduction.
https://twitter.com/mjkamalika
Questions ?
https://twitter.com/mjkamalika
Thank you
@mjkamalika
http://www.kamalika.net/
https://twitter.com/mjkamalika

Weitere ähnliche Inhalte

Was ist angesagt?

Infrastructure Automation with Chef
Infrastructure Automation with ChefInfrastructure Automation with Chef
Infrastructure Automation with ChefJonathan Weiss
 
Chef, Devops, and You
Chef, Devops, and YouChef, Devops, and You
Chef, Devops, and YouBryan Berry
 
Introduction to Chef: Automate Your Infrastructure by Modeling It In Code
Introduction to Chef: Automate Your Infrastructure by Modeling It In CodeIntroduction to Chef: Automate Your Infrastructure by Modeling It In Code
Introduction to Chef: Automate Your Infrastructure by Modeling It In CodeJosh Padnick
 
Drupal Continuous Integration with Jenkins - The Basics
Drupal Continuous Integration with Jenkins - The BasicsDrupal Continuous Integration with Jenkins - The Basics
Drupal Continuous Integration with Jenkins - The BasicsJohn Smith
 
Automating your infrastructure with Chef
Automating your infrastructure with ChefAutomating your infrastructure with Chef
Automating your infrastructure with ChefJohn Ewart
 
Chef Automate Workflow Demo
Chef Automate Workflow DemoChef Automate Workflow Demo
Chef Automate Workflow DemoChef
 
London Community Summit 2016 - Fresh New Chef Stuff
London Community Summit 2016 - Fresh New Chef StuffLondon Community Summit 2016 - Fresh New Chef Stuff
London Community Summit 2016 - Fresh New Chef StuffChef
 
Chef Workflow Demo
Chef Workflow DemoChef Workflow Demo
Chef Workflow DemoChef
 
Azure handsonlab
Azure handsonlabAzure handsonlab
Azure handsonlabChef
 
AWS Meetup - Sydney - February
AWS Meetup - Sydney - February AWS Meetup - Sydney - February
AWS Meetup - Sydney - February markghiasy
 
Compliance Automation with Inspec Part 4
Compliance Automation with Inspec Part 4Compliance Automation with Inspec Part 4
Compliance Automation with Inspec Part 4Chef
 
Automated Deployment Pipeline using Jenkins, Puppet, Mcollective and AWS
Automated Deployment Pipeline using Jenkins, Puppet, Mcollective and AWSAutomated Deployment Pipeline using Jenkins, Puppet, Mcollective and AWS
Automated Deployment Pipeline using Jenkins, Puppet, Mcollective and AWSBamdad Dashtban
 
Community Cookbooks & further resources - Fundamentals Webinar Series Part 6
Community Cookbooks & further resources - Fundamentals Webinar Series Part 6Community Cookbooks & further resources - Fundamentals Webinar Series Part 6
Community Cookbooks & further resources - Fundamentals Webinar Series Part 6Chef
 
Vagrant and Chef on FOSSASIA 2014
Vagrant and Chef on FOSSASIA 2014Vagrant and Chef on FOSSASIA 2014
Vagrant and Chef on FOSSASIA 2014Michael Lihs
 

Was ist angesagt? (20)

Chef Cookbook Workflow
Chef Cookbook WorkflowChef Cookbook Workflow
Chef Cookbook Workflow
 
Infrastructure Automation with Chef
Infrastructure Automation with ChefInfrastructure Automation with Chef
Infrastructure Automation with Chef
 
Chef, Devops, and You
Chef, Devops, and YouChef, Devops, and You
Chef, Devops, and You
 
Introduction to Chef: Automate Your Infrastructure by Modeling It In Code
Introduction to Chef: Automate Your Infrastructure by Modeling It In CodeIntroduction to Chef: Automate Your Infrastructure by Modeling It In Code
Introduction to Chef: Automate Your Infrastructure by Modeling It In Code
 
Drupal Continuous Integration with Jenkins - The Basics
Drupal Continuous Integration with Jenkins - The BasicsDrupal Continuous Integration with Jenkins - The Basics
Drupal Continuous Integration with Jenkins - The Basics
 
Automating your infrastructure with Chef
Automating your infrastructure with ChefAutomating your infrastructure with Chef
Automating your infrastructure with Chef
 
Chef introduction
Chef introductionChef introduction
Chef introduction
 
Chef Automate Workflow Demo
Chef Automate Workflow DemoChef Automate Workflow Demo
Chef Automate Workflow Demo
 
London Community Summit 2016 - Fresh New Chef Stuff
London Community Summit 2016 - Fresh New Chef StuffLondon Community Summit 2016 - Fresh New Chef Stuff
London Community Summit 2016 - Fresh New Chef Stuff
 
Docker
DockerDocker
Docker
 
Chef Workflow Demo
Chef Workflow DemoChef Workflow Demo
Chef Workflow Demo
 
Understand Chef
Understand ChefUnderstand Chef
Understand Chef
 
Azure handsonlab
Azure handsonlabAzure handsonlab
Azure handsonlab
 
Introduction to Chef
Introduction to ChefIntroduction to Chef
Introduction to Chef
 
AWS Meetup - Sydney - February
AWS Meetup - Sydney - February AWS Meetup - Sydney - February
AWS Meetup - Sydney - February
 
Compliance Automation with Inspec Part 4
Compliance Automation with Inspec Part 4Compliance Automation with Inspec Part 4
Compliance Automation with Inspec Part 4
 
Learning chef
Learning chefLearning chef
Learning chef
 
Automated Deployment Pipeline using Jenkins, Puppet, Mcollective and AWS
Automated Deployment Pipeline using Jenkins, Puppet, Mcollective and AWSAutomated Deployment Pipeline using Jenkins, Puppet, Mcollective and AWS
Automated Deployment Pipeline using Jenkins, Puppet, Mcollective and AWS
 
Community Cookbooks & further resources - Fundamentals Webinar Series Part 6
Community Cookbooks & further resources - Fundamentals Webinar Series Part 6Community Cookbooks & further resources - Fundamentals Webinar Series Part 6
Community Cookbooks & further resources - Fundamentals Webinar Series Part 6
 
Vagrant and Chef on FOSSASIA 2014
Vagrant and Chef on FOSSASIA 2014Vagrant and Chef on FOSSASIA 2014
Vagrant and Chef on FOSSASIA 2014
 

Andere mochten auch

Quelle métrique pour fédérer Dev & Ops ?
Quelle métrique pour fédérer Dev & Ops ? Quelle métrique pour fédérer Dev & Ops ?
Quelle métrique pour fédérer Dev & Ops ? Jacky Galicher
 
Infra-as-Code and Enterprise ITSM Governance - ChefConf 2015
Infra-as-Code and Enterprise ITSM Governance - ChefConf 2015Infra-as-Code and Enterprise ITSM Governance - ChefConf 2015
Infra-as-Code and Enterprise ITSM Governance - ChefConf 2015Chef
 
Le DevOps : La clé de la transformation digitale ?
Le DevOps : La clé de la transformation digitale ?Le DevOps : La clé de la transformation digitale ?
Le DevOps : La clé de la transformation digitale ?Amico Fabien
 
Fits docker into devops
Fits docker into devopsFits docker into devops
Fits docker into devopsEvans Ye
 
Chef-Zero & Local Mode
Chef-Zero & Local ModeChef-Zero & Local Mode
Chef-Zero & Local ModeMichael Goetz
 
Ash_Winter-Forgotten-ility_V1
Ash_Winter-Forgotten-ility_V1Ash_Winter-Forgotten-ility_V1
Ash_Winter-Forgotten-ility_V1Ash Winter
 
Network Network Visibility - The Key to Rapidly Troubleshooting Network Perfo...
Network Network Visibility - The Key to Rapidly Troubleshooting Network Perfo...Network Network Visibility - The Key to Rapidly Troubleshooting Network Perfo...
Network Network Visibility - The Key to Rapidly Troubleshooting Network Perfo...Savvius, Inc
 
AWS DevOps Event - AWS Services enabling DevOps - Automated Testing & Monitoring
AWS DevOps Event - AWS Services enabling DevOps - Automated Testing & MonitoringAWS DevOps Event - AWS Services enabling DevOps - Automated Testing & Monitoring
AWS DevOps Event - AWS Services enabling DevOps - Automated Testing & MonitoringIan Massingham
 
Infrastructure as code
Infrastructure as codeInfrastructure as code
Infrastructure as codeAxel Quack
 
Network testing and debugging
Network testing and debuggingNetwork testing and debugging
Network testing and debuggingSADEED AMEEN
 
Extending your Storage Infrastructure into the AWS Cloud
Extending your Storage Infrastructure into the AWS CloudExtending your Storage Infrastructure into the AWS Cloud
Extending your Storage Infrastructure into the AWS CloudAmazon Web Services
 
Testing and troubleshooting networks
Testing and troubleshooting networksTesting and troubleshooting networks
Testing and troubleshooting networksOnline
 
The Basics of Network Troubleshooting
The Basics of Network TroubleshootingThe Basics of Network Troubleshooting
The Basics of Network Troubleshootingzaisahil
 
Network testing course
Network testing courseNetwork testing course
Network testing coursetcpipguru
 
Teams and monoliths - Matthew Skelton - Velocity EU 2016
Teams and monoliths - Matthew Skelton - Velocity EU 2016Teams and monoliths - Matthew Skelton - Velocity EU 2016
Teams and monoliths - Matthew Skelton - Velocity EU 2016Skelton Thatcher Consulting Ltd
 
Deep Dive - Infrastructure as Code
Deep Dive - Infrastructure as CodeDeep Dive - Infrastructure as Code
Deep Dive - Infrastructure as CodeAmazon Web Services
 
Network Troubleshooting - Part 1
Network Troubleshooting - Part 1Network Troubleshooting - Part 1
Network Troubleshooting - Part 1SolarWinds
 

Andere mochten auch (20)

Forrester Infra as code TLP_April2015
Forrester Infra as code TLP_April2015Forrester Infra as code TLP_April2015
Forrester Infra as code TLP_April2015
 
Quelle métrique pour fédérer Dev & Ops ?
Quelle métrique pour fédérer Dev & Ops ? Quelle métrique pour fédérer Dev & Ops ?
Quelle métrique pour fédérer Dev & Ops ?
 
Infra-as-Code and Enterprise ITSM Governance - ChefConf 2015
Infra-as-Code and Enterprise ITSM Governance - ChefConf 2015Infra-as-Code and Enterprise ITSM Governance - ChefConf 2015
Infra-as-Code and Enterprise ITSM Governance - ChefConf 2015
 
Le DevOps : La clé de la transformation digitale ?
Le DevOps : La clé de la transformation digitale ?Le DevOps : La clé de la transformation digitale ?
Le DevOps : La clé de la transformation digitale ?
 
Fits docker into devops
Fits docker into devopsFits docker into devops
Fits docker into devops
 
Chef-Zero & Local Mode
Chef-Zero & Local ModeChef-Zero & Local Mode
Chef-Zero & Local Mode
 
Ash_Winter-Forgotten-ility_V1
Ash_Winter-Forgotten-ility_V1Ash_Winter-Forgotten-ility_V1
Ash_Winter-Forgotten-ility_V1
 
Network Network Visibility - The Key to Rapidly Troubleshooting Network Perfo...
Network Network Visibility - The Key to Rapidly Troubleshooting Network Perfo...Network Network Visibility - The Key to Rapidly Troubleshooting Network Perfo...
Network Network Visibility - The Key to Rapidly Troubleshooting Network Perfo...
 
AWS DevOps Event - AWS Services enabling DevOps - Automated Testing & Monitoring
AWS DevOps Event - AWS Services enabling DevOps - Automated Testing & MonitoringAWS DevOps Event - AWS Services enabling DevOps - Automated Testing & Monitoring
AWS DevOps Event - AWS Services enabling DevOps - Automated Testing & Monitoring
 
Infrastructure as code
Infrastructure as codeInfrastructure as code
Infrastructure as code
 
Network testing and debugging
Network testing and debuggingNetwork testing and debugging
Network testing and debugging
 
Extending your Storage Infrastructure into the AWS Cloud
Extending your Storage Infrastructure into the AWS CloudExtending your Storage Infrastructure into the AWS Cloud
Extending your Storage Infrastructure into the AWS Cloud
 
Testing and troubleshooting networks
Testing and troubleshooting networksTesting and troubleshooting networks
Testing and troubleshooting networks
 
The Basics of Network Troubleshooting
The Basics of Network TroubleshootingThe Basics of Network Troubleshooting
The Basics of Network Troubleshooting
 
Network testing course
Network testing courseNetwork testing course
Network testing course
 
Teams and monoliths - Matthew Skelton - Velocity EU 2016
Teams and monoliths - Matthew Skelton - Velocity EU 2016Teams and monoliths - Matthew Skelton - Velocity EU 2016
Teams and monoliths - Matthew Skelton - Velocity EU 2016
 
Deep Dive - Infrastructure as Code
Deep Dive - Infrastructure as CodeDeep Dive - Infrastructure as Code
Deep Dive - Infrastructure as Code
 
Mobile App Testing Strategy
Mobile App Testing StrategyMobile App Testing Strategy
Mobile App Testing Strategy
 
Network Troubleshooting - Part 1
Network Troubleshooting - Part 1Network Troubleshooting - Part 1
Network Troubleshooting - Part 1
 
(ARC307) Infrastructure as Code
(ARC307) Infrastructure as Code(ARC307) Infrastructure as Code
(ARC307) Infrastructure as Code
 

Ähnlich wie Testing for infra code using test-kitchen,docker,chef

Create Agile, Automated and Predictable IT Infrastructure in the Cloud
Create Agile, Automated and Predictable IT Infrastructure in the CloudCreate Agile, Automated and Predictable IT Infrastructure in the Cloud
Create Agile, Automated and Predictable IT Infrastructure in the CloudRightScale
 
Azure Functions Real World Examples
Azure Functions Real World Examples Azure Functions Real World Examples
Azure Functions Real World Examples Yochay Kiriaty
 
AWS Summit Auckland - Application Delivery Patterns for Developers
AWS Summit Auckland - Application Delivery Patterns for DevelopersAWS Summit Auckland - Application Delivery Patterns for Developers
AWS Summit Auckland - Application Delivery Patterns for DevelopersAmazon Web Services
 
DevOps Tooling - Pop-up Loft TLV 2017
DevOps Tooling - Pop-up Loft TLV 2017DevOps Tooling - Pop-up Loft TLV 2017
DevOps Tooling - Pop-up Loft TLV 2017Amazon Web Services
 
Infrastructure Automation with Chef & Ansible
Infrastructure Automation with Chef & AnsibleInfrastructure Automation with Chef & Ansible
Infrastructure Automation with Chef & Ansiblewajrcs
 
Testing distributed systems in production
Testing distributed systems in productionTesting distributed systems in production
Testing distributed systems in productionPaul Bakker
 
Automated DevOps Workflows with Chef on AWS
Automated DevOps Workflows with Chef on AWSAutomated DevOps Workflows with Chef on AWS
Automated DevOps Workflows with Chef on AWSAmazon Web Services
 
Just kill it
Just kill itJust kill it
Just kill itpwhitdog
 
Advanced Continuous Delivery on AWS
Advanced Continuous Delivery on AWSAdvanced Continuous Delivery on AWS
Advanced Continuous Delivery on AWSAmazon Web Services
 
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...Emerson Eduardo Rodrigues Von Staffen
 
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...Amazon Web Services
 
Anatomy of a Build Pipeline
Anatomy of a Build PipelineAnatomy of a Build Pipeline
Anatomy of a Build PipelineSamuel Brown
 
Effective Kubernetes - Is Kubernetes the new Linux? Is the new Application Se...
Effective Kubernetes - Is Kubernetes the new Linux? Is the new Application Se...Effective Kubernetes - Is Kubernetes the new Linux? Is the new Application Se...
Effective Kubernetes - Is Kubernetes the new Linux? Is the new Application Se...Wojciech Barczyński
 
ServerTemplate Deep Dive
ServerTemplate Deep DiveServerTemplate Deep Dive
ServerTemplate Deep DiveRightScale
 
Introduction to Codenvy / JugSummerCamp 2014
Introduction to Codenvy / JugSummerCamp 2014Introduction to Codenvy / JugSummerCamp 2014
Introduction to Codenvy / JugSummerCamp 2014Florent BENOIT
 
Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...
 Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S... Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...
Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...Skytap Cloud
 
Four Scenarios for Using an Integration Service Environment (ISE)
Four Scenarios for Using an Integration Service Environment (ISE)Four Scenarios for Using an Integration Service Environment (ISE)
Four Scenarios for Using an Integration Service Environment (ISE)Daniel Toomey
 
Continuous Integration with Amazon ECS and Docker
Continuous Integration with Amazon ECS and DockerContinuous Integration with Amazon ECS and Docker
Continuous Integration with Amazon ECS and DockerAmazon Web Services
 

Ähnlich wie Testing for infra code using test-kitchen,docker,chef (20)

Create Agile, Automated and Predictable IT Infrastructure in the Cloud
Create Agile, Automated and Predictable IT Infrastructure in the CloudCreate Agile, Automated and Predictable IT Infrastructure in the Cloud
Create Agile, Automated and Predictable IT Infrastructure in the Cloud
 
Azure Functions Real World Examples
Azure Functions Real World Examples Azure Functions Real World Examples
Azure Functions Real World Examples
 
AWS Summit Auckland - Application Delivery Patterns for Developers
AWS Summit Auckland - Application Delivery Patterns for DevelopersAWS Summit Auckland - Application Delivery Patterns for Developers
AWS Summit Auckland - Application Delivery Patterns for Developers
 
DevOps Tooling - Pop-up Loft TLV 2017
DevOps Tooling - Pop-up Loft TLV 2017DevOps Tooling - Pop-up Loft TLV 2017
DevOps Tooling - Pop-up Loft TLV 2017
 
Infrastructure Automation with Chef & Ansible
Infrastructure Automation with Chef & AnsibleInfrastructure Automation with Chef & Ansible
Infrastructure Automation with Chef & Ansible
 
Testing distributed systems in production
Testing distributed systems in productionTesting distributed systems in production
Testing distributed systems in production
 
Automated DevOps Workflows with Chef on AWS
Automated DevOps Workflows with Chef on AWSAutomated DevOps Workflows with Chef on AWS
Automated DevOps Workflows with Chef on AWS
 
Just kill it
Just kill itJust kill it
Just kill it
 
Advanced Continuous Delivery on AWS
Advanced Continuous Delivery on AWSAdvanced Continuous Delivery on AWS
Advanced Continuous Delivery on AWS
 
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
 
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...
 
Anatomy of a Build Pipeline
Anatomy of a Build PipelineAnatomy of a Build Pipeline
Anatomy of a Build Pipeline
 
Effective Kubernetes - Is Kubernetes the new Linux? Is the new Application Se...
Effective Kubernetes - Is Kubernetes the new Linux? Is the new Application Se...Effective Kubernetes - Is Kubernetes the new Linux? Is the new Application Se...
Effective Kubernetes - Is Kubernetes the new Linux? Is the new Application Se...
 
ServerTemplate Deep Dive
ServerTemplate Deep DiveServerTemplate Deep Dive
ServerTemplate Deep Dive
 
DevOps demystified
DevOps demystifiedDevOps demystified
DevOps demystified
 
Dev ops using Jenkins
Dev ops using JenkinsDev ops using Jenkins
Dev ops using Jenkins
 
Introduction to Codenvy / JugSummerCamp 2014
Introduction to Codenvy / JugSummerCamp 2014Introduction to Codenvy / JugSummerCamp 2014
Introduction to Codenvy / JugSummerCamp 2014
 
Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...
 Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S... Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...
Tips to achieve continuous integration/delivery using HP ALM, Jenkins, and S...
 
Four Scenarios for Using an Integration Service Environment (ISE)
Four Scenarios for Using an Integration Service Environment (ISE)Four Scenarios for Using an Integration Service Environment (ISE)
Four Scenarios for Using an Integration Service Environment (ISE)
 
Continuous Integration with Amazon ECS and Docker
Continuous Integration with Amazon ECS and DockerContinuous Integration with Amazon ECS and Docker
Continuous Integration with Amazon ECS and Docker
 

Mehr von kamalikamj

Anatomy of a Continuous Delivery Pipeline
Anatomy of a Continuous Delivery PipelineAnatomy of a Continuous Delivery Pipeline
Anatomy of a Continuous Delivery Pipelinekamalikamj
 
DevOps Not A Toolbox
DevOps Not A ToolboxDevOps Not A Toolbox
DevOps Not A Toolboxkamalikamj
 
Back To Basics
Back To BasicsBack To Basics
Back To Basicskamalikamj
 
Change Can Be Good
Change Can Be GoodChange Can Be Good
Change Can Be Goodkamalikamj
 
Automating Dev Environment - Introduction to Docker and Chef
Automating Dev Environment - Introduction to Docker and ChefAutomating Dev Environment - Introduction to Docker and Chef
Automating Dev Environment - Introduction to Docker and Chefkamalikamj
 
Identity management
Identity managementIdentity management
Identity managementkamalikamj
 

Mehr von kamalikamj (6)

Anatomy of a Continuous Delivery Pipeline
Anatomy of a Continuous Delivery PipelineAnatomy of a Continuous Delivery Pipeline
Anatomy of a Continuous Delivery Pipeline
 
DevOps Not A Toolbox
DevOps Not A ToolboxDevOps Not A Toolbox
DevOps Not A Toolbox
 
Back To Basics
Back To BasicsBack To Basics
Back To Basics
 
Change Can Be Good
Change Can Be GoodChange Can Be Good
Change Can Be Good
 
Automating Dev Environment - Introduction to Docker and Chef
Automating Dev Environment - Introduction to Docker and ChefAutomating Dev Environment - Introduction to Docker and Chef
Automating Dev Environment - Introduction to Docker and Chef
 
Identity management
Identity managementIdentity management
Identity management
 

Kürzlich hochgeladen

Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 

Kürzlich hochgeladen (20)

Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 

Testing for infra code using test-kitchen,docker,chef

  • 1. Testing Infrastructure Code Using Test- kitchen, Docker & Chef- zero Kamalika Majumder https://twitter.com/mjkamalika
  • 2. Who Am I I am an Infrastructure Automation Specialist and a Senior Consultant with Thoughtworks. Started my career as a System/Network Administrator for three years, continued the journey in Infrastructure Automation and Configuration Management across private and public clouds (AWS, Openstack). Interested in Infrastructure and Application Security, IaaS, PaaS and Continuous delivery and usually present at various conferences. Read me at : http://www.kamalika.net/ https://twitter.com/mjkamalika
  • 3. Topics to be covered  Why TDD for infra code  What is test-kitchen  Provision instances on demand => kitchen-docker  Configure the instances => Chef-zero  Test the infra code => Test-kitchen  Quick Demo https://twitter.com/mjkamalika
  • 4. Problems Solutions https://twitter.com/mjkamalika What are we trying to solve I. Manual setups per server. Each Server becomes a "work of art". II. No track of what changes were made when. III. Code works in local host , not in production. IV. Testing takes forever. I. Model server configs, relationships with other servers, packages in code.(Configuration Management) II. Infra as Code, Code to be version controlled. III. Host production like environment locally. IV. Scalable Environment On Demand .
  • 5. Infrastructure As Code  Treat your infrastructure as Code  Server configuration, packages installed, relationships with other servers etc should be modeled with code to be automated, removing manual steps prone to errors.  Use version controlling for that code.  For instance we can (and should!)  tag, branch and release the code that define our servers.  have a lifecycle that covers different stages through the infrastructure code, ie. dev, QA, production.  continuously test our infrastructure as we make changes. https://twitter.com/mjkamalika
  • 7. Why Test Driven Development for Infrastructure Code Code works in my machine as well as in my production server. Quick feedback for testing Infra code.  Faster you test code , faster you deploy in Production. Shorter Release Cycle for apps. https://twitter.com/mjkamalika
  • 8. Some Real World Scenarios/Examples Changing web ports Adding new app metrics Changing app user Add a new user Add basic authentication Configuring a new machine Adding additional node to cluster https://twitter.com/mjkamalika
  • 10. Test-Kitchen: Test Kitchen is a test harness tool to execute your configured code on one or more platforms in isolation. Drivers for cloud/virtualization platforms Configuration Management Support for test frameworks https://twitter.com/mjkamalika
  • 12. What do we achieve:  More stable and tested build .  Production like environment on your machine in minutes is a reality now.  Consistency across all environments.  Automated and Scalable Environment On Demand  Fully Tested Configuration management.  Production go live from 3 weeks to 1 week to multi deployment per week.  Overall testing time reduction went down by multifold. Build pipeline time cycle reduction. https://twitter.com/mjkamalika