| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194 |
- node 'wcdb' {
- include wcdb_os
- include wcdb_11g
- include wcdb_maintenance
- }
- # operating settings for Database & Middleware
- class wcdb_os {
- service { iptables:
- enable => false,
- ensure => false,
- hasstatus => true,
- }
- $groups = ['oinstall','dba' ,'oper' ]
- group { $groups :
- ensure => present,
- }
- user { 'oracle' :
- ensure => present,
- uid => 500,
- gid => 'oinstall',
- groups => $groups,
- shell => '/bin/bash',
- password => '$1$DSJ51vh6$4XzzwyIOk6Bi/54kglGk3.',
- home => "/home/oracle",
- comment => "This user oracle was created by Puppet",
- require => Group[$groups],
- managehome => true,
- }
- $install = [ 'binutils.x86_64', 'compat-libstdc++-33.x86_64', 'glibc.x86_64','ksh.x86_64','libaio.x86_64',
- 'libgcc.x86_64', 'libstdc++.x86_64', 'make.x86_64','compat-libcap1.x86_64', 'gcc.x86_64',
- 'gcc-c++.x86_64','glibc-devel.x86_64','libaio-devel.x86_64','libstdc++-devel.x86_64',
- 'sysstat.x86_64','unixODBC-devel','glibc.i686','libXext.i686','libXtst.i686']
-
- package { $install:
- ensure => present,
- }
- class { 'limits':
- config => {
- '*' => { 'nofile' => { soft => '2048' , hard => '8192', },},
- 'oracle' => { 'nofile' => { soft => '65536' , hard => '65536', },
- 'nproc' => { soft => '2048' , hard => '16384', },
- 'stack' => { soft => '10240' ,},},
- },
- use_hiera => false,
- }
-
- # sysctl { 'kernel.msgmnb': ensure => 'present', permanent => 'yes', value => '65536',}
- # sysctl { 'kernel.msgmax': ensure => 'present', permanent => 'yes', value => '65536',}
- # sysctl { 'kernel.shmmax': ensure => 'present', permanent => 'yes', value => '2588483584',}
- # sysctl { 'kernel.shmall': ensure => 'present', permanent => 'yes', value => '2097152',}
- # sysctl { 'fs.file-max': ensure => 'present', permanent => 'yes', value => '6815744',}
- # sysctl { 'net.ipv4.tcp_keepalive_time': ensure => 'present', permanent => 'yes', value => '1800',}
- # sysctl { 'net.ipv4.tcp_keepalive_intvl': ensure => 'present', permanent => 'yes', value => '30',}
- # sysctl { 'net.ipv4.tcp_keepalive_probes': ensure => 'present', permanent => 'yes', value => '5',}
- # sysctl { 'net.ipv4.tcp_fin_timeout': ensure => 'present', permanent => 'yes', value => '30',}
- # sysctl { 'kernel.shmmni': ensure => 'present', permanent => 'yes', value => '4096', }
- # sysctl { 'fs.aio-max-nr': ensure => 'present', permanent => 'yes', value => '1048576',}
- # sysctl { 'kernel.sem': ensure => 'present', permanent => 'yes', value => '250 32000 100 128',}
- # sysctl { 'net.ipv4.ip_local_port_range': ensure => 'present', permanent => 'yes', value => '9000 65500',}
- # sysctl { 'net.core.rmem_default': ensure => 'present', permanent => 'yes', value => '262144',}
- # sysctl { 'net.core.rmem_max': ensure => 'present', permanent => 'yes', value => '4194304', }
- # sysctl { 'net.core.wmem_default': ensure => 'present', permanent => 'yes', value => '262144',}
- # sysctl { 'net.core.wmem_max': ensure => 'present', permanent => 'yes', value => '1048576',}
- }
- class wcdb_11g {
- require wcdb_os
- oradb::installdb{ '11.2_linux-x64':
- version => '11.2.0.4',
- file => 'p13390677_112040_Linux-x86-64',
- databaseType => 'SE',
- oracleBase => hiera('oracle_base_dir'),
- oracleHome => hiera('oracle_home_dir'),
- userBaseDir => '/home',
- createUser => false,
- user => 'oracle',
- group => 'dba',
- group_install => 'oinstall',
- group_oper => 'oper',
- downloadDir => hiera('oracle_download_dir'),
- remoteFile => false,
- puppetDownloadMntPoint => hiera('oracle_source'),
- }
- oradb::net{ 'config net8':
- oracleHome => hiera('oracle_home_dir'),
- version => hiera('oracle_version'),
- user => hiera('oracle_os_user'),
- group => hiera('oracle_os_group'),
- downloadDir => hiera('oracle_download_dir'),
- require => Oradb::Installdb['11.2_linux-x64'],
- }
- oradb::listener{'start listener':
- oracleBase => hiera('oracle_base_dir'),
- oracleHome => hiera('oracle_home_dir'),
- user => hiera('oracle_os_user'),
- group => hiera('oracle_os_group'),
- action => 'start',
- require => Oradb::Net['config net8'],
- }
- oradb::database{ 'wcDb':
- oracleBase => hiera('oracle_base_dir'),
- oracleHome => hiera('oracle_home_dir'),
- version => hiera('oracle_version'),
- user => hiera('oracle_os_user'),
- group => hiera('oracle_os_group'),
- downloadDir => hiera('oracle_download_dir'),
- action => 'create',
- dbName => hiera('oracle_database_name'),
- dbDomain => hiera('oracle_database_domain_name'),
- sysPassword => hiera('oracle_database_sys_password'),
- systemPassword => hiera('oracle_database_system_password'),
- dataFileDestination => "/oracle/oradata",
- recoveryAreaDestination => "/oracle/flash_recovery_area",
- characterSet => "AL32UTF8",
- nationalCharacterSet => "UTF8",
- initParams => "open_cursors=1000,processes=600,job_queue_processes=4",
- sampleSchema => 'FALSE',
- memoryPercentage => "40",
- memoryTotal => "800",
- databaseType => "MULTIPURPOSE",
- require => Oradb::Listener['start listener'],
- }
- oradb::dbactions{ 'start wcDb':
- oracleHome => hiera('oracle_home_dir'),
- user => hiera('oracle_os_user'),
- group => hiera('oracle_os_group'),
- action => 'start',
- dbName => hiera('oracle_database_name'),
- require => Oradb::Database['wcDb'],
- }
- oradb::autostartdatabase{ 'autostart oracle':
- oracleHome => hiera('oracle_home_dir'),
- user => hiera('oracle_os_user'),
- dbName => hiera('oracle_database_name'),
- require => Oradb::Dbactions['start wcDb'],
- }
- oradb::rcu{ 'DEV':
- rcuFile => 'ofm_rcu_linux_11.1.1.8.0_64_disk1_1of1.zip',
- version => '11.1.1.8',
- product => 'webcenter',
- oracleHome => hiera('oracle_home_dir'),
- user => hiera('oracle_os_user'),
- group => hiera('oracle_os_group'),
- downloadDir => hiera('oracle_download_dir'),
- action => 'create',
- dbServer => 'wcdb.example.com:1521',
- dbService => hiera('oracle_database_service_name'),
- sysPassword => hiera('oracle_database_sys_password'),
- schemaPrefix => 'DEV',
- reposPassword => hiera('oracle_database_rcu_password'),
- tempTablespace => 'TEMP',
- puppetDownloadMntPoint => hiera('oracle_source'),
- remoteFile => false,
- logoutput => true,
- require => Oradb::Dbactions['start wcDb'],
- }
- }
- class wcdb_maintenance {
- require wcdb_11g
- $mtimeParam = "1"
- cron { 'oracle_db_opatch' :
- command => "find /oracle/product/11.2/db/cfgtoollogs/opatch -name 'opatch*.log' -mtime ${mtimeParam} -exec rm {} \\; >> /tmp/opatch_db_purge.log 2>&1",
- user => oracle,
- hour => 06,
- minute => 34,
- }
-
- cron { 'oracle_db_lsinv' :
- command => "find /oracle/product/11.2/db/cfgtoollogs/opatch/lsinv -name 'lsinventory*.txt' -mtime ${mtimeParam} -exec rm {} \\; >> /tmp/opatch_lsinv_db_purge.log 2>&1",
- user => oracle,
- hour => 06,
- minute => 32,
- }
- }
|