Reuse in Oracle SOA Suite 12c - Nordic ACE · PDF file–OSB Cluster –BAM Cluster...

6
25-9-2015 1 Copyright © 2014, eProseed and/or its affiliates. All rights reserved. | Using Puppet, Chef and Docker Nordic ACE Director Tour 2015 Ronald van Luttikhuizen Managing partner @ eProseed NL September 2015 PROVISIONING FUSION MIDDLEWARE Copyright © 2014, eProseed and/or its affiliates. All rights reserved. | INTRODUCTION About me Managing partner at eProseed Oracle Ace Director, working with Oracle tooling since 1998 Author of SOA Made Simple Experience with Oracle SOA Suite since version 10g About eProseed HQ in Luxemburg Local offices in several parts of the world Award winning Oracle partner eProseed Cloud, eProseed Deployer 2 Copyright © 2014, eProseed and/or its affiliates. All rights reserved. | 3 Demo | start Server provisioning Puppet Chef Docker Demo | result AGENDA 3 4 5 2 1 6 Copyright © 2014, eProseed and/or its affiliates. All rights reserved. | 4 DEMO | START WLS Admin Server WLS Cluster - OSB WLS Cluster - SOA Database (SOAINFRA) Provisioning of complete Oracle SOA Suite stack SOA Cluster OSB Cluster BAM Cluster RCU Approx. 20 minutes Inspection of the environment and explanation at the end of this session WLS Cluster - BAM Copyright © 2014, eProseed and/or its affiliates. All rights reserved. | 5 Demo | start Server provisioning Puppet Chef Docker Demo | result AGENDA 3 4 5 2 1 6 Copyright © 2014, eProseed and/or its affiliates. All rights reserved. | 6 PROVISIONING STRATEGIES Appliance Do-It-Yourself Cloud Mix

Transcript of Reuse in Oracle SOA Suite 12c - Nordic ACE · PDF file–OSB Cluster –BAM Cluster...

Page 1: Reuse in Oracle SOA Suite 12c - Nordic ACE · PDF file–OSB Cluster –BAM Cluster –RCU ... WLS, OSB, SOA Suite Database Server Operating System ... Reuse in Oracle SOA Suite 12c

25-9-2015

1

Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |

Using Puppet, Chef and Docker

Nordic ACE Director Tour 2015 Ronald van Luttikhuizen Managing partner @ eProseed NL September 2015

PROVISIONING FUSION MIDDLEWARE

Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |

INTRODUCTION

• About me – Managing partner at eProseed

– Oracle Ace Director, working with Oracle tooling since 1998

– Author of SOA Made Simple

– Experience with Oracle SOA Suite since version 10g

• About eProseed – HQ in Luxemburg

– Local offices in several parts of the world

– Award winning Oracle partner

– eProseed Cloud, eProseed Deployer

2

Copyright © 2014, eProseed and/or its affiliates. All rights reserved. | 3

Demo | start

Server provisioning

Puppet

Chef

Docker

Demo | result

AGENDA

3

4

5

2

1

6

Copyright © 2014, eProseed and/or its affiliates. All rights reserved. | 4

DEMO | START

WLS Admin Server

WLS Cluster - OSB

WLS Cluster - SOA

Database (SOAINFRA)

• Provisioning of complete Oracle SOA Suite stack

– SOA Cluster

– OSB Cluster

– BAM Cluster

– RCU

• Approx. 20 minutes

• Inspection of the environment and explanation at the end of this session

WLS Cluster - BAM

Copyright © 2014, eProseed and/or its affiliates. All rights reserved. | 5

Demo | start

Server provisioning

Puppet

Chef

Docker

Demo | result

AGENDA

3

4

5

2

1

6

Copyright © 2014, eProseed and/or its affiliates. All rights reserved. | 6

PROVISIONING STRATEGIES

Appliance

Do-It-Yourself

Cloud

Mix

Page 2: Reuse in Oracle SOA Suite 12c - Nordic ACE · PDF file–OSB Cluster –BAM Cluster –RCU ... WLS, OSB, SOA Suite Database Server Operating System ... Reuse in Oracle SOA Suite 12c

25-9-2015

2

Copyright © 2014, eProseed and/or its affiliates. All rights reserved. | 7

