Indice de Instalación de Sharepoint 2016
Ingresar al Application Server “Custom” con una cuenta con privilegios de sysadmin sobre el SQL Server. Mi recomendación es ingresar con la cuenta de Farm para evitar problemas futuros.
Prueba la conexión al SQL Server, mediante un archivo .udl https://blogs.technet.microsoft.com/michaelgriswold/2014/01/06/the-easy-way-to-test-sql-connectivity/
Ejecuta una consola de PowerShell_ISE como ADMINISTRADOR
%windir%\system32\WindowsPowerShell\v1.0\PowerShell_ISE.exe
Recomendacion: agregar un break al inicio, e ir step by step ejecutando el script, así valida los valores en ejecución. En amarrillo algunas secciones importantes del script.
Para este script se definieron 3 cuentas de servicios, durante pasos posteriores se irán definiendo otras cuentas de servicio (Sharepoint SuperReader, Sharepoint SuperUser, Sharepoint Search Services, Sharepoint Claim-Kerberos, etc ):
- svcspfarm: Sharepoint Server Farm Account, cuenta de identidad para el timer y central administration
- svcspwapp: Sharepoint Web Application Account, cuenta de identidad para ejecutar los application pools del IIS
- svcspsvcapps: Sharepoint Services Apps Account, cuenta de identidad para ejecutar los applications pools de los servicios.
Estas cuentas deben tener las siguientes local policies configuradas en cada servidor:
- Adjust memory quotas for a process
- Allow log on locally
- Impersonate a client after authentication
- Log on as a batch job
- Log on as a service
- Replace a process level token
Cuando te lance la pantalla de configuración de alias (x86, x64), habilita todos los protocolos
Descargar Script (validen los datos, tales como Host de SQL Server, cuentas, etc)
############################################################ # Crear un farm de SharePoint 2016 # Creado por Christian Azcon ############################################################ $ver = $host | select version if ($ver.Version.Major -gt 1) {$Host.Runspace.ThreadOptions = "ReuseThread"} Add-PsSnapin Microsoft.SharePoint.PowerShell ######################################## # Defino Settings # ######################################## #SQL Alias $AliasName = "SQLSP2016" # Cambia el nombre por el del SQL--> FQDN $ServerName = "HostNameSQLServer.contoso.net" $configPassphrase = 'SeguridadFraseSharepoint2016' # Service accounts $DOMAIN = "CONTOSO" Write-Output "Defino las cuentas de usuario" $accounts = @{} $accounts.Add("svcspfarm", @{"username" = "svcspfarm"; "password" = 'xxxxxxxxxxx'}) $accounts.Add("svcspwapp", @{"username" = "svcspwapp"; "password" = 'xxxxxxxxxxx'}) $accounts.Add("svcspsvcapps", @{"username" = "svcspsvcapps"; "password" = 'xxxxxxxxxxx'}) Foreach ($account in $accounts.keys) { $accounts.$account.Add("credential", (New-Object System.Management.Automation.PSCredential ($DOMAIN + "\" + $accounts.$account.username), (ConvertTo-SecureString -String $accounts.$account.password -AsPlainText -Force))) } Write-Output "Se inician las cuentas de usuario" ######################################## # Creo the SQL Alias ######################################## $x86 = "HKLM:\Software\Microsoft\MSSQLServer\Client\ConnectTo" $x64 = "HKLM:\Software\Wow6432Node\Microsoft\MSSQLServer\Client\ConnectTo" #Verifico si la clave ConnectTo ya existe, y la creo en caso contrario if ((test-path -path $x86) -ne $True) { write-host "$x86 no existe" New-Item $x86 } if ((test-path -path $x64) -ne $True) { write-host "$x64 no existe" New-Item $x64 } #Defino el tipo de alias $TCPAlias = ("DBMSSOCN," + $ServerName) #Creo el TCP/IP Aliases Write-Output "Creo los registros para el alias" New-ItemProperty -Path $x86 -Name $AliasName -PropertyType String -Value $TCPAlias New-ItemProperty -Path $x64 -Name $AliasName -PropertyType String -Value $TCPAlias Write-Output "Se crearon los alias" # Abro cliconfig para verificar el alias Start-Process C:\Windows\System32\cliconfg.exe Start-Process C:\Windows\SysWOW64\cliconfg.exe # 30 segundos para habilitar protocolos Write-Output "Habilite los protocolos en cliconfig" Start-Sleep -s 30 ######################################## # Inicio la configuracion de la granja ######################################## Write-Output "Inicio la configuracion de la granja" # Farm configuration $s_configPassphrase = (ConvertTo-SecureString -String $configPassphrase -AsPlainText -force) $serverDB = $AliasName $dbConfig = "Sharepoint_Configuration" $dbCentralAdmin = "Sharepoint_Content_CA" $caPort = 9191 $caAuthProvider = "NTLM" ######################################## # Creo la granja ######################################## Write-Output "Creando la base de configuracion $dbConfig" # Es recomendable que el front end tenga el host de distributed cache, por ello uso -skipRegisterAsDistributedCachehost $True New-SPConfigurationDatabase -DatabaseName $dbConfig -DatabaseServer $serverDB -AdministrationContentDatabaseName $dbCentralAdmin -Passphrase $s_configPassphrase -FarmCredentials $accounts.svcspfarm.credential -skipRegisterAsDistributedCachehost $True -LocalServerRole Custom # Verifico que la granja existe y esta corriendo. Si no, termino el script $farm = Get-SPFarm if (!$farm -or $farm.Status -ne "Online") { Write-Output "La Farm no se creo o no esta ejecutandose. Fin del script. Revise los logs en la carpeta Temp" exit } Write-Output "Creando el site de Central Administration en el puerto $caPort" New-SPCentralAdministration -Port $caPort -WindowsAuthProvider $caAuthProvider Write-Output "Se creo correctamente el Central Administration" ######################################## # Ejecuto tareas de configuracion de wizard ######################################## Write-Output "Instalando Help Collections" Install-SPHelpCollection -All Write-Output "Inicializando security" Initialize-SPResourceSecurity Write-Output "Instalando services" Install-SPService Write-Output "Registrando features" Install-SPFeature -AllExistingFeatures Write-Output "Instalando Application Content" Install-SPApplicationContent ######################################## # Add managed accounts ######################################## Write-Output "Creando managed accounts ..." #New-SPManagedAccount -credential $accounts.svcspfarm.credential Ya se agrega sola cuando se crea la granja New-SPManagedAccount -credential $accounts.svcspwapp.credential New-SPManagedAccount -credential $accounts.svcspsvcapps.credential ######################################## #Start Central Administration ######################################## Write-Output "Iniciando Central Administration..." & 'C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\BIN\psconfigui.exe' -cmd showcentraladmin ######################################## #Verifico el farm ######################################## Write-Output "Verifico la version del farm" (get-spfarm).buildversion Write-Output "Se completo el build del Farm correctamente!!!." |
No hay comentarios:
Publicar un comentario