Overview

Installs and configures Oracle grid.

This defined class supports the following versions of grid:

  • 11.2.0.4
  • 12.1.0.1
  • 12.1.0.2
  • 12.2.0.1

Here is an example on how to use this:

ora_install::installasm{ 'db_linux-x64':
  version                   => hiera('db_version'),
  file                      => hiera('asm_file'),
  grid_type                 => 'HA_CONFIG',
  grid_base                 => hiera('grid_base_dir'),
  grid_home                 => hiera('grid_home_dir'),
  ora_inventory_dir         => hiera('oraInventory_dir'),
  user_base_dir             => '/home',
  user                      => hiera('grid_os_user'),
  group                     => 'asmdba',
  group_install             => 'oinstall',
  group_oper                => 'asmoper',
  group_asm                 => 'asmadmin',
  sys_asm_password          => 'Welcome01',
  asm_monitor_password      => 'Welcome01',
  asm_diskgroup             => 'DATA',
  disk_discovery_string     => "/nfs_client/asm*",
  disks                     => "/nfs_client/asm_sda_nfs_b1,/nfs_client/asm_sda_nfs_b2",
  # disk_discovery_string   => "ORCL:*",
  # disks                   => "ORCL:DISK1,ORCL:DISK2",
  disk_redundancy           => "EXTERNAL",
  download_dir              => hiera('oracle_download_dir'),
  remote_file               => false,
  puppet_download_mnt_point => hiera('oracle_source'),
}

Attributes

Attribute Name Short Description
asm_diskgroup The name of the ASM diskgroup to use.
asm_monitor_password The password for the ASMSNMP user for monitoring in EM.
bash_profile Create a bash profile for the specified user or not.
cluster_name The name of the cluster.
cluster_nodes The names of the nodes in the RAC cluster.
configure_afd Specify whether or not to configure ASM Filter Driver instead of ASMLib.
disk_au_size The disk_au size to use for the ASM disks.
disk_discovery_string The search string to use for discovering disks for ASM.
disk_redundancy The type of redundancy to use.
disks List of disks to create a ASM DiskGroup.
disks_failgroup_names A comma seperated list of device and failure group name.
download_dir The directory where the Puppet software puts all downloaded files.
file The source file to use.
grid_base The directory to use as grid base.
grid_home The directory to use as grid home.
grid_type The type of grid.
group The os group to use for these Oracle puppet definitions.
group_asm The OS group to use.
group_install The os group to use for installation.
group_oper The OS group to allow ASM oper operations.
logoutput log the outputs of Puppet exec or not.
network_interface_list The list of interfaces to use for RAC.
ora_inventory_dir The directory that contains the oracle inventory.
puppet_download_mnt_point The base path of all remote files for the defined type or class.
remote_file This parameter is not being used anymore and will be removed in a future release.
scan_name The name to use for the SCAN service.
scan_port The IP portnumber to use for the SCAN service.
stand_alone Configuring Grid Infrastructure for a Stand-Alone Server.
storage_option The type of storage to use.
sys_asm_password The password to use for the SYSASM user.
temp_dir Directory to use for temporary files.
user The user used for the specified installation.
user_base_dir The directory to use as base directory for the users.
version The version that is installed in the used Oracle home.
zip_extract The specified source file is a zip file that needs te be extracted.

asm_diskgroup

The name of the ASM diskgroup to use.

DATA

Type: String[1]

Default:'DATA'

Back to overview of installasm

asm_monitor_password

The password for the ASMSNMP user for monitoring in EM.

Type: String[1]

Default:'Welcome01'

Back to overview of installasm

cluster_name

The name of the cluster.

Type: Optional[String[1]]

Default:undef

Back to overview of installasm

cluster_nodes

The names of the nodes in the RAC cluster.

Valid values are:

  • node1:node1-vip,node2:node2-vip (version >= 11 <= 12.1)
  • node1:node1-vip:HUB,node2:node2-vip:LEAF (version >= 12.1 Flex Cluster)
  • node1,node2 (version = 12.2 Application Cluster)
  • node1:node1-vip:HUB:site1,node2:node2-vip:HUB:site2 (version = 12.2 Extended Cluster)

Type: Optional[String[1]]

Default:undef

Back to overview of installasm

configure_afd

Specify whether or not to configure ASM Filter Driver instead of ASMLib.

The default value is: false

Type: Optional[Boolean]

Default:false

Back to overview of installasm

disk_au_size

The disk_au size to use for the ASM disks. Attention this is a String value not an Integer.

The default value is: 1

Type: Enum['1','2','4','8','16','32','64']

Default:'1'

Back to overview of installasm

disk_discovery_string

The search string to use for discovering disks for ASM.

Type: Optional[String[1]]

Default:undef

Back to overview of installasm

disk_redundancy

The type of redundancy to use.

Valid values are:

  • NORMAL
  • HIGH
  • EXTERNAL

The default value is: NORMAL

Type: Enum['NORMAL','HIGH','EXTERNAL']

Default:'NORMAL'

Back to overview of installasm

disks_failgroup_names

A comma seperated list of device and failure group name.

Valid values are:

  • /dev/sdb,CRSFG1,/dev/sdc,CRSFG2,/dev/sdd,CRSFG3 (NORMAL redundancy)
  • /dev/sdb,,/dev/sdc,,/dev/sdd,,/dev/sde, (EXTERNAL redundancy)
  • /dev/sdb,CRSFG1,/dev/sdc,CRSFG2,/dev/sdd,CRSFG3,/dev/sde,CRSFG4,/dev/sdf,CRSFG5 (HIGH redundancy)

Type: Optional[String[1]]

Default:undef

Back to overview of installasm

bash_profile

