TAMING THE INFRASTRUCTURE
GONE WILD
Isaac Christoffersen
Contributing Partner - Open Source Solutions,
Colloquium




                       This work is licensed under the Creative Commons Attribution 3.0 United States License. To view a
                                    copy of this license, visit http://creativecommons.org/licenses/by/3.0/us/
OVERVIEW
  – THE VISIBLE RAT’S NEST
  – THE OBFUSCATED RAT’S NEST
INFRASTRUCTURE SMELLS
  –   CONFIGURATION DRIFT
  –   SYSTEMS ENTROPY
  –   STAFFING ATROPHY
  –   GOLD IMAGE
  –   SOFTWARE STACKS
KEY TOOLS
  – SYSTEM CONFIGURATION TOOLS
  – OS INSTALLATION TOOLS
  – VIRTUALIZATION TOOLS
SUMMARY
A NEW SERVER ROOM – COMPLETE WITH THAT “NEW CAR” SMELL




                                            Room for
                                            expansion




  Cables all neatly
  tied and out of
  the way.
THE VISIBLE RAT’S NEST
THE OBFUSCATED RAT’S NEST
PROVISIONING INFRASTRUCTURE IS HARD.
                                         Process                          Policy
 I need 3 servers to use
for the development of a
                                Procurement Process                Service Level Agreements
  proof of concept. It's        Order Fulfillment Process          Budgets
 going to be the next big       Staff Recruitment & Hiring         Staffing Guidance
          thing!




                                           Infrastructure

                               Tools                                   People
                                                             Linux Administrators
            Linux              Commodity Servers
                                                             SAN Engineers
            Xen                SANs
                                                             Network Engineers
            Hyperic & Drools   Networking Equipment
            Cobbler & Koan     Power
            Puppet             HVAC Systems
OVERVIEW
  – THE VISIBLE RAT’S NEST
  – THE OBFUSCATED RAT’S NEST
INFRASTRUCTURE SMELLS
  –   CONFIGURATION DRIFT
  –   SYSTEMS ENTROPY
  –   STAFFING ATROPHY
  –   GOLD IMAGE
  –   TEETERING STACKS
KEY TOOLS
  – SYSTEM CONFIGURATION TOOLS
  – OS INSTALLATION TOOLS
  – VIRTUALIZATION TOOLS
SUMMARY
SMELL :: CONFIGURATION DRIFT

• Any change outside a baseline
  configuration is considered a
  configuration drift.
• Could be an accidental or incidental or
  intentional.
• Early identification will minimize
  impact and reduce the risks around
  business continuity.
PRESCRIPTION :: AUTOMATED CONFIGURATION
SMELL :: SYSTEMS ENTROPY
As a system is modified, its disorder, or entropy,
   always increases.
• Similar to theories in software development, a
   system that is used will be modified.
• When a system is modified, its complexity will
   increase, provided that one is not actively working
   to reduce complexity.
PRESCRIPTION :: SEPARATION OF CONCERNS

How can I build my web hosting business?
How can I manage my customer relationships?        Data
How can I run my company's IT department?         Center

How can I collaborate across the enterprise?
How can I view my corporate sales data?           Software


How do I store & retrieve my inventory data?
How do I deploy my web services?                 Platform


How do I get the most of my IT and             Infrastructure
personnel resources?
SMELL :: STAFFING ATROPHY

“Atrophy is the partial or complete
  wasting away of a part of the body.
  Causes include lack of exercise and/or
  use”
PRESCRIPTION :: DRILL, BABY. DRILL.
SMELL :: GOLD IMAGE
PRESCRIPTION :: USE CONTINUOUS PROVISIONING

Consistent, repeatable builds encourage fast
deployment and consistently identical
systems without the burden of managing
images

A repeatable build improves product
quality, reduces the mundane tasks
and minimizes dependencies on key
people.

                                                 build
                                                 cycle




                                      Software
                                      packages
