foreman_provision – Infrastructure as code

31
foreman_provision Infrastructure as Code Gent, Nils Domrose 02.02.2016 cfgmgmtlogo http://cfgmgmtcamp.eu

Transcript of foreman_provision – Infrastructure as code

Page 1: foreman_provision – Infrastructure as code

foreman_provision

Infrastructure as Code

Gent, Nils Domrose

02.02.2016cfgmgmtlogo http://cfgmgmtcamp.eu

Page 2: foreman_provision – Infrastructure as code

About me

2

Head of IT @ inovex GmbH

• Systems Engineer• Automation• Architecture• Security• Network Engineering

@endyman

Page 3: foreman_provision – Infrastructure as code

The Problem

3

Page 4: foreman_provision – Infrastructure as code

The Problem

4

Page 5: foreman_provision – Infrastructure as code

The Problem

5

Page 6: foreman_provision – Infrastructure as code

The Problem

6

Page 7: foreman_provision – Infrastructure as code

The Problem

7

Page 8: foreman_provision – Infrastructure as code

The Problem

8

Page 9: foreman_provision – Infrastructure as code

The Problem

9

repeat the last steps for each system….

• 2 Loadbalancers• 2 Webservers• 2 Middleware Servers• 2 KeyValue Stores= 8 Systemes

Page 10: foreman_provision – Infrastructure as code

The Problem

10

... in each environment

• Dev• Demo• Stage• Production= 36 Systems*

*with smallest prod sizing

Page 11: foreman_provision – Infrastructure as code

The Problem

11

Page 12: foreman_provision – Infrastructure as code

The Problem

http://www.memgenerator.net 12

Page 13: foreman_provision – Infrastructure as code

The Solution

13

Page 14: foreman_provision – Infrastructure as code

Working with the API

14

Page 15: foreman_provision – Infrastructure as code

foreman_provison

Foreman Logo http://theforeman.github.io 15

Page 16: foreman_provision – Infrastructure as code

Getting Started

16

Page 17: foreman_provision – Infrastructure as code

Accessing the API

17

Page 18: foreman_provision – Infrastructure as code

Provisioning Data

18

Page 19: foreman_provision – Infrastructure as code

Provisioning Data

19

Page 20: foreman_provision – Infrastructure as code

Provisioning Data

20

Page 21: foreman_provision – Infrastructure as code

Dry-Run

21

Page 22: foreman_provision – Infrastructure as code

Provisioning

22

Page 23: foreman_provision – Infrastructure as code

Result

23

Page 24: foreman_provision – Infrastructure as code

VMware? VMware!

24

Page 25: foreman_provision – Infrastructure as code

More Examples

25

Page 26: foreman_provision – Infrastructure as code

Limitations

26

• Currently Objects can only be checked or created• no update• no delete

• Fragile to changes in compute resources (fog updates)

• Issue #14 - Use apipie bindings

Page 27: foreman_provision – Infrastructure as code

Possible Alternatives

27

• theforeman/foreman_deployments• Terraform Provider

https://github.com/mattwilmott/terraform-foreman

Page 28: foreman_provision – Infrastructure as code

Deployment Pipeline

Logogs: https://wiki.jenkins-ci.org, http://theforeman.github.io 28

Page 29: foreman_provision – Infrastructure as code

Links

29

Arnold‘s inovex Blog Post:https://goo.gl/hnAfu3

Source Code @ Github: https://github.com/FILIADATAGmbH/foreman_provision

Slideshare:http://de.slideshare.net/inovex

Page 30: foreman_provision – Infrastructure as code

30

We are hiring

http://www.inovexperts.com

Page 31: foreman_provision – Infrastructure as code

Thank You!Nils Domrose

Head of IT

inovex GmbH

Ludwig-Erhard-Allee 6

76131 Karlsruhe