ag
This commit is contained in:
parent
0e8aaa1692
commit
9f9f651779
107
modules/ag_sqlserver/manifests/init.pp
Normal file
107
modules/ag_sqlserver/manifests/init.pp
Normal file
@ -0,0 +1,107 @@
|
|||||||
|
####
|
||||||
|
# Class: sqlserver_2014
|
||||||
|
# Description: Installing SQL server and its prerequisites and configuration
|
||||||
|
# Customer: Freshfields Bruckhaus Deringer
|
||||||
|
# Author: WM Promus
|
||||||
|
# Date: April 2018
|
||||||
|
###
|
||||||
|
|
||||||
|
class ag_sqlserver (
|
||||||
|
String $sourcelocation = '\\\\freshfields\\dfs\\FCL\\SQLServerSharedRepository\\INSTALLMEDIA\\SQL 2014\\SQL 2014 - Standard',
|
||||||
|
String $windowssourcelocation = '\\\\freshfields\\dfs\\FCL\\ISO\\Microsoft\\WINDOWS_SERVER_2012R2\\ISO_X19-82891\\sources\\sxs',
|
||||||
|
String $sqlserverinstancename = 'MSSQLSERVER',
|
||||||
|
String $sqlserveradminaccount = 'sa',
|
||||||
|
String $sqlserveradminpassword = 'Passw0rd1',
|
||||||
|
String $sqlserversecuritymode = 'SQL',
|
||||||
|
Array $sqlserverfeatures = ['SQLEngine'],
|
||||||
|
String $sqlserverinstancefolder = 'C:\\Program Files\\Microsoft SQL Server',
|
||||||
|
String $sqlserverdatafolder = 'E:\\SQLData',
|
||||||
|
String $sqlserverlogfolder = 'F:\\SQLLog',
|
||||||
|
String $sqlservertempdbfolder = 'G:\\TempDB',
|
||||||
|
String $sqlserverbackupfolder = 'E:\\SQLBackup',
|
||||||
|
) {
|
||||||
|
|
||||||
|
############################################################################
|
||||||
|
# Installing SQL Server pre-requisites #
|
||||||
|
############################################################################
|
||||||
|
|
||||||
|
include chocolatey
|
||||||
|
|
||||||
|
reboot { 'reboot_powershell':
|
||||||
|
when => pending,
|
||||||
|
timeout => 15,
|
||||||
|
}
|
||||||
|
package { 'dotnet4.5':
|
||||||
|
ensure => latest,
|
||||||
|
provider => 'chocolatey',
|
||||||
|
}
|
||||||
|
package { 'powershell':
|
||||||
|
ensure => installed,
|
||||||
|
provider => 'chocolatey',
|
||||||
|
require => Package['dotnet4.5'],
|
||||||
|
notify => Reboot['reboot_powershell'],
|
||||||
|
}
|
||||||
|
package { 'sql2014-powershell':
|
||||||
|
ensure => installed,
|
||||||
|
provider => 'chocolatey',
|
||||||
|
require => Package['powershell'],
|
||||||
|
}
|
||||||
|
dsc_windowsfeature { 'NET Framework 3.5':
|
||||||
|
dsc_ensure => 'present',
|
||||||
|
dsc_name => 'NET-Framework-Features',
|
||||||
|
dsc_source => $windowssourcelocation,
|
||||||
|
require => Package['powershell'],
|
||||||
|
}
|
||||||
|
############################################################################
|
||||||
|
# Installing and configuring SQL Server #
|
||||||
|
############################################################################
|
||||||
|
|
||||||
|
file { 'C:\\MSSQLSERVER':
|
||||||
|
ensure => directory,
|
||||||
|
}
|
||||||
|
-> file { $sqlserverinstancefolder:
|
||||||
|
ensure => directory,
|
||||||
|
}
|
||||||
|
-> file { $sqlserverdatafolder:
|
||||||
|
ensure => directory,
|
||||||
|
}
|
||||||
|
-> file { $sqlserverlogfolder:
|
||||||
|
ensure => directory,
|
||||||
|
}
|
||||||
|
-> file { $sqlservertempdbfolder:
|
||||||
|
ensure => directory,
|
||||||
|
}
|
||||||
|
-> file { $sqlserverbackupfolder:
|
||||||
|
ensure => directory,
|
||||||
|
}
|
||||||
|
-> sqlserver_instance { $sqlserverinstancename:
|
||||||
|
source => $sourcelocation,
|
||||||
|
windows_feature_source => $windowssourcelocation,
|
||||||
|
features => $sqlserverfeatures,
|
||||||
|
security_mode => $sqlserversecuritymode,
|
||||||
|
sa_pwd => $sqlserveradminpassword,
|
||||||
|
#sql_sysadmin_accounts => $sqlserversysadminaccounts,
|
||||||
|
sql_sysadmin_accounts => [$facts['id'], "007"],
|
||||||
|
install_switches => {
|
||||||
|
'TCPENABLED' => 1,
|
||||||
|
'SQLBACKUPDIR' => $sqlserverbackupfolder,
|
||||||
|
'SQLTEMPDBDIR' => $sqlservertempdbfolder,
|
||||||
|
'INSTALLSQLDATADIR' => $sqlserverdatafolder,
|
||||||
|
'INSTANCEDIR' => $sqlserverinstancefolder,
|
||||||
|
'INSTALLSHAREDDIR' => $sqlserverinstancefolder,
|
||||||
|
'INSTALLSHAREDWOWDIR' => 'C:\\Program Files (x86)\\Microsoft SQL Server',
|
||||||
|
},
|
||||||
|
require => Dsc_windowsfeature['NET Framework 3.5'],
|
||||||
|
}
|
||||||
|
-> sqlserver::config { $sqlserverinstancename:
|
||||||
|
admin_login_type => 'SQL_LOGIN',
|
||||||
|
admin_user => $sqlserveradminaccount,
|
||||||
|
admin_pass => $sqlserveradminpassword,
|
||||||
|
}
|
||||||
|
#->
|
||||||
|
#sqlserver::login{ $sqlserveruser:
|
||||||
|
# instance => $sqlserverinstancename,
|
||||||
|
# password => $sqlserveruserpassword,
|
||||||
|
#}
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user