SERVER PROVISONING | DELIVERY

• Automated installations and rollbacks • Inject environment variables, smoke-testing

• Automated builds, tests, and packaging from version control

• Central archiving in repository or artifactory

• Automated provisioning of middleware • High frequency of changes to servers (e.g. patches)

• Automated provisioning of OS-ready images or containers • Low frequency of changes to base images

Machine/Container

Provisioning

Server & Middleware

Provisioning

Application Building &

Packaging

Application Deployment

Copyright © 2014, eProseed and/or its affiliates. All rights reserved. | 8

SERVER PROVISONING | EVOLUTION

Artisan Server Crafting

Custom & Non-portable

Scripts

Automated & Standard CM

Tools

Immutable Servers & Unikernels

VMs, Chef, Puppet, etc.

Docker

Manual Installation, Documents

Shell scripts

Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |

• Artisan server crafting

– Boring

– Stressful

– Error-prone

– Time-consuming

– Non-scalable & expensive

• Too little time for things that matter

SERVER PROVISONING | THE TRADITIONAL WAY

9 Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |

WLS, OSB, SOA

Suite Database Server

Operating System

WebLogic

OSB

SOA Suite

Domain creation

Initial Domain setup

Operating system

Database software

Database creation

SOA Suite Repository

40

337 Total actions

13

8

10

10

40

40

30

5

8

YUM + Packages / JVM / Ulimits / Kernel / User / Group / Directories

WebLogic / BSU / NodeManager

OSB / OPatch

SOA Suite / OPatch

Create Domain

Logs / Security / JMS / WebApps / DataSources / Resource Adapters

Source: Roll Out a Complete Oracle Fusion Middleware Env in Less than 10min by Edwin Biemond

Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |

SERVER PROVISIONING | HOW IT CAN BE

• Automated configuration management

– Describe a system once, apply as often as you want

– Automate the repetitive, focus on improvements and “real” problems

– Predictable results

– Fast provisioning

– Keep servers in sync

• Puppet and Chef are examples of tools for automated configuration management

11 Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |

SERVER PROVISIONING | INFRASTRUCTURE AS CODE

• Advantages

– Configuration is documentation and always up-to-date

– Configuration is version controlled

– Configurations are defined in a machine- and OS-independent domain language so the manifests are portable and can be reused (trade-off)

– Change and test configuration, not the server, and re-apply

12

Page 3: Reuse in Oracle SOA Suite 12c - Nordic ACE · PDF file–OSB Cluster –BAM Cluster –RCU ... WLS, OSB, SOA Suite Database Server Operating System ... Reuse in Oracle SOA Suite 12c

25-9-2015

3

Copyright © 2014, eProseed and/or its affiliates. All rights reserved. | 13

Demo | start

Server provisioning

Puppet

Chef

Docker

Demo | result

AGENDA

4

5

1

6

2

3

Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |

PUPPET EXAMPLE | APACHE HTTP SERVER

package { "httpd":

name => "httpd.x86_64",

ensure => "present",

}

file { "http.conf":

path => "/etc/httpd/conf/httpd.conf",

owner => root,

group => root,

mode => 0644,

source => "puppet:///modules/apache/httpd.conf",

require => Package["httpd"],

}

service { "httpd":

ensure => running,

enable => true,

subscribe => File["http.conf"],

}

• Manifests

• Resources

– Name

– Attributes and values

• Ordering and dependencies

14

Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |

MORE ON PUPPET | BUILDING BLOCKS

• Variables and (custom) facts

• Node declarations

• Classes and Modules

• Defined resource types

• Templates

• Puppet Forge

if $operatingsystem == 'CentOS'

node 'www1.example.com' {

include common

include ohs

}

node 'db1.example.com' {

include common

include oraclexe

}

file { "http.conf":

path => "/etc/httpd/conf/httpd.conf",

owner => 'root',

group => 'root',

mode => '0644',

content => template('config/httpd.erb'),

}

15 Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |

MORE ON PUPPET | ARCHITECTURE & RUNTIME

versus

16

Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |

MORE ON PUPPET | CONSOLE

17 Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |

WANT TO KNOW MORE ABOUT PUPPET …

18

