Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 32

Roll Out a Complete Oracle Fusion

Middleware Environment in Less Than 10


Minutes
By Edwin Biemond
Oracle OpenWorld 2013
2

#WHOAMI

I work for Amis

I live in The Netherlands

I have a blog http://biemond.blogspot.com

I am an Oracle ACE

I wrote a book
Oracle Service Bus 11g
Developer Cookbook
3

Why is it so hard to configure a FMW environment?

And why does it always takes at least


a few days (weeks) before you can use it
4

You need to do so many steps

SOA Suite, OSB Database


Server Server
YUM + Packages / JVM /
40
Ulimits / Kernel / User / 40
Operating System Operating system
Group / Directories
WebLogic / BSU / Database
WebLogic 13 30
NodeManager software

OSB 8 OSB / OPatch


Database
creation 5

Soa Suite 10 SOA Suite / OPatch

Domain creation Soa Suite


10 Create Domain Repository 8

Initial Domain
setup 40 Logs / Security / JMS /
WebApps / DataSources / X Total actions
Resource Adapters
5

How to solve this?


6

Administrators!!

• Expensive and you need more than one


• After a while they get bored, leave the company or make
mistakes

• Knowledge is in their heads


• Does have every installation have the same Quality?
• Still takes a long time to get a new environment
7

Cloning

• Golden image still made by an Administrator


– The administrator has the knowledge
– Probably every Golden image is different
– Need for Guidelines

• Many Clones & Clones of Clones


– What are the differences?
– Hard to refresh all environments
– Probably need to change Operating System settings &
WebLogic DataSources

• Every few months there are some Oracle Patches


– Operating System
– JVM
– WebLogic & BSU
– FMW & OPatch
8

What is the solution?

Use a provisioning Tool


like Puppet, Chef, Ansible

• Describe your environment in code & put it


under version control

• Outcome is predicatable and repeatable

• No need for extra configuration of O.S. or


WebLogic DataSources

• Auditing

• Can keep all servers up-to-date


9

Start it up

Watch the Magic Happen


10

Puppet, OK but why?

• Great install base with 1600 ready to use modules


• Supports and also used by VMware, OpenStack,
Amazon
• Multiple Operating System support like Linux,
Windows, Oracle Solaris & IBM AIX

• Integrated Dashboard
• Reporting & Auditing
• MCollective -> Live management
• Puppet Language, Templating, Eclipse as IDE

• Open Source or Enterprise Edition -> free with


max 10 nodes
11

How it works

• Agent runs every X minutes or started by


MCollective

• Agent gathers local facts about its


system

• Agent initiates a request to the server


requesting the latest version of its
catalog

• Server compiles the configuration from


source into a catalog and returns it to the
agent.

• Agent applies the catalog, resulting in


configuration changes.
12

Puppet Modules

Puppet as provisioning tool is not enough

– There are Puppet module for installing a JVM, configure kernel and ulimits
parameters
– Nothing for Oracle ( Database or WebLogic / FMW )

But Oracle supports silent install and provide utilities to


retrieve all the Middleware information

So I made my own Puppet Modules 


– WLS Module
– OraDB Module -> installs a 11g & 12c Database plus RCU
– JDK7 Module -> fixes Urandom and RPM errors
– OraUtils -> WebLogic Scripts & Autostart NodeManager
13

Puppet WLS Module

• Support for CentOS, RedHat, • Domain creation


OracleLinux, Ubuntu, Debian, – Standard (ADF)
SLES, Solaris, Windows – OSB
– OSB, SOA Suite, BAM
• Installs
– OSB, SOA Suite, BAM, BPM
– WebLogic 10.3 (11g), 12.1.1, 12.1.2
– WebCenter
– ADF 11g & 12c (12.1.2)
– WebCenter, WC Content, BPM
– Oracle Service Bus 11g
– Soa Suite 11g • Configuration
– – NodeManager
WebCenter 11g Portal & Content
– Server Templates ( 12c)
• Patching – Dynamic Clusters (12c)
– BSU
– Log location
– OPatch
– JCA Resource Adapter
• Tooling – Persistence
– JDeveloper 11g, 12c – JMS
– OEPE – SAF
– Can run any WLST script
14

Puppet Demo Steps

Puppet
Version Dashboard
Master
Control • WLS
Puppet • OraDB
Modules • JDK7
• OS modules
Agent

SOA Suite, OSB Agent


Server Database
Server
Operating System 40

Operating system 40
WebLogic 13

OSB 8 Database
software 30

15 Min 10 Min
Soa Suite 10
Database
creation 5

Domain creation 10
Soa Suite
Initial Domain Repository 8
setup 40
15

What is left for you?

Create your own FMW configurations

Fork or contribute to the WLS module

Puppetize everything 
16

Create a Main Class

• This class can be assigned to Nodes


• Determine the order of installation
17

WebLogic Puppet Class


18

OSB / SOA Suite definitions


19

Domain & WLST definitions


20

Puppet Dashboard

Nodes

Add the main class


21

Node definition

Class parameters

Assign the main class


22

Auditing
23

Puppet Performance

• A Puppet Agent runs every XX minutes


• You don’t want a Puppet Agent to run for 10 minutes every XX minutes

Solution = WebLogic Facts

WLS Puppet module harvests all the available Oracle Middleware


information of the Node like:

• oraInst.loc
• OraInventory
• BEA Homelist
• BSU output
• OPatch output of every Oracle Home
• WebLogic domain configuration
24

Puppet Facts
25

Managing multiple Dev or Test


environments

• Use a big IF THEN ELSE statement


• Using Hiera -> key/value lookup tool for
configuration data
– Part of Puppet 3.0
– Solution for clean code
26

Hiera, how it works!!

• In the Puppet class use the hiera() $pass = hiera(‘password’)


function

node = server1
• Add a text file on a node which defines
the environment environment = test
– This is picked up by the Puppet Agent environmentnr = test1

• On the Puppet master define howto look ---


for values -> hiera.yaml :hierarchy:
- "%{::hostname}”
- "%{::environmentnr}”
• On the Puppet master look for the - "%{::environment}”
password key - common
– Server1.yaml
– Test1.yaml # test1.yaml (encryption)
– Test.yaml ---
– Common.yaml password: ”welcome1"
27

The Result

A fully configured running


Fusion Middleware Server
28

Next Steps

• Download the Learning Puppet VM image


– Get the VMware or the Oracle VirtualBox learning image http
://info.puppetlabs.com/download-learning-puppet-VM.html

• Configure your own Puppet Server


– Allowed the use the Puppet Enterprise and manage up to 10 nodes

• Install the WLS module


– Download from Puppet Forge http://forge.puppetlabs.com
– Clone from GitHub https://github.com/biemond/puppet

• Download your licensed / Developer Oracle software


– From Oracle Technology Network http://otn.oracle.com
– From EDelivery https://edelivery.oracle.com
29

From Puppet Forge

Use “puppet module install biemond-wls” on the Puppet Master


30

From GitHub

Use “git clone https://github.com/biemond/puppet.git” on the Puppet Master


31

Thanks

Questions?

Edwin Biemond
Architect
@biemond

https://github.com/biemond
http://biemond.blogspot.com
http://nl.linkedin.com/in/biemond

You might also like