Create a bash profile for the specified user or not.

Valid values are true and false.

When you specify a true for the parameter, Puppet will create a standard bash profile for the specified user. The bash profile will be placed in a directory named user_base_dir/user.

ora_install::client { 'Oracle client':
  ...
  bash_profile  => true,
  user          => 'oracle',
  user_base_dir => '/home',
  ...
}

This snippet will create a bash profile called /home/oracle/.bash_profile.

Type: Boolean

Default:true

Back to overview of installasm

disks

List of disks to create a ASM DiskGroup.

Type: Optional[String[1]]

Default:undef

Back to overview of installasm

download_dir

The directory where the Puppet software puts all downloaded files.

Before Puppet can actually use remote files, they must be downloaded first. Puppet uses this directory to put all files in.

The default value is: /install

Type: Stdlib::Absolutepath

Default:'/install'

Back to overview of installasm

file

The source file to use.

Type: String[1]

Default:undef

Back to overview of installasm

grid_base

The directory to use as grid base.

Type: Stdlib::Absolutepath

Default:undef

Back to overview of installasm

grid_home

The directory to use as grid home.

Type: Stdlib::Absolutepath

Default:undef

Back to overview of installasm

grid_type

The type of grid.

Valid values are:

  • HA_CONFIG
  • CRS_CONFIG
  • HA_SWONLY (versions > 11)
  • UPGRADE
  • CRS_SWONLY

The default value is: HA_CONFIG

Type: Enum['CRS_CONFIG','HA_CONFIG','UPGRADE','CRS_SWONLY','HA_SWONLY']

Default:'HA_CONFIG'

Back to overview of installasm

group

The os group to use for these Oracle puppet definitions.

The default value is: dba

Type: String[1]

Default:'asmdba'

Back to overview of installasm

group_asm

The OS group to use.

The default value is: asmdba

Type: String[1]

Default:'asmadmin'

Back to overview of installasm

group_install

The os group to use for installation.

The default value is: oinstall

Type: String[1]

Default:'oinstall'

Back to overview of installasm

group_oper

The OS group to allow ASM oper operations.

The default value is: asmoper

Type: String[1]

Default:'asmoper'

Back to overview of installasm

logoutput

log the outputs of Puppet exec or not.

When you specify true Puppet will log all output of exec types.

Valid values are:

  • true
  • false
  • on_failure

Type: Variant[Boolean,Enum['on_failure']]

Default:lookup({name => 'logoutput', default_value => 'on_failure'})

Back to overview of installasm

network_interface_list

The list of interfaces to use for RAC.

The value should be a comma separated strings where each string is as shown below

InterfaceName:SubnetAddress:InterfaceType

where InterfaceType can be either “1”, “2”, or “3” (1 indicates public, 2 indicates private, and 3 indicates the interface is not used)

An example on how to use this:

installasm{'asm12':
  ...
  network_interface_list => 'eth0:140.87.24.0:1,eth1:10.2.1.0:2,eth2:140.87.52.0:3'
  ...
}

Type: Optional[String[1]]

Default:undef

Back to overview of installasm

ora_inventory_dir

The directory that contains the oracle inventory.

The default value is: /oracle_base/oraInventory

Type: Optional[Stdlib::Absolutepath]

Default:undef

Back to overview of installasm

puppet_download_mnt_point

The base path of all remote files for the defined type or class.

The default value is: puppet:///modules/ora_install

Type: Optional[String[1]]

Default:undef

Back to overview of installasm

remote_file

DEPRECATED This parameter is not being used anymore and will be removed in a future release.

true.

Type: Optional[Boolean]

Default:undef

Back to overview of installasm

scan_name

The name to use for the SCAN service.

Type: Optional[String[1]]

Default:undef

Back to overview of installasm

scan_port

The IP portnumber to use for the SCAN service.

Type: Optional[Integer]

Default:undef

Back to overview of installasm

stand_alone

Configuring Grid Infrastructure for a Stand-Alone Server.

The default value is: true

Type: Boolean

Default:true

Back to overview of installasm

storage_option

The type of storage to use.

Valid values are:

  • ASM_STORAGE (versions = 11)
  • FILE_SYSTEM_STORAGE (versions <= 12.1)
  • LOCAL_ASM_STORAGE (versions >= 12.1)
  • CLIENT_ASM_STORAGE (versions >= 12.2)
  • FLEX_ASM_STORAGE (versions >= 12.1)

Type: Optional[Enum['FLEX_ASM_STORAGE','CLIENT_ASM_STORAGE','LOCAL_ASM_STORAGE','FILE_SYSTEM_STORAGE','ASM_STORAGE']]

Default:undef

Back to overview of installasm

sys_asm_password

The password to use for the SYSASM user.

Type: String[1]

Default:'Welcome01'

Back to overview of installasm

temp_dir

Directory to use for temporary files.

Type: Stdlib::Absolutepath

Default:'/tmp'

Back to overview of installasm

user

The user used for the specified installation. The install class will not create the user for you. You must do that yourself.

The default value is: oracle

Type: String[1]

Default:'grid'

Back to overview of installasm

user_base_dir

The directory to use as base directory for the users.

Type: Stdlib::Absolutepath

Default:'/home'

Back to overview of installasm

version

The version that is installed in the used Oracle home.

Puppet uses this value to decide on version specific actions.

Type: Enum['18.0.0.0','12.2.0.1','12.1.0.1','12.1.0.2','11.2.0.4']

Default:undef

Back to overview of installasm

zip_extract

The specified source file is a zip file that needs te be extracted. When you specify a value of false, the source attribute must contain a reference to a directory instead of a zip file.

The default value is: true

Type: Boolean

Default:true

Back to overview of installasm