SMELL :: TEETERING STACK
PRESCRIPTION :: CONTAINER PARTITIONING

Virtualization can reduce cost while also improving flexibility…

     Cluster multiple physical servers to gain failover capabilities




     Share resources across physical servers




                                                  source: “Automated failover and recovery of virtualized guests
                                                  in Advanced Platform”, Rob Kenna, Redhat Magazine
OVERVIEW
  – THE VISIBLE RAT’S NEST
  – THE OBFUSCATED RAT’S NEST
INFRASTRUCTURE SMELLS
  –   CONFIGURATION DRIFT
  –   SYSTEMS ENTROPY
  –   STAFFING ATROPHY
  –   GOLD IMAGE
  –   SOFTWARE STACKS
KEY TOOLS
  – SYSTEM CONFIGURATION TOOLS
  – OS INSTALLATION TOOLS
  – VIRTUALIZATION TOOLS
SUMMARY
SYSTEM CONFIGURATION TOOLS

                 Puppet
                 http://www.puppetlabs.com


                 Cfengine
                 http://www.cfengine.org/



                 Chef
                 http://www.opscode.com/


And many more…
OS INSTALLATION TOOLS


                       Cobbler
                       https://fedorahosted.org/cobbler/


                       Spacewalk
                       http://spacewalk.redhat.com/



And many more…
VIRTUALIZATION TOOLS




And many more…
OVERVIEW
  – THE VISIBLE RAT’S NEST
  – THE OBFUSCATED RAT’S NEST
INFRASTRUCTURE SMELLS
  –   CONFIGURATION DRIFT
  –   SYSTEMS ENTROPY
  –   STAFFING ATROPHY
  –   GOLD IMAGE
  –   SOFTWARE STACKS
KEY TOOLS
  – SYSTEM CONFIGURATION TOOLS
  – OS INSTALLATION TOOLS
  – VIRTUALIZATION TOOLS
SUMMARY
•   SEPARATE CONCERNS.
•   DRILL, BABY. DRILL.
•   ALL THAT GLITTERS IS NOT GOLD.
•   PARTITION CONTAINERS.
•   AUTOMATE. AUTOMATE. AUTOMATE.
Isaac Christoffersen
Colloquium
Contributing Partner, Open Source Solutions
email: isaac.christoffersen@colloquium.co
twitter: @colloquiumco



web: http://www.colloquium.co
twitter: @colloquiumco
identica: @colloquiumco

