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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
|
# File 'manifests/tungstenvertica.pp', line 17
class tungsten::tungstenvertica (
$package = false,
$databaseName = false,
$password = "secret"
) inherits tungsten::tungstenvertica::params {
anchor{"tungsten::tungstenvertica::prereq": }
anchor{"tungsten::tungstenvertica::end": }
if $package == false {
# Do nothing
} else {
exec { "disable_transparent_hugepage_enabled":
command => "/bin/echo never > /sys/kernel/mm/transparent_hugepage/enabled",
unless => "/bin/grep -c '\[never\]' /sys/kernel/mm/transparent_hugepage/enabled 2>/dev/null",
} ->
exec { "enable_deadline_scheduler":
command => "/bin/echo deadline > /sys/block/sda/queue/scheduler",
unless => "/bin/grep -c '\[deadline\]' /sys/block/sda/queue/scheduler 2>/dev/null",
} ->
exec { "enable_readahead":
command => "/sbin/blockdev --setra 2048 /dev/sda1",
} ->
package {"mcelog":
ensure=>present
} ->
group { "verticadba":
ensure => present,
} ->
user { "dbadmin":
gid => 'verticadba',
shell => "/bin/bash",
ensure => present,
} ->
file { "/home/dbadmin":
path => '/home/dbadmin',
ensure => "directory",
owner => 'dbadmin',
group => 'verticadba',
} ->
Anchor["tungsten::tungstenvertica::prereq"] ->
file { "vertica-package" :
path => $package,
ensure => present
} ->
package { "vertica" :
source => $package,
provider => $tungsten::tungstenvertica::params::provider
} ~>
exec { 'install-vertica':
command => "/opt/vertica/sbin/install_vertica --hosts $fqdn -u dbadmin --failure-threshold HALT --license CE --accept-eula",
logoutput => "on_failure",
refreshonly => true,
} ->
service {"verticad":
ensure => "running",
enable => true
} ->
service {"vertica_agent":
ensure => "running",
enable => true
} ->
file { "/home/dbadmin/create-vertica-db":
ensure => file,
owner => 'dbadmin',
mode => 700,
content => template('tungsten/tungsten_create_vertica_db.erb'),
} ~>
exec { 'create-vertica-db':
command => "/bin/su -c /home/dbadmin/create-vertica-db - dbadmin",
logoutput => "on_failure",
creates => "/home/dbadmin/$databaseName"
} ->
Anchor["tungsten::tungstenvertica::end"]
}
}
|