Page 4: Reuse in Oracle SOA Suite 12c - Nordic ACE · PDF file–OSB Cluster –BAM Cluster –RCU ... WLS, OSB, SOA Suite Database Server Operating System ... Reuse in Oracle SOA Suite 12c

25-9-2015

4

Copyright © 2014, eProseed and/or its affiliates. All rights reserved. | 19

Demo | start

Server provisioning

Puppet

Chef

Docker

Demo | result

AGENDA

5

1

6

2

3

4

Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |

CHEF | ARCHITECTURE

Central Chef Server

Multiple Administrators

Repository

Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |

CHEF | TERMINOLOGY

– Node, Server, Workstation

– Chef-client asks Chef-server about the policy for the node

– Resources: a component and the desired state

– Recipes: describe resources and desired state

– Cookbooks: sets of recipes grouped together, also includes templates and source files, etc.

– Run List: recipes from cookbooks you want to run

– LWRP: custom actions

21 Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |

CHEF | EXAMPLE RECIPE

• paca

Policy says package

should be installed

This service should be enabled

on reboot, and must be running

Template specifies the contents

required

Source: Chef Fundamentals Webinar 1 #LEARNCHEF

22

Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |

CHEF MANAGEMENT CONSOLE

23 Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |

MORE ABOUT CHEF

24

Page 5: Reuse in Oracle SOA Suite 12c - Nordic ACE · PDF file–OSB Cluster –BAM Cluster –RCU ... WLS, OSB, SOA Suite Database Server Operating System ... Reuse in Oracle SOA Suite 12c

25-9-2015

5

Copyright © 2014, eProseed and/or its affiliates. All rights reserved. | 25

Demo | start

Server provisioning

Puppet

Chef

Docker

Demo | result

AGENDA

3

4

5

2

1

6

Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |

DOCKER | INTRODUCTION

Docker allows you to create reusable “containers” with applications in them. These containers can be distributed and will run on several platforms.

• Container, not VMs and Hypervisor

• Linux-only

• Layering

• Provisioning speed, performance, smaller image size

• Dockerfile, Image, Container, Registry (build/ship/run)

• Maturity and security

26

Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |

DOCKER

• Docker and CM tools – Modify nodes versus wipe/create new nodes

– Abstraction and learning-curve

– Support for complex configurations

• Docker versus or together with CM tools?

– CM tool to provision Docker host and perform more complex provisioning inside Docker container

– Docker to create, distribute and run containers

– Docker to easily layer images (e.g. for demo’s)

• Oracle and Docker

– (Limited) support for Docker on Oracle Linux, WebLogic certified to run in Docker container

– Dockerfiles and Docker images (Oracle Linux, WebLogic)

27 Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |

TAKE-AWAYS | GENERAL

• Automate delivery

• Fundamental, not a value-add anymore

• Holistic approach on software delivery

• Not just technology, people and process as well

• Incremental approach

• No single tool that does it all

28

Do you need and want to do it yourselves?

Copyright © 2014, eProseed and/or its affiliates. All rights reserved. | 29

Demo | start

Server provisioning

Puppet

Chef

Docker

Demo | result

AGENDA

3

4

5

2

1

6

Copyright © 2014, eProseed and/or its affiliates. All rights reserved. | 30

DEMO | RESULT

WLS Admin Server

WLS Cluster - OSB

WLS Cluster - SOA

Database (SOAINFRA)

Vagrant

• Create and spin up VM’s

• Trigger Puppet run

Puppet

• Required packages

• Kernel params, users, entropy, etc.

• DB, JDK, WLS, SOA Suite, Service Bus

• RCU

• NodeManager and Domain configuration

• Patches

• Deployment of test composite Source: https://github.com/biemond/biemond-orawls

WLS Cluster - BAM

Page 6: Reuse in Oracle SOA Suite 12c - Nordic ACE · PDF file–OSB Cluster –BAM Cluster –RCU ... WLS, OSB, SOA Suite Database Server Operating System ... Reuse in Oracle SOA Suite 12c

25-9-2015

6

Copyright © 2014, eProseed and/or its affiliates. All rights reserved. |

TAKE-AWAYS | CHEF VS PUPPET

• Style guides & coding standards

• Open-Source versus Enterprise

• Hosting

• Support for OS & Platforms

• Plug-ins & Tools

• Pricing model

• Language

32