$30 off During Our Annual Pro Sale. View Details »

The future of configuration management (and how to stop it)

The future of configuration management (and how to stop it)

A talk about the future (and the past) of configuration management. The only talk ever to mention MIL-HDBK-61B and Kubernetes in one presentation. Presented at #cfgmgtcamp

Gareth Rushgrove

February 03, 2015
Tweet

More Decks by Gareth Rushgrove

Other Decks in Technology

Transcript

  1. The Future of
    Configuration
    Management
    Puppet Labs
    Gareth Rushgrove
    And how to stop it

    View Slide

  2. Gareth Rushgrove

    View Slide

  3. @garethr

    View Slide

  4. Gareth Rushgrove

    View Slide

  5. Gareth Rushgrove

    View Slide

  6. More a discussion of
    problems than solutions
    Gareth Rushgrove

    View Slide

  7. A disclaimer
    Gareth Rushgrove

    View Slide

  8. What is
    configuration
    management?

    View Slide

  9. A discipline
    Gareth Rushgrove

    View Slide

  10. Any input to your
    infrastructure is
    configuration
    Gareth Rushgrove

    View Slide

  11. Configuration
    management is about
    managing those inputs
    over time
    Gareth Rushgrove

    View Slide

  12. Configuration
    management is about
    managing those inputs
    over time and at scale*
    Gareth Rushgrove
    *thanks @lutter

    View Slide

  13. Gareth Rushgrove
    Configuration
    management is about
    managing those inputs
    over time and at scale*

    View Slide

  14. A little history

    View Slide

  15. 1950s research, 1960s
    480 series, 1991 MIL-
    HDBK-61, 1998 ANSI-
    EIA-649
    Gareth Rushgrove

    View Slide

  16. Military Handbook
    Configuration
    Management Guidance
    MIL-HDBK-61B
    Gareth Rushgrove

    View Slide

  17. Identification
    Control
    Status accounting
    Verification and audit
    Gareth Rushgrove

    View Slide

  18. National Consensus
    Standard for Configuration
    Management
    EIA-649
    Gareth Rushgrove

    View Slide

  19. Configuration management
    verifies that a system is
    identified and documented in
    sufficient detail
    Gareth Rushgrove

    View Slide

  20. Configuration management
    verifies that a system
    performs as intended
    Gareth Rushgrove

    View Slide

  21. Service management,
    ITIL, ISO 20000, ISO
    9000, ISO 10007
    Gareth Rushgrove

    View Slide

  22. Infrastructure as code
    Gareth Rushgrove

    View Slide

  23. Files, services, packages,
    users, groups
    Gareth Rushgrove

    View Slide

  24. This talk

    View Slide

  25. Predict the future
    Gareth Rushgrove

    View Slide

  26. Look at what needs
    configuring
    Gareth Rushgrove

    View Slide

  27. Near term

    View Slide

  28. Infrastructure as a service
    Gareth Rushgrove

    View Slide

  29. Gareth Rushgrove

    View Slide

  30. Gareth Rushgrove

    View Slide

  31. Software defined networks
    Gareth Rushgrove

    View Slide

  32. Network devices with APIs
    Gareth Rushgrove

    View Slide

  33. Cloud networks
    Gareth Rushgrove

    View Slide

  34. Gareth Rushgrove

    View Slide

  35. Overlay networks
    Gareth Rushgrove

    View Slide

  36. Gareth Rushgrove
    Weave

    View Slide

  37. Medium term

    View Slide

  38. Distributed configuration
    Gareth Rushgrove

    View Slide

  39. Etcd, Consul, Zookeeper
    Gareth Rushgrove

    View Slide

  40. Replacement for
    configuration files
    Gareth Rushgrove

    View Slide

  41. Need to manage (some)
    information going in. Say
    for change control reasons
    Gareth Rushgrove
    Identification
    Control
    Status accounting
    Verification and audit

    View Slide

  42. Gareth Rushgrove

    View Slide

  43. Gareth Rushgrove

    View Slide

  44. Service discovery vs
    modelling — choosing the
    right abstraction
    Gareth Rushgrove

    View Slide

  45. Containers
    Gareth Rushgrove

    View Slide

  46. Gareth Rushgrove

    View Slide

  47. Containers as a new
    package format
    Gareth Rushgrove

    View Slide

  48. Images AND running
    containers
    Gareth Rushgrove
    Identification
    Control
    Status accounting
    Verification and audit

    View Slide

  49. Containers as virtual
    machines
    Gareth Rushgrove

    View Slide

  50. Containers as processes
    Gareth Rushgrove

    View Slide

  51. Gareth Rushgrove

    View Slide

  52. Gareth Rushgrove

    View Slide

  53. App container
    specification
    Gareth Rushgrove

    View Slide

  54. New operating systems
    addressing host level
    complexity
    Gareth Rushgrove

    View Slide

  55. Gareth Rushgrove

    View Slide

  56. Gareth Rushgrove

    View Slide

  57. Gareth Rushgrove

    View Slide

  58. Read-only file systems
    Gareth Rushgrove

    View Slide

  59. Atomic changes
    Gareth Rushgrove

    View Slide

  60. Collapse all files,
    packages, users, etc.
    down to a single hash
    Gareth Rushgrove
    Identification
    Control
    Status accounting
    Verification and audit

    View Slide

  61. Cloud infrastructure II —
    A new hope
    Gareth Rushgrove

    View Slide

  62. Platform as a service
    Gareth Rushgrove

    View Slide

  63. Gareth Rushgrove

    View Slide

  64. Buildpacks
    Gareth Rushgrove
    Identification
    Control
    Status accounting
    Verification and audit

    View Slide

  65. Application composition
    Gareth Rushgrove
    Identification
    Control
    Status accounting
    Verification and audit

    View Slide

  66. CloudFoundry application
    security groups
    Gareth Rushgrove
    Identification
    Control
    Status accounting
    Verification and audit

    View Slide

  67. Gareth Rushgrove

    View Slide

  68. Environment variables
    Gareth Rushgrove
    Identification
    Control
    Status accounting
    Verification and audit

    View Slide

  69. Longer term

    View Slide

  70. Cloud infrastructure III —
    The cloud strikes back
    Gareth Rushgrove

    View Slide

  71. Infrastructure-less
    execution environments
    Gareth Rushgrove

    View Slide

  72. Azure WebJobs, AWS
    Lamda
    Gareth Rushgrove
    Identification
    Control
    Status accounting
    Verification and audit

    View Slide

  73. Autonomous systems
    Gareth Rushgrove

    View Slide

  74. Autoscaling
    Gareth Rushgrove

    View Slide

  75. Group size, scaling
    policies, instance details
    Gareth Rushgrove
    Identification
    Control
    Status accounting
    Verification and audit

    View Slide

  76. Gareth Rushgrove

    View Slide

  77. Gareth Rushgrove

    View Slide

  78. Gareth Rushgrove

    View Slide

  79. Pods, Services,
    ReplicationControllers
    Gareth Rushgrove
    Identification
    Control
    Status accounting
    Verification and audit

    View Slide

  80. Gareth Rushgrove

    View Slide

  81. Gareth Rushgrove

    View Slide

  82. Unikernels
    Gareth Rushgrove

    View Slide

  83. Gareth Rushgrove

    View Slide

  84. OSv
    Gareth Rushgrove

    View Slide

  85. MirageOS
    Gareth Rushgrove

    View Slide

  86. Gareth Rushgrove

    View Slide

  87. Gareth Rushgrove

    View Slide

  88. Conclusions

    View Slide

  89. The breadth of
    infrastructure we manage
    is only increasing
    Gareth Rushgrove

    View Slide

  90. The importance of
    infrastructure APIs
    Gareth Rushgrove

    View Slide

  91. Modelling higher level
    primitives
    Gareth Rushgrove

    View Slide

  92. Focusing on inputs to
    dynamic systems
    Gareth Rushgrove

    View Slide

  93. Multiple speeds of
    configuration
    Gareth Rushgrove

    View Slide

  94. One tool or a collection of
    tools?
    Gareth Rushgrove

    View Slide

  95. One interface or a
    collection of interfaces?
    Gareth Rushgrove

    View Slide

  96. Standards?
    Gareth Rushgrove

    View Slide

  97. The future is already here
    — it's just not very evenly
    distributed.
    Gareth Rushgrove
    William Gibson

    View Slide

  98. Questions?
    And thanks for listening

    View Slide