TAMING THE INFRASTRUCTURE GONE WILD

  • 1.
    TAMING THE INFRASTRUCTURE GONEWILD Isaac Christoffersen Contributing Partner - Open Source Solutions, Colloquium This work is licensed under the Creative Commons Attribution 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by/3.0/us/
  • 2.
    OVERVIEW –THE VISIBLE RAT’S NEST – THE OBFUSCATED RAT’S NEST INFRASTRUCTURE SMELLS – CONFIGURATION DRIFT – SYSTEMS ENTROPY – STAFFING ATROPHY – GOLD IMAGE – SOFTWARE STACKS KEY TOOLS – SYSTEM CONFIGURATION TOOLS – OS INSTALLATION TOOLS – VIRTUALIZATION TOOLS SUMMARY
  • 3.
    A NEW SERVERROOM – COMPLETE WITH THAT “NEW CAR” SMELL Room for expansion Cables all neatly tied and out of the way.
  • 4.
  • 5.
  • 6.
    PROVISIONING INFRASTRUCTURE ISHARD. Process Policy I need 3 servers to use for the development of a Procurement Process Service Level Agreements proof of concept. It's Order Fulfillment Process Budgets going to be the next big Staff Recruitment & Hiring Staffing Guidance thing! Infrastructure Tools People Linux Administrators Linux Commodity Servers SAN Engineers Xen SANs Network Engineers Hyperic & Drools Networking Equipment Cobbler & Koan Power Puppet HVAC Systems
  • 7.
    OVERVIEW –THE VISIBLE RAT’S NEST – THE OBFUSCATED RAT’S NEST INFRASTRUCTURE SMELLS – CONFIGURATION DRIFT – SYSTEMS ENTROPY – STAFFING ATROPHY – GOLD IMAGE – TEETERING STACKS KEY TOOLS – SYSTEM CONFIGURATION TOOLS – OS INSTALLATION TOOLS – VIRTUALIZATION TOOLS SUMMARY
  • 8.
    SMELL :: CONFIGURATIONDRIFT • Any change outside a baseline configuration is considered a configuration drift. • Could be an accidental or incidental or intentional. • Early identification will minimize impact and reduce the risks around business continuity.
  • 9.
  • 10.
    SMELL :: SYSTEMSENTROPY As a system is modified, its disorder, or entropy, always increases. • Similar to theories in software development, a system that is used will be modified. • When a system is modified, its complexity will increase, provided that one is not actively working to reduce complexity.
  • 11.
    PRESCRIPTION :: SEPARATIONOF CONCERNS How can I build my web hosting business? How can I manage my customer relationships? Data How can I run my company's IT department? Center How can I collaborate across the enterprise? How can I view my corporate sales data? Software How do I store & retrieve my inventory data? How do I deploy my web services? Platform How do I get the most of my IT and Infrastructure personnel resources?
  • 12.
    SMELL :: STAFFINGATROPHY “Atrophy is the partial or complete wasting away of a part of the body. Causes include lack of exercise and/or use”
  • 13.
  • 14.
  • 15.
    PRESCRIPTION :: USECONTINUOUS PROVISIONING Consistent, repeatable builds encourage fast deployment and consistently identical systems without the burden of managing images A repeatable build improves product quality, reduces the mundane tasks and minimizes dependencies on key people. build cycle Software packages
  • 16.
  • 17.
    PRESCRIPTION :: CONTAINERPARTITIONING Virtualization can reduce cost while also improving flexibility… Cluster multiple physical servers to gain failover capabilities Share resources across physical servers source: “Automated failover and recovery of virtualized guests in Advanced Platform”, Rob Kenna, Redhat Magazine
  • 18.
    OVERVIEW –THE VISIBLE RAT’S NEST – THE OBFUSCATED RAT’S NEST INFRASTRUCTURE SMELLS – CONFIGURATION DRIFT – SYSTEMS ENTROPY – STAFFING ATROPHY – GOLD IMAGE – SOFTWARE STACKS KEY TOOLS – SYSTEM CONFIGURATION TOOLS – OS INSTALLATION TOOLS – VIRTUALIZATION TOOLS SUMMARY
  • 19.
    SYSTEM CONFIGURATION TOOLS Puppet http://www.puppetlabs.com Cfengine http://www.cfengine.org/ Chef http://www.opscode.com/ And many more…
  • 20.
    OS INSTALLATION TOOLS Cobbler https://fedorahosted.org/cobbler/ Spacewalk http://spacewalk.redhat.com/ And many more…
  • 21.
  • 22.
    OVERVIEW –THE VISIBLE RAT’S NEST – THE OBFUSCATED RAT’S NEST INFRASTRUCTURE SMELLS – CONFIGURATION DRIFT – SYSTEMS ENTROPY – STAFFING ATROPHY – GOLD IMAGE – SOFTWARE STACKS KEY TOOLS – SYSTEM CONFIGURATION TOOLS – OS INSTALLATION TOOLS – VIRTUALIZATION TOOLS SUMMARY
  • 23.
    SEPARATE CONCERNS. • DRILL, BABY. DRILL. • ALL THAT GLITTERS IS NOT GOLD. • PARTITION CONTAINERS. • AUTOMATE. AUTOMATE. AUTOMATE.
  • 25.
    Isaac Christoffersen Colloquium Contributing Partner,Open Source Solutions email: isaac.christoffersen@colloquium.co twitter: @colloquiumco web: http://www.colloquium.co twitter: @colloquiumco identica: @colloquiumco