MintPress - Oracle Fusion Middleware Infrastructure Automation Controller (oracle-fmwinfra)

Copyright 2014 © LimePoint Pty Ltd. All rights reserved.

Welcome to the MintPress Oracle Fusion Middleware Infrastructure automation controller.

This gem provides support for the installation, patching, and configuration of Oracle Fusion Middleware Infrastructure software and Weblogic domains.

Key Information (oracle-fmwinfra)

Name: oracle-fmwinfra
Minimum Supported Version (Oracle Weblogic + FMW): 12.2.1.3
Dependencies:
- Oracle Weblogic Automation Controller

MintPress::OracleFMWInfrastructure::Installation

The MintPress::OracleFMWInfrastructure::Installation object defines a Fusion Middleware Infrastructure Installation, which extends MintPress::OracleWeblogic::Installation. It inherits all the underlying methods from MintPress::OracleWeblogic::Installation and overrides any of those underlying methods where required.

For full details on these classes and methods, please refer to the relevant detailed documentation MintPress::OracleFMWInfrastructure and MintPress::OracleWeblogic.

Example: Usage of MintPress::OracleFMWInfrastructure

Please see Oracle Weblogic Automation Controller for details on examples of using the underlying MintPress::OracleWeblogic classes.

Create a new MintPress::OracleFMWInfrastructure::Installation

Create a new FMW Infrastructure installation as follows, assuming you have created all the required transports and hosts.


fmw_install_opts={
      version: '12.2.1.3',
      java_home: java_opts[:java_home],
      fmw_home: "/oracle/app/#{product}/fmw",
      inventory_location: "/oracle/app/#{product}/oraInventory",
      owner: 'oracle',
      group: 'oinstall',
      software_stage: "/oracle/stage/#{product}/12.2.1.3/fmw_12.2.1.3.0_infrastructure.jar",
      opatch_autoupdate_file: '/oracle/stage/OPatch/p28186730_139400_Generic.zip'
}

fmw_installation1=MintPress::OracleFMWInfrastructure::Installation.new(fmw_install_opts.merge(host: host1))
fmw_installation2=MintPress::OracleFMWInfrastructure::Installation.new(fmw_install_opts.merge(host: host2))

Apply patches to an MintPress::OracleFMWInfrastructure::Installation

Apply any patches as required.


# Apply Patches
patch_details={ aru: '28298734',
        stage: '/media/stage/fmwinfra/12.2.1.3/patches'
}
fmw_installation1.add_patch(patch_details)
fmw_installation2.add_patch(patch_details)

fmw_installation1.patches.each { | x | x.apply }
fmw_installation2.patches.each { | x | x.apply }

Create a new Fusion Middleware Infrastructure Domain MintPress::OracleWeblogic::Domain

You can create a new FMW Instructure domain the same way as you would create a normal Weblogic Domain.


domain_opts={Name: 'fmw_domain', AdminServerName: 'AdminServer', AdminUsername: 'weblogic', AdminPassword: admin_password, RootDirectory: "/oracle/app/#{product}/environments", installations: [fmw_installation1, fmw_installation2], templates: [ MintPress::OracleFMWInfrastructure::TemplateSet.new ]}
domain=MintPress::OracleWeblogic::Domain.new(domain_opts)

domain.add_machine(Name: "devsoaapp1.mintpress.io", 
                   NodeManager: { Name: "devsoaapp1.mintpress.io", Home: "#{domain.domainHome}/nodemanager", ListenAddress: "devsoaapp1.mintpress.io", ListenPort: 5561, UserName: 'weblogic', Password: admin_password, NMType: 'Plain'})
domain.add_machine(Name: "devsoaapp2.mintpress.io", 
                   NodeManager: { Name: "devsoaapp2.mintpress.io", Home: "#{domain.domainHome}/nodemanager", ListenAddress: "devsoaapp2.mintpress.io", ListenPort: 5561, UserName: 'weblogic', Password: admin_password, NMType: 'Plain'})

domain.add_server(Name: "fmw_server1")
domain.add_server(Name: "fmw_server2")

domain.servers['fmw_server1'].machine=domain.machines['devsoaapp1.mintpress.io']
domain.servers['fmw_server1'].listen_address = 'devsoaapp1.mintpress.io'
domain.servers['fmw_server1'].listen_port = 8011
domain.servers['fmw_server1'].ssl.enabled = true
domain.servers['fmw_server1'].ssl.listen_port = 8021

domain.servers['fmw_server2'].machine=domain.machines['devsoaapp2.mintpress.io']
domain.servers['fmw_server2'].listen_address = 'devsoaapp2.mintpress.io'
domain.servers['fmw_server2'].listen_port = 8011
domain.servers['fmw_server2'].ssl.enabled = true
domain.servers['fmw_server2'].ssl.listen_port = 8021

domain.add_cluster(Name: 'fmw_cluster')
domain.clusters['fmw_cluster'].servers=[domain.servers['fmw_server1'],domain.servers['fmw_server2']]

domain.admin_server.machine = domain.machines['devsoaapp1.mintpress.io']
domain.admin_server.listen_address = 'devsoaapp1.mintpress.io'
domain.admin_server.listen_port = 7011
domain.admin_server.ssl.enabled = true
domain.admin_server.ssl.listen_port = 7021
domain.admin_server.machine.nodemanager.home = "#{domain.domain_home}/nodemanager"

domain.app_home="/oracle/app/#{product}/environments/applications/#{domain.domain_name}"
domain.domain_home="/oracle/app/#{product}/environments/domains/#{domain.domain_name}"

Create a new Fusion Middleware Metadata Repository

Oracle Fusion Middleware Infrastructure domains require a MetadataRepository, as the JRF and EM templates are applied to FMW Infrastructure domains by default.

Use the following sample to create and associated a MetadataRepository to your weblogic domain.


rcu_opts={
  username: 'sys',
  sysdba_password: admin_password,
  schema_password: admin_password,
  listen_address: 'devsoadb.mintpress.io',
  listen_port: 1521,
  service_name: 'SOADB',
  schema_prefix: 'XFMW',
  components_list: ['OPSS','WLS','STB'],
  domain: domain
}
domain. = MintPress::OracleWeblogic::MetadataRepository.new(rcu_opts)

Select the Weblogic Domain Templates to your domain

Templates that are to be applied to a domain are applied through the MintPress::OracleFMWInfrastructure::TemplateSet and MintPress::OracleWeblogic::TemplateSet classes.


# The default template set which includes EM and JRF templates
domain.templates << MintPress::OracleFMWInfrastructure::TemplateSet.new
# or call the EM template directly
domain.templates << MintPress::OracleFMWInfrastructure::EMTemplate.new
# Or any other template as required
domain.templates << MintPress::OracleWeblogic::Template.new(name: "WebLogic Coherence Cluster Extension")

Configure the Fusion Middleware Domain

Use the standard methods for creating your Weblogic domains. Please refer to MintPress::OracleWeblogic classes for further details.


domain.configure_offline

License & Authors

  • Author:: LimePoint (support@limepoint.com)

# MintPress® - Automation and Configuration Management
#
# Copyright © 2014 LimePoint. All rights reserved.
#
# This program and its contents are confidential and owned by LimePoint.
# Only licenced users are permitted to access and use of this file.
# This program (or any part of it) may not be disclosed, copied or used
# except as expressly permitted in LimePoint’s End User Licence Agreement.
#
# LimePoint® and MintPress® are Registered Trademarks of LimePoint IP Limited.
# For more information contact LimePoint at http://www.limepoint.com