design summit - devops happiness and puppet integration - james shubin

22
1 JAMES SHUBIN ManageIQ devops happiness and puppet integration architectures James Shubin, @purpleidea Config Mgmt. Architect Systems Engineering Group, Red Hat ManageIQ Summit, 2014

Upload: manageiq

Post on 20-Jul-2015

186 views

Category:

Software


0 download

TRANSCRIPT

1 JAMES SHUBIN

ManageIQ devops happiness and puppet integration architecturesJames Shubin, @purpleideaConfig Mgmt. ArchitectSystems Engineering Group, Red Hat

ManageIQ Summit, 2014

2 JAMES SHUBIN

Who am I ?

● Puppet Hacker

● Config Mgmt. Architect @ Red Hat

● Technical Blogger: The Technical Blog of Jameshttps://ttboj.wordpress.com/

● Physiologist (Cardiology Specialization)

● All around hoopy frood...

3

JAMES SHUBIN

disclaimer: I am not a cloudforms expert

4 JAMES SHUBIN

I'm not a cfme expert...

...but hopefully I can convince you that I know what I'm talking about architecturally, and concerning devops + config mgmt.!

5

JAMES SHUBIN

vagrant

+ vagrant-libvirt

+ oh-my-vagrant

devops happiness

6

JAMES SHUBIN

devops makes for happy hackers...

i vagrant �

7 JAMES SHUBIN

vagrant + vagrant-libvirt + oh-my-vagrant

<live demo>

8

JAMES SHUBIN

puppet integration architectures

9 JAMES SHUBIN

there's a lot of talk about...

(cfme as the centre of the universe...)

cfmesome user/adminuser clicksthe mouse

puppet clientruns somecfme hook

...but this doesn't have a strong integration story

puppet master

10 JAMES SHUBIN

i tried hard to make you those fancy effects...

11 JAMES SHUBIN

consider: wrapping CFME with puppet

(IOW, someone should write puppet-cfme)

puppet servercode / datagit push

cfmepuppetagent

...can strongly integrate, because cfme “clients” can “export resources” back to the cfme server

puppet client

feedback loop

JAMES SHUBIN

there are some features which would make all of this

much easier in cfme...

JAMES SHUBIN

there are some features which would make all of this

much easier in cfme...

JAMES SHUBIN

there are some features which would make all of this

possible in cfme...

15 JAMES SHUBIN

Enabling vagrant...

● Distribution of cfme as RPM...

● Makes it easy to layer cfme on top of a base image...

● Gives you a homogeneous vagrant environment...

● Enables devel/testing/demos on full clusters!

● More bullet points means more awesome!!!

16 JAMES SHUBIN

Wrapping cfme with a puppet module...

● Needs a complete cfme CLI

● The CLI should use the RESTful API (for sanity)

● vmdb.yml.db should support an include.d/ style feature

● cfme “console” (menu options) needs to be accessible / modifiable via CLI or config file

● FreeIPA got wrapped beautifully because of this model!

JAMES SHUBIN

wouldn't this deprecate the use of the cfme webui?

(no!)

here's why...

18 JAMES SHUBIN

Hybrid management of cfme types...

● Typically, only one thing can manage each resource...

● This doesn't work well when you want to combine puppet + webui + cli usage simultaneously...

● Therefore, I invented: “Hybrid management for Puppet”

● POC with FreeIPA – please feel free to extend to cfme

● This is an advanced puppet technique, but it's worth it!

19 JAMES SHUBIN

Red Hat funds good hackers so that we can...

● Work on open source / free software things...

● Speak at events like this...

● Hack on good products and solutions...

● For access to products, solutions, and support, visit:

ht tps: / / redhat .com/

20 JAMES SHUBIN

Learn more

● The Technical Blog of James:https://ttboj.wordpress.com/

● Puppet-IPA:https://github.com/purpleidea/puppet-ipa

● Technical article about this technique:https://ttboj.wordpress.com/2014/07/24/hybrid-management-of-freeipa-types-with-puppet/

● Contact me if you have any other questions:purpleidea @ { irc, twitter, redhat.com }

JAMES SHUBIN

Q & A ?

JAMES SHUBIN

Thank you & Happy Hacking !