Puppet Class: tungsten::tungstenmysql

Inherits:
tungsten::tungstenmysql::params
Defined in:
manifests/tungstenmysql.pp

Overview

Parameters:

  • masterUser (Any) (defaults to: $tungsten::tungstenmysql::params::masterUser)
  • masterPassword (Any) (defaults to: $tungsten::tungstenmysql::params::masterPassword)
  • overrideOptionsMysqld (Any) (defaults to: {})
  • overrideOptionsClient (Any) (defaults to: {})
  • overrideOptionsMysqldSafe (Any) (defaults to: {})
  • installMysql (Any) (defaults to: false)
  • mySQLBuild (Any) (defaults to: false)
  • mySQLVersion (Any) (defaults to: false)
  • disableSELinux (Any) (defaults to: true)
  • clusterData (Any) (defaults to: nil)
  • mySQLSetAutoIncrement (Any) (defaults to: false)
  • installXtrabackup (Any) (defaults to: true)
  • xtraBackupPackage (Any) (defaults to: 'auto')


17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
# File 'manifests/tungstenmysql.pp', line 17

class tungsten::tungstenmysql (
	$masterUser													= $tungsten::tungstenmysql::params::masterUser,
	$masterPassword											= $tungsten::tungstenmysql::params::masterPassword,
  $overrideOptionsMysqld 							= {},
  $overrideOptionsClient 							= {},
  $overrideOptionsMysqldSafe 					= {},
  $installMysql 											= false,
	$mySQLBuild											    = false,
	$mySQLVersion				   					    = false,
	$disableSELinux											= true,
	$clusterData												= nil,
	$mySQLSetAutoIncrement							= false,
	$installXtrabackup								  = true,
	$xtraBackupPackage 									= 'auto'
) inherits tungsten::tungstenmysql::params  {

  if $installMysql == true {

		if $mySQLSetAutoIncrement == true {
			 $autoInc=getMySQLAutoIncrementIncrement($clusterData)
			 $autoOffset=getMySQLAutoIncrementOffset($clusterData, $::fqdn)
			 $autoSettings={'auto_increment_increment'=>$autoInc,'auto_increment_offset'=>$autoOffset}
			 $tmpOverrideOptionsMysqld=merge($overrideOptionsMysqld,$autoSettings)
			 $fullOverrideOptionsMysqld=merge($tungsten::tungstenmysql::params::baseOverrideOptionsMysqld,$tmpOverrideOptionsMysqld)
		}else {
    	$fullOverrideOptionsMysqld=merge($tungsten::tungstenmysql::params::baseOverrideOptionsMysqld,$overrideOptionsMysqld)
		}

    $fullOverrideOptionsClient=merge($tungsten::tungstenmysql::params::baseOverrideOptionsClient,$overrideOptionsClient)
    $fullOverrideOptionsMysqldSafe=merge($tungsten::tungstenmysql::params::baseOverrideOptionsMysqldSafe,$overrideOptionsMysqldSafe)

		class { 'tungsten::tungstenmysql::centos7dirs' : } ->
    class { 'tungsten::tungstenmysql::tungstenrepo' :
					mySQLBuild				 => $mySQLBuild,
					mySQLVersion			 => $mySQLVersion
		}->
    class { 'mysql::server' :
      package_name => getMySQLPackageName('server',$mySQLBuild,$mySQLVersion),
      service_name => getMySQLServiceName($mySQLBuild,$mySQLVersion),
      root_password => $tungsten::tungstenmysql::params::masterPassword,
      config_file => $tungsten::tungstenmysql::params::configFileName,
      override_options => {
      'mysqld'       =>  $fullOverrideOptionsMysqld,
      'mysqld_safe'  =>  $fullOverrideOptionsMysqldSafe,
      'client'       =>  $fullOverrideOptionsClient},
      restart => true,
    } ->
		class { 'tungsten::tungstenmysql::xtrabackup' :
							installXtrabackup => $installXtrabackup ,
							mySQLBuild				 => $mySQLBuild,
						  xtraBackupPackage  => $xtraBackupPackage }

    User <| title == "tungsten::systemUser" |> { groups +> "mysql" }
  }
}