Infrastructure Testing
Grey Matter
Anthony Spring
DevOps Days Boston - 2014
Slide 2
Slide 2 text
What is grey matter?
Grey matter is the area of your infrastructure
where you have the least amount of confidence.
Slide 3
Slide 3 text
Monitoring
Cacti
Icinga
Nagios
Sensu
Zabbix
Infrastructure
Provisioning
Ansible
CF-Engine
Chef
Kickstart
Powershell
Puppet
Salt
Shell scripts
Slide 4
Slide 4 text
Confidence
Trust
Experience
Control
Knowledge
http://www.skipprichard.com/
Slide 5
Slide 5 text
What about…
images we did not
create?
machines we did not
provision?
machines we can not/do
not monitor?
Slide 6
Slide 6 text
No content
Slide 7
Slide 7 text
Why ServerSpec?
Easy to use
Extensible
Put tests into source
control
Only need SSH access
on remote machine
Slide 8
Slide 8 text
Integration Testing
Utilize KitchenCI + ServerSpec for integration testing of
Chef cookbooks and roles.
Perform a basic set of specs that are applicable to all
tests in a cookbook.
Create highly specific tests to help increase confidence
in a cookbook and cookbook dependencies.
Slide 9
Slide 9 text
Developer Environments
A spec was created for all of the pieces of the
developer stack
Organize the specs based off of a team
Two commands to evaluate the configuration of the
environment
Slide 10
Slide 10 text
Box Creation and Delivery
Utilize Packer and
Racker to build boxes.
Execute set of specs as
part of build process.
Lets us test kickstart,
provisioning scripts, as
well as Chef provisioned
assets.
Slide 11
Slide 11 text
Third Party Machines
Guarantee compliance with requirements — disks,
mounts, cpu, packages, etc.
Continuous compliance, process, and system
monitoring.
Reduce the feedback loop for identifying issues.
Slide 12
Slide 12 text
“Reducing grey matter is essential to
increasing confidence.”
Slide 13
Slide 13 text
How can you reduce grey matter?
Slide 14
Slide 14 text
Anthony Spring
Minister of DevOps Culture
[email protected]
@devopsanthony