26
Closing the Loop: Direct Change Control with Puppet Nick Lewis @nick_lewis [email protected] "A Mad Tea Party" (CC BY-NC-SA 2.0) by Justin in SD

PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet

  • Upload
    puppet

  • View
    63

  • Download
    0

Embed Size (px)

Citation preview

Page 1: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet

Closing the Loop: Direct Change Control with PuppetNick Lewis @nick_lewis [email protected]

"A Mad Tea Party" (CC BY-NC-SA 2.0) by Justin in SD

Page 2: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet

Hello!Nick Lewis @nick_lewis [email protected]

Page 3: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet

"shinkansen" (CC BY-SA 2.0) by twicepix

Page 4: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet

Artisanal, hand-crafted bits• Fast • For a while • Wildly unsafe • Impossible to track

Page 5: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet

#!/usr/bin/bash

Page 6: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet
Page 7: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet

o o o o o o o?

Page 8: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet

?

Page 9: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet

Enter: Puppet!

Page 10: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet

💡

💡

💡

Page 11: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet

Nodes have a desired state, which is periodically updated and reinforced.

Page 12: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet

Nodes have a desired state, which is periodically updated and reinforced.

Page 13: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet

💡

💡

💡

Page 14: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet

Direct Change

Page 15: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet
Page 16: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet

puppet job run --nodes foo.example.com,bar.example.com,baz.example.com

puppet job run --query 'inventory { facts.osfamily = "Debian" }'

puppet job run --query 'resources { type = "Service" and title = "httpd" }'

Page 17: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet

inventory { facts.osfamily = "Debian" and resources { type = "Service" and title = "httpd" } limit 3 }

nodes { last_report_status = "failed" }

catalogs { ! code_id = "urn:puppet:code-id:1:a393e1b;production" }

Page 18: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet
Page 19: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet

💡💡

💡

Orchestrator

Page 20: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet

💡💡

💡

Orchestrator

Page 21: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet

Direct Change• The way to make change with Puppet • Up to 10k nodes now, scale-out later • Runs from your laptop

Page 22: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet

Client Tools• puppet job • puppet access • puppet code • puppet query

Page 23: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet

Future Work• UI improvements • Smarter puppet run throttling • Open source tooling

Page 24: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet

Futurer Work• Asynchronous enforcement • Automatic change • Devices, non-root agents

Page 25: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet

Questions?Direct Puppet and Application Management for the Puppet Platform Ryan Coleman Friday, 1:30 pm @ Terrace Salon (track 6)

Page 26: PuppetConf 2016: Closing the Loop: Direct Change Control with Puppet – Nick Lewis, Puppet