55
Salt is not Configuration Management (It’s So much More) Drew Malone - Devops Guy - Cloudera

Saltconf16 - Salt is Not Configuration Management

Embed Size (px)

Citation preview

Salt is not Configuration Management(It’s So much More)

Drew Malone - Devops Guy - Cloudera

pillar.get(‘speaker:bio’)

Drew Malone

Devops guy @ Cloudera - Internal Systems Engineering

Previously - Salt the Cloud & Make it Rain!

Saltstack Certified Engineer #8

@drawsmcgraw www.theReluctantTecchie.com

Why are we here?

New to Salt? Overwhelmed by all the docs?● You’re in the right place (you’re also not alone).

Veteran to Salt? Want to hear how others use it?● You’re in the right place.

Tired after a long conference and just want to be done?● It’ll be quick and I promise you’ll learn something new.

Outline

1) Config Management in a Nutshell

2) Salt Components Crash Course

3) Example Use Cases & Stories

4) Further Reading (i.e. Homework)

5) Done!

Config Management in a Nutshell

Remember when…?

First day!

● Many machines

● Manual configurations

● Inconsistent results

And then….

● More machines

● Automated configurations

● Consistent results

Finally….

● More services

● Automated deploys

● Consistent uptime

We win!

...now what?

What’s the reward for Good Work?

More Good Work

● Merge unrelated systems

● Build complex systems

● “Real Time” systems

More toolsets…?

Tools - You Have Them

Salt ships with a whole set of tools you may not be aware of.

http://static.webshopapp.com/shops/001706/files/002189370/tool-set-in-case-186-piece.jpg

Tools - They Do Work

...and they do more than you think they do.

http://www.homedepot.com/p/Ryobi-ONE-18-Volt-Lithium-Ion-All-in-1-DIY-Combo-Kit-12-Tool-P859/204065437

Event Driven Message Bus

Salt is a parallel remote execution engine.

Upon which you can build config management.

But is has much greater implications.

http://www.homedepot.com/p/Ryobi-ONE-18-Volt-Lithium-Ion-All-in-1-DIY-Combo-Kit-12-Tool-P859/204065437

Quick Inventory

Mine API

Engines SSH

Reactor Cloud

Orchestrate Beacons

Virt Custom

Reactor (+ Thorium)

Map events to actions

http://honeyandlime.co/wp-content/uploads/2014/01/Diet-Coke-and-Mentos-Geyser-Eruption-Experiment.jpg

Salt Cloud

Codify your footprint

OSrolesVM size# of VMs

Jeremy Holmes - https://www.flickr.com/people/photopremier/

Salt API

ProgrammaticSaltAccess

http://vignette2.wikia.nocookie.net/matrix/images/d/df/Thematrixincode99.jpg/revision/latest?cb=20140425045724

Salt Mine

Store Minion detailson the Master

http://rbth.com/980x-/assets/images/daily2/sol_big.jpg

Orchestrate

Codify complexsystems

Explicit order of operations

http://www.chickslovethecar.com/images/topblueprint.jpg

Salt SSH

Your response to “Another agent???”

Runs in a small python environment

https://en.wikipedia.org/wiki/OpenSSH#/media/File:OpenSSH_logo.png

Salt Virt

Turn your laptop into a compute cloud

Primordial phase of the Salt project (no-database cloud controller)

Engines

Mission Control for Salt-powered applications

http://www.bryanrapoza.com/wp-content/uploads/2011/09/sts131_1920x1200.jpg

Beacons

On-the-ground, real-time sensors

https://tristrabulsy.files.wordpress.com/2012/10/minecraft-beacon-blocks.jpg

Customize!

Custom:- Modules- Grains- Pillar- *everything*

http://cdn.idigitaltimes.com/sites/idigitaltimes.com/files/styles/embedded_full/public/2015/11/30/xenoblade-chronicles-x-skells-custom.jpg

Assembling the Parts

Each component is a building block.

What happens when we put them together?

State Enforcement

Beacons + Reactors = Anti-cowboy measures

Authoritative Source

sanctioned-users:- arthur- lancelot systems

http://i1226.photobucket.com/albums/ee409/paneelmaja/Untitled-4_zpsb55629af.jpg

Authoritative Sourcesanctioned-users:- arthur- lancelot- galahad

sanctioned-users:- arthur- lancelot systems

http://www.brickshow.com/wp-content/uploads/2010/06/cowboy-lego.jpg

Authoritative Source

sanctioned-users:- arthur- lancelot systems

Notify!

sanctioned-users:- arthur- lancelot- galahad

Authoritative Source

sanctioned-users:- arthur- lancelot systems

sanctioned-users:- arthur- lancelot

Enforce!

Codified Footprints

Salt Cloud - Your environment in a yaml file.

Class Environment

student-machine: - student-001 - student-002 - student-003 . . .

http://ecs.rutgers.edu/sites/default/files/dsvlab.jpg

Webapp Deploymentcent-7: # App servers - awesome-ui-01: minion: grains: roles: - ui

# Mongo servers - awesome-mongo-01: minion: grains: roles: - mongo

# Nginx reverse proxy - awesome-rproxy-01: minion: grains: roles: - rproxy

On-the-fly Cost Compute

Which cloud is the cheapest today?

Salt Cloud queries include pricing details!

When you’re cloud-agnostic, you don’t need special tools.

Portable Autoscaling

Salt Cloud + Reactor = Autoscaling

Website!

User!

Website!

Much users!

Halp plz!

!

Website!

Much users!

Moar servers!

Website!

Much users!

“Just use Autoscaling!”

-BUT-

Avoid proprietary solutions.

With Salt, you bring your own capabilities.

Continuous Integration

Salt API + Reactor = Never update configs again.

Configurations

Commit &&push

Configurations

POSTConfigurations

state.sls riemann.runningConfigurations

Configurations

New configs now in production!

Kerberos as a Service

Salt API + Reactor = No more human error

Kerberos is Hard

So is Hadoop.

Kerberos AND Hadoop?

We need a bigger boat.

Toolbox

Minion - on Windows Active Directory

Salt API - Receive requests

Reactor - Map API events to script runs

Jinja - Templated Powershell script

Further Reading

Salt Syndic

Returners

SDB

External Auth

http://s2.quickmeme.com/img/0d/0dc5e9ebd13f6720270f2975381dcfa2fad3326fa0bc7ee4f550f0129e02a3a0.jpg

In Conclusion

Salt is more than config management.

It’s a platform.

Message bus is the central nervous system to your data center.

It’s a toolbox full of services and tricks to help you get work done.

Stump the Chump!

Question & Answer Section

Feedback Plz

Use the SaltConf16 event app to provide feedback for this presentation.

https://cdn.meme.am/instances/500x/66955666.jpg

Thanks, and Congrats!