Quantcast
Channel: AutoSPInstaller
Viewing all 2279 articles
Browse latest View live

Updated Wiki: Home

$
0
0

Project Description
Automated SharePoint 2010/2013 PowerShell-based installation script.

Introducing AutoSPInstaller v3 with numerous enhancements including:

  • Granular SQL server assignment and aliasing for (almost) every service/web app (for control freaks)
  • Centralized, remote installation to all farm servers
  • Ability to specify any XML input file, by passing it as an argument to AutoSPInstallerLaunch.bat
  • Several tweaks & fixes
  • Experimental support for SharePoint Foundation 2013 (as of 3.98 release)

AutoSPInstaller works with SharePoint 2013 (including SP1) and SharePoint 2010 with Service Pack 1 & 2. It takes advantage of some of the cmdlet updates in the newer SharePoint releases, while remaining largely backward-compatible older versions.

Newer versions often include updates to the input file XML schema, so make sure you compare any of your existing XML files to the newest AutoSPInstallerInput.XML. See below for highlights of changes in v3.x.

AutoSPInstaller has been used as the go-to SharePoint installation method for hundreds of SharePoint practitioners & partners worldwide! If you or your organization find AutoSPInstaller useful, making a donation (any amount) is a great way to support the ongoing development & improvement of the project.

Donate to AutoSPInstaller!

Be sure to check out the new AutoSPInstaller Online - it's AutoSPInstallerGUI in a browser (& on steroids!)

New! Frequently Asked Questions

This project consists of PowerShell scripts, an XML input file, and a standard windows batch file (to kick off the process) which together provide a quick and near-unattended installation and initial configuration (Service Apps, My Sites) of Microsoft SharePoint Server 2010/2013. Works on Windows 2008 (though I hardly test on that OS these days), 2008 R2 and Windows 2012 / 2012 R2 (x64 only of course).

Perfect for repeated Virtual Machine-based installs/tear-downs, etc., but also great for production installs where you want to guarantee consistency and minimize data entry glitches. The immediate value is for installing and configuring the first/only server in a farm, but also supports using either server-specific input files or a single, all-encompassing input file for running the script on all farm servers (with parameters - e.g. for the service apps - set according to your desired topology).

"But doesn't SharePoint 2010 have a nice wizard now that does all this for me??" - Yes, and it's a huge improvement over what was available in MOSS 2007. However if you've ever seen the 'DBA nightmare' left behind on your SQL server after the Farm Configuration Wizard has completed (GUID'ed databases with inconsistent naming, etc.):



...then you'll see the value in having consistently-named but automatically-created databases:

DatabaseList-Clean

The scripts (Franken-scripts, really...) leverage previously-available resources (as PowerShell has now taken its place asthe automation platform for SharePoint) such as: Zach Rosenfield's blog, Jos Verlinde's script for creating a Farm, Gary Lapointe's Enterprise Search script functions and other miscellaneous tidbits in the wild.

The scripted process will:</form>

  • Re-launch itself in an elevated process to deal with User Access Control
  • Check whether the target server is running Windows 2008 or 2008 R2
  • Prompt you to enter allmost (in progress) service accounts, passwords and the farm passphrase, unless you opt to just specify them in the AutoSPInstallerInput.xml
  • Validate connectivity and permissions to your SQL instance/alias
  • Validate the farm passphrase (for complexity), as well as the service account/password combinations specified in the input XML file
  • Automatically download and install platform-specific pre-requisites (e.g. IIS, .Net Framework) using the SP2010 Prerequisiteinstaller.exe. You can also pre-download all the prerequisites/hotfixes usingthis script, then specify <OfflineInstall>true</OfflineInstall> in your AutoSPInstallerInput.xml instead of having Prerequisiteinstaller try to download fixes at script runtime.
  • Optionally disable some unnecessary Windows services, CRL checking and the dreaded IE Enhanced Security Configuration
  • Install the SP2010 binaries using an (optionally, server-specific) config.xml for input
  • Optionally install the Office Web Applications (OWA) binaries using config-OWA.xml for input
  • Create the Farm (Config & Central Admin content databases, Central Admin site, help collections, etc.)
  • Optionally configure and start many SharePoint services and service applications; currently the script can provision:
    • User Profile Service Application
    • User Profile Synchronization Service
    • Metadata Service Application
    • SharePoint Foundation User Code Service
    • State Service Application
    • Usage and Health Service Application
    • PowerPivot Service Application (removed due to complexity/misunderstandings around order of installation etc.)
    • Secure Store Service
    • Enterprise Search Service Application
    • Web Analytics Service Application
    • Outgoing Email
    • Business Data Connectivity Service Application
    • Excel Service Application
    • Access Service Application
    • PerformancePoint Service Application
    • Visio Graphics Service Application
    • Word Automation (Conversion) Service Application
    • The Office Web Applications service apps:
      • PowerPoint Service Application
      • Word Viewing Service Application
      • Excel Service Application (if not already provisioned by virtue of having an Enterprise license)
  • Create the main Portal web app and site collection (will try to provision and/or assign a certificate, too - all you need is an https://-based URL in the input XML)
  • Create/configure your My Sites web app and site collection (will also try to provision and/or assign a certificate if you have an https://-based URL in the Input XML)
  • Configure paths and options for both IIS and SharePoint (ULS) logging according to your preferences
  • (NEW) Discover other target servers in your farm (based on values in AutoSPInstallerInput.xml) and remote into each of them to perform the installation process (if <RemoteInstall> istrue)
  • Configure PDF indexing and icon display within SharePoint – effectively resolving what many consider to be a long-standing omission in the product in just a few seconds
  • Optionally install ForeFront Protection 2010 for SharePoint if the binaries are found in the correct path (see below)
  • Launch IE to display Central Administration, Portal and My Sites, and view the results of your hard work (just in time for your return from lunch)
  • Log all activity to a file on the current user's desktop, and pop open the log file for review when finished.

There are several input parameters to define in the input XML file (which illustrates how much stuff you really have to plan & gather during a regular SharePoint install). However this is a one-time-per-install effort, and the trade-off includes hours saved and better spent elsewhere (see lunch above) and an avoidance of the risks involved (typos, missed settings etc.) during manual installations.

New in v3:

  • Centralized, remote install of every SharePoint server in your farm using PowerShell remoting
  • Support for parallel binary installations, whether remote install is enabled or not (useful for speeding up multi-server farm installs)
  • Ability to specify a different SQL server/instance for each web application and service application, plus support for creating an alias for each SQL instance
  • Screen output and log both now display the elapsed time to install SharePoint and Office Web App binaries
  • Specify an arbitrary XML input file by passing the XML file name as an argument, or just dragging it onto AutoSPInstallerLaunch.bat

The full v3 change log can be found within the CodePlex source code changesets for the project. Also, see the post on my blog at spinsiders.com that provides an overview of the new features & fixes.

New in v2.5:
The ability to use a single AutoSPInstallerInput.XML file for your entire farm, and simply include the names of servers (comma-delimited) on which you want particular service instances or service applications installed. This works by using the Provision="" and Start="" attributes; for example, to provision the managed metadata service on your 2 app servers, you would specify:

<ManagedMetadataServiceApp Provision="SPAPPSRV1, SPAPPSRV2"
...

Further, the old way of specifying <ManagedMetadataServiceApp Provision="true"... still works, if you want to continue using a different XML input file for each server.

See the release notes associated with the original 2.5 changeset here for a more complete list of changes.

New in v2:

  • MAJOR code and XML schema refactoring effort by Andrew Woodward of 21apps to enable (among other things) easier editing and extending via a custom functions script file.
  • Both the launch batch file and the User Profile Service App creation (as farm account)self-elevate so no more need to right-click, Run as Administrator to successfully run AutoSPInstaller on a server with User Access Control (UAC) enabled!
  • Enterprise Search now properly sets both the service account and the crawl (content access) account
  • Much better multi-server farm support. Services can be tweaked to start on the servers you wish, and service applications won't be erroneously re-created on subsequent servers, etc.
  • Portal super user and super reader accounts can now be configured per best practices
  • Overall the install experience and results are more in line with community best practices; as always, this is a community-inspired and driven effort!

In addition to the scripts, you should create an installation source (local or shared) containingthe entire extracted contents of the SP201x install package. The zip package will by default create most of this folder structure when you extract it. When you're done, your folder structure should look something like this (Note: updated for v3):

\SP\AutoSPInstaller\AutoSPInstallerLaunch.bat
\SP\AutoSPInstaller\AutoSPInstallerInput.xml
\SP\AutoSPInstaller\AutoSPInstallerMain.ps1
\SP\AutoSPInstaller\AutoSPInstallerFunctions.ps1
\SP\AutoSPInstaller\AutoSPInstallerFunctionsCustom.ps1
\SP\AutoSPInstaller\AutoSPInstallerConfigureRemoteTarget.ps1

\SP\AutoSPInstaller\config.xml
\SP\201x\SharePoint\<installation files & folders>
\SP\201x\SharePoint\PreRequisiteInstallerFiles\
\SP\201x\SharePoint\Updates\
(extract Service Pack + Cumulative Updates here. NOTE not all updates support slipstreaming!)
\SP\2013\ProjectServer\ (optional; copy/extract the contents of the Project Server 2013 DVD/ISO here)
\SP\2013\ProjectServer\Updates (optional, for slipstreaming Service Packs and Public/Cumulative Updates. NOTE not all updates support slipstreaming!)

\SP\201x\LanguagePacks\xx-xx\
(optional)
\SP\201x\LanguagePacks\xx-xx\Updates\ (optional; extract Language Pack Service Pack / Cumulative Updates here)
OR
\SP\201x\LanguagePacks\<ServerLanguagePack_XX-XX.exe> (optional)
\SP\2010\OfficeWebApps\ (optional; only required/supported with SP2010)
\SP\2010\PDF\ (optional; only required/supported with SP2010)
\SP\2010\ForeFront\<ForeFront Protection 2010 for SharePoint install files> (optional, only required/supported with SP2010)

Note that x in the paths above is a0 or a 3 depending on whether you're installing SP2010 or SP2013. Spaces in the path to AutoSPInstallerLaunch.bat will cause the script to blow up, so avoid them.

Useful references:

  • Config.xml reference (SharePoint Server)
  • List of SharePoint Templates Codes and description
  • ULSViewer - best SharePoint log viewer out there, displays events in real-time and super useful for troubleshooting farm, service and service application provisioning issues.
  • I also highly recommend slipstreaming SharePoint 2010 service packs, cumulative updates and hotfixes into your installation source too, to further automate the process. Just place extracted patches in the\Updates\ path listed above, and they'll be automatically applied during the SharePoint binary installation process! Todd Klindt provides a great overview of the processhere.


Finally, I highly recommend working on your XML input file using a good editor like Notepad++ or good old Visual Studio - this helps a ton, especially to highlight any errors.Be especially mindful of invalid characters such as $ & " in your passwords etc.! Many script blow-up errors can be attributed to illegal characters or syntax errors in the XML. Finally, once you've populated your XML file with your environment/server specifics and before you attempt to run the script, pass the XML through a validator likethis.


New Post: Function "Add-SQLAlias" does not add a 32bit alias

$
0
0
Right, so although I've never run into this issue myself (even when installing Workflow Manager 1.0), it couldn't hurt so will include it as a future enhancement.

Cheers
Brian

Created Feature: Function "Add-SQLAlias" does not add a 32bit alias [21941]

$
0
0
I realized today that the SQL Client Alias I have configured using AutoSPInstaller only adds a 64bit alias and not a 32bit alias. This is not a problem for straight SharePoint 2013 but it became a problem when I tried to configure Workflow Manager 1.0 on the server. It was not able to connect with the connection string I supplied because there is not 32bit alias matching the name I have in the string. WorkflowManager will not be the only thing that would need the alias, so I think having it included is pretty much a must-have.

My solution going forward for AutoSPInstaller is that I have modified the function and saved it to my "AutoSPInstallerFunctionsCustom.ps1" file. I've also pasted the modified function below if you're interested.
```
Function Add-SQLAlias()
{
<#
.Synopsis
Add a new SQL server Alias
.Description
Adds a new SQL server Alias with the provided parameters.
This custom version also adds the 32bit alias for the same.
.Example
Add-SQLAlias -AliasName "SharePointDB" -SQLInstance $env:COMPUTERNAME
.Example
Add-SQLAlias -AliasName "SharePointDB" -SQLInstance $env:COMPUTERNAME -Port '1433'
.Parameter AliasName
The new alias Name.
.Parameter SQLInstance
The SQL server Name os Instance Name
.Parameter Port
Port number of SQL server instance. This is an optional parameter.
#>
[CmdletBinding(DefaultParameterSetName="BuildPath+SetupInfo")]
param
(
[Parameter(Mandatory=$false, ParameterSetName="BuildPath+SetupInfo")][ValidateNotNullOrEmpty()]
[String]$aliasName = "SharePointDB",

[Parameter(Mandatory=$false, ParameterSetName="BuildPath+SetupInfo")][ValidateNotNullOrEmpty()]
[String]$SQLInstance = $env:COMPUTERNAME,

[Parameter(Mandatory=$false, ParameterSetName="BuildPath+SetupInfo")][ValidateNotNullOrEmpty()]
[String]$port = ""
)

If ((MatchComputerName $SQLInstance $env:COMPUTERNAME) -or ($SQLInstance.StartsWith($env:ComputerName +"\"))) {
$protocol = "dbmslpcn" # Shared Memory
}
else {
$protocol = "DBMSSOCN" # TCP/IP
}

$serverAliasConnection="$protocol,$SQLInstance"
If ($port -ne "")
{
$serverAliasConnection += ",$port"
}
$notExist = $true
$client = Get-Item 'HKLM:\SOFTWARE\Microsoft\MSSQLServer\Client' -ErrorAction SilentlyContinue
# Create the key in case it doesn't yet exist
If (!$client) {$client = New-Item 'HKLM:\SOFTWARE\Microsoft\MSSQLServer\Client' -Force}
$client.GetSubKeyNames() | ForEach-Object -Process { If ( $_ -eq 'ConnectTo') { $notExist=$false }}
If ($notExist)
{
$data = New-Item 'HKLM:\SOFTWARE\Microsoft\MSSQLServer\Client\ConnectTo'
}
# Add the 64bit Alias
$data = New-ItemProperty HKLM:\SOFTWARE\Microsoft\MSSQLServer\Client\ConnectTo -Name $aliasName -Value $serverAliasConnection -PropertyType "String" -Force -ErrorAction SilentlyContinue
#
#
### Below is the part that is new. It's basically the same as the lines above added in but this time it will include the 32bit SQL Client Alias
$notExist = $true
$client = Get-Item 'HKLM:\SOFTWARE\Wow6432Node\Microsoft\MSSQLServer\Client\ConnectTo' -ErrorAction SilentlyContinue
# Create the key in case it doesn't yet exist
If (!$client) {$client = New-Item 'HKLM:\SOFTWARE\Wow6432Node\Microsoft\MSSQLServer\Client' -Force}
$client.GetSubKeyNames() | ForEach-Object -Process { If ( $_ -eq 'ConnectTo') { $notExist=$false }}
If ($notExist)
{
$data = New-Item 'HKLM:\SOFTWARE\Wow6432Node\Microsoft\MSSQLServer\Client\ConnectTo'
}
# Add Alias
$data = New-ItemProperty HKLM:\SOFTWARE\Wow6432Node\Microsoft\MSSQLServer\Client\ConnectTo -Name $aliasName -Value $serverAliasConnection -PropertyType "String" -Force -ErrorAction SilentlyContinue
}
```

Edited Feature: Function "Add-SQLAlias" does not add a 32bit alias [21941]

$
0
0
I realized today that the SQL Client Alias I have configured using AutoSPInstaller only adds a 64bit alias and not a 32bit alias. This is not a problem for straight SharePoint 2013 but it became a problem when I tried to configure Workflow Manager 1.0 on the server. It was not able to connect with the connection string I supplied because there is not 32bit alias matching the name I have in the string. WorkflowManager will not be the only thing that would need the alias, so I think having it included is pretty much a must-have.

My solution going forward for AutoSPInstaller is that I have modified the function and saved it to my "AutoSPInstallerFunctionsCustom.ps1" file. I've also pasted the modified function below if you're interested.
```
Function Add-SQLAlias()
{
<#
.Synopsis
Add a new SQL server Alias
.Description
Adds a new SQL server Alias with the provided parameters.
This custom version also adds the 32bit alias for the same.
.Example
Add-SQLAlias -AliasName "SharePointDB" -SQLInstance $env:COMPUTERNAME
.Example
Add-SQLAlias -AliasName "SharePointDB" -SQLInstance $env:COMPUTERNAME -Port '1433'
.Parameter AliasName
The new alias Name.
.Parameter SQLInstance
The SQL server Name os Instance Name
.Parameter Port
Port number of SQL server instance. This is an optional parameter.
#>
[CmdletBinding(DefaultParameterSetName="BuildPath+SetupInfo")]
param
(
[Parameter(Mandatory=$false, ParameterSetName="BuildPath+SetupInfo")][ValidateNotNullOrEmpty()]
[String]$aliasName = "SharePointDB",

[Parameter(Mandatory=$false, ParameterSetName="BuildPath+SetupInfo")][ValidateNotNullOrEmpty()]
[String]$SQLInstance = $env:COMPUTERNAME,

[Parameter(Mandatory=$false, ParameterSetName="BuildPath+SetupInfo")][ValidateNotNullOrEmpty()]
[String]$port = ""
)

If ((MatchComputerName $SQLInstance $env:COMPUTERNAME) -or ($SQLInstance.StartsWith($env:ComputerName +"\"))) {
$protocol = "dbmslpcn" # Shared Memory
}
else {
$protocol = "DBMSSOCN" # TCP/IP
}

$serverAliasConnection="$protocol,$SQLInstance"
If ($port -ne "")
{
$serverAliasConnection += ",$port"
}
$notExist = $true
$client = Get-Item 'HKLM:\SOFTWARE\Microsoft\MSSQLServer\Client' -ErrorAction SilentlyContinue
# Create the key in case it doesn't yet exist
If (!$client) {$client = New-Item 'HKLM:\SOFTWARE\Microsoft\MSSQLServer\Client' -Force}
$client.GetSubKeyNames() | ForEach-Object -Process { If ( $_ -eq 'ConnectTo') { $notExist=$false }}
If ($notExist)
{
$data = New-Item 'HKLM:\SOFTWARE\Microsoft\MSSQLServer\Client\ConnectTo'
}
# Add the 64bit Alias
$data = New-ItemProperty HKLM:\SOFTWARE\Microsoft\MSSQLServer\Client\ConnectTo -Name $aliasName -Value $serverAliasConnection -PropertyType "String" -Force -ErrorAction SilentlyContinue
#
#
### Below is the part that is new. It's basically the same as the lines above added in but this time it will include the 32bit SQL Client Alias
$notExist = $true
$client = Get-Item 'HKLM:\SOFTWARE\Wow6432Node\Microsoft\MSSQLServer\Client\ConnectTo' -ErrorAction SilentlyContinue
# Create the key in case it doesn't yet exist
If (!$client) {$client = New-Item 'HKLM:\SOFTWARE\Wow6432Node\Microsoft\MSSQLServer\Client' -Force}
$client.GetSubKeyNames() | ForEach-Object -Process { If ( $_ -eq 'ConnectTo') { $notExist=$false }}
If ($notExist)
{
$data = New-Item 'HKLM:\SOFTWARE\Wow6432Node\Microsoft\MSSQLServer\Client\ConnectTo'
}
# Add Alias
$data = New-ItemProperty HKLM:\SOFTWARE\Wow6432Node\Microsoft\MSSQLServer\Client\ConnectTo -Name $aliasName -Value $serverAliasConnection -PropertyType "String" -Force -ErrorAction SilentlyContinue
}
```

New Post: Function "Add-SQLAlias" does not add a 32bit alias

$
0
0
This discussion has been copied to a work item. Click here to go to the work item and continue the discussion.

Created Unassigned: Bug when creating DB Alias [21948]

$
0
0
When doing a two machine install (one sql server, one sharepoint everything) and the following names are chosen:

sql: sp2013sql
sharepoint: sp2013

The DB alias is not created correctly. In the above scenario, the protocol "sm" is used instead of "tcp/ip".

New Post: Error during Installation SharePoint 2013

$
0
0
Hi,

I get an error during the installation of SharePoint 2013 SP1 german. It looks good due the part of creating enterprisesearch. Here is an example of the exeption message:

Exception : System.Management.Automation.RuntimeException: Es ist nicht möglich, einen Index auf ein
                    NULL-Array anzuwenden.
                       bei System.Management.Automation.ExceptionHandlingOps.CheckActionPreference(FunctionContext
                    funcContext, Exception exception)
                       bei System.Management.Automation.Interpreter.ActionCallInstruction`2.Run(InterpretedFrame
                    frame)
                       bei
                    System.Management.Automation.Interpreter.EnterTryCatchFinallyInstruction.Run(InterpretedFrame
                    frame)
                       bei
                    System.Management.Automation.Interpreter.EnterTryCatchFinallyInstruction.Run(InterpretedFrame
                    frame)
                       bei System.Management.Automation.Interpreter.Interpreter.Run(InterpretedFrame frame)
                       bei System.Management.Automation.Interpreter.LightLambda.RunVoid1[T0](T0 arg0)
                       bei System.Management.Automation.ScriptBlock.InvokeWithPipeImpl(ScriptBlockClauseToInvoke
                    clauseToInvoke, Boolean createLocalScope, Dictionary`2 functionsToDefine, List`1
                    variablesToDefine, ErrorHandlingBehavior errorHandlingBehavior, Object dollarUnder, Object
                    input, Object scriptThis, Pipe outputPipe, InvocationInfo invocationInfo, Object[] args)
                       bei System.Management.Automation.ScriptBlock.<>c__DisplayClassa.<InvokeWithPipe>b__8()
                       bei System.Management.Automation.Runspaces.RunspaceBase.RunActionIfNoRunningPipelinesWithThr
                    eadCheck(Action action)
                       bei System.Management.Automation.ScriptBlock.InvokeWithPipe(Boolean useLocalScope,
                    Dictionary`2 functionsToDefine, List`1 variablesToDefine, ErrorHandlingBehavior
                    errorHandlingBehavior, Object dollarUnder, Object input, Object scriptThis, Pipe outputPipe,
                    InvocationInfo invocationInfo, Object[] args)
                       bei Microsoft.PowerShell.Commands.WhereObjectCommand.ProcessRecord()
                       bei System.Management.Automation.CommandProcessor.ProcessRecord()
TargetObject :
CategoryInfo : InvalidOperation: (:) [Where-Object], RuntimeException
FullyQualifiedErrorId : NullArray,Microsoft.PowerShell.Commands.WhereObjectCommand
ErrorDetails :
InvocationInfo : System.Management.Automation.InvocationInfo
ScriptStackTrace : bei <ScriptBlock>, C:\SP\AutoSPInstaller\AutoSPInstallerFunctions.ps1: Zeile 7350
                    bei AddResourcesLink, C:\SP\AutoSPInstaller\AutoSPInstallerFunctions.ps1: Zeile 7350
                    bei <ScriptBlock>, C:\SP\AutoSPInstaller\AutoSPInstallerFunctions.ps1: Zeile 4964
                    bei CreateEnterpriseSearchServiceApp, C:\SP\AutoSPInstaller\AutoSPInstallerFunctions.ps1:
                    Zeile 4515
                    bei Setup-Services, C:\SP\AutoSPInstaller\AutoSPInstallerMain.ps1: Zeile 227
                    bei <ScriptBlock>, C:\SP\AutoSPInstaller\AutoSPInstallerMain.ps1: Zeile 409
                    bei <ScriptBlock>, <Keine Datei>: Zeile 1
PipelineIterationInfo : {}

PSMessageDetails :

| Automated SP2013 install script |
| Started on: 22.07.2015 10:26:27 |

| Aborted: 22.07.2015 10:29:00 |

New Comment on "Documentation"

$
0
0
Is there an up to date, offline (standalone) GUI available? The online tool is awesome but I cannot use it fully for security reasons.

Created Unassigned: Secure store service have incorrect codes [21964]

$
0
0
When I was looking into the code for the secure store setup I came across some items which I think is incorrectly done.

First I notice that you have set the user name to convert to secure string instead of the password
```
# Set the field values
$secureUserName = ConvertTo-SecureString $unattendedAccount.UserName -AsPlainText -Force
$securePassword = $unattendedAccount.Password
$credentialValues = $secureUserName, $securePassword
```

2. The password field mask is set to false instead of true
```
# Set the account fields
$usernameField = New-SPSecureStoreApplicationField -Name "User Name" -Type WindowsUserName -Masked:$false
$passwordField = New-SPSecureStoreApplicationField -Name "Password" -Type WindowsPassword -Masked:$false
$fields = $usernameField, $passwordField
```
Hope you can fix it for the next version .

Cheers
Nicholas Ang

New Post: New-SPConfigurationDatabase : Cannot open database "SP2010_ConfigDB" requested by the login. The login failed.

$
0
0
Hi, have the same exact issue.
  1. AutoSPInstaller created the config db and later I see this error (I have necessary permissions to spinstall account)
  2. I have tried increasing sleep time to 30 - no luck
  3. When I tried to Disconnect-SPConfigurationDatabase :Couldn't found the local farm - still no luck
Did anyone able to fix this issue? Is it related to any other permissions in SQL?

New Post: What is the 'experimental' Foundation 2013 support??

$
0
0
I found something somewhere on this site mentioning 'experimental' support for Foundation 2013 version 3.98.

Would someone please explain this?? What or where is it??
Does this consist of testing if the install is Foundation and then not running non-applicable code??

Thank you, Tom

New Post: What is the 'experimental' Foundation 2013 support??

$
0
0
No it simply means support for installing SharePoint Foundation (vs Server).

Brian

New Post: What is the 'experimental' Foundation 2013 support??

$
0
0
I asked my question b/c everything I read on this site, people had to comment out or rewrite code to make AutoSPInstaller work with SP Foundation, and I want to know if AutoSPInstaller does similar things.

Is it possible to summarize how AutoSPInstaller handles SP Foundation??

I'm trying to learn how this app works differently for Foundation vs. Server, since I anticipate having to make a standalone Foundation server before long.

Thank you, Tom

Created Unassigned: Provisioning of Search does not work [21975]

$
0
0
Hi there. I tried with SharePoint Foundation 2013. Provisioning of Search does not work. It is just ignored. Any thoughts?

Thanks
Markus

Created Unassigned: Project Server 2013 SP1 - Failed to create Project Database 2nd time through on same server [21979]

$
0
0
Discovered same problem as Issue 20465.

When debugging we discovered Get-SPDatabase call would never succeed due to the fact that Project Server Database is not a recognized sharepoint database.

We've implemented a fix and tested in our multi-server environment, let us know if you want us to contrib the fix.

-Thomas Sloan & Dave Gardner

Updated Wiki: Home

$
0
0

Project Description
Automated SharePoint 2010/2013 PowerShell-based installation script.

Introducing AutoSPInstaller v3 with numerous enhancements including:

  • Granular SQL server assignment and aliasing for (almost) every service/web app (for control freaks)
  • Centralized, remote installation to all farm servers
  • Ability to specify any XML input file, by passing it as an argument to AutoSPInstallerLaunch.bat
  • Several tweaks & fixes
  • Experimental support for SharePoint Foundation 2013 (as of 3.98 release)

Be sure to check out the new AutoSPInstaller Online - it's AutoSPInstallerGUI in a browser (& on steroids!)

AutoSPInstaller works with SharePoint 2013 (including SP1) and SharePoint 2010 with Service Pack 1 & 2. It takes advantage of some of the cmdlet updates in the newer SharePoint releases, while remaining largely backward-compatible older versions.

Newer versions often include updates to the input file XML schema, so make sure you compare any of your existing XML files to the newest AutoSPInstallerInput.XML. See below for highlights of changes in v3.x.

This being a CodePlex open-source project, it must be stressed that AutoSPInstaller itself isnot supported by Microsoft - if you contact them with a SharePoint support issue, please mention to them if AutoSPInstaller was used to perform your farm build. This doesnot mean your farm and servers won't be supported, instead it will help support engineers better assess your particular issue.

AutoSPInstaller has been used as the go-to SharePoint installation method for hundreds of SharePoint practitioners & partners worldwide! If you or your organization find AutoSPInstaller useful, making a donation (any amount) is a great way to support the ongoing development & improvement of the project.

Donate to AutoSPInstaller!

New! Frequently Asked Questions

This project consists of PowerShell scripts, an XML input file, and a standard windows batch file (to kick off the process) which together provide a quick and near-unattended installation and initial configuration (Service Apps, My Sites) of Microsoft SharePoint Server 2010/2013. Works on Windows 2008 (though I hardly test on that OS these days), 2008 R2 and Windows 2012 / 2012 R2 (x64 only of course).

Perfect for repeated Virtual Machine-based installs/tear-downs, etc., but also great for production installs where you want to guarantee consistency and minimize data entry glitches. The immediate value is for installing and configuring the first/only server in a farm, but also supports using either server-specific input files or a single, all-encompassing input file for running the script on all farm servers (with parameters - e.g. for the service apps - set according to your desired topology).

"But doesn't SharePoint 2010 have a nice wizard now that does all this for me??" - Yes, and it's a huge improvement over what was available in MOSS 2007. However if you've ever seen the 'DBA nightmare' left behind on your SQL server after the Farm Configuration Wizard has completed (GUID'ed databases with inconsistent naming, etc.):



...then you'll see the value in having consistently-named but automatically-created databases:

DatabaseList-Clean

The scripts (Franken-scripts, really...) leverage previously-available resources (as PowerShell has now taken its place asthe automation platform for SharePoint) such as: Zach Rosenfield's blog, Jos Verlinde's script for creating a Farm, Gary Lapointe's Enterprise Search script functions and other miscellaneous tidbits in the wild.

The scripted process will:</form>

  • Re-launch itself in an elevated process to deal with User Access Control
  • Check whether the target server is running Windows 2008 or 2008 R2
  • Prompt you to enter allmost (in progress) service accounts, passwords and the farm passphrase, unless you opt to just specify them in the AutoSPInstallerInput.xml
  • Validate connectivity and permissions to your SQL instance/alias
  • Validate the farm passphrase (for complexity), as well as the service account/password combinations specified in the input XML file
  • Automatically download and install platform-specific pre-requisites (e.g. IIS, .Net Framework) using the SP2010 Prerequisiteinstaller.exe. You can also pre-download all the prerequisites/hotfixes usingthis script, then specify <OfflineInstall>true</OfflineInstall> in your AutoSPInstallerInput.xml instead of having Prerequisiteinstaller try to download fixes at script runtime.
  • Optionally disable some unnecessary Windows services, CRL checking and the dreaded IE Enhanced Security Configuration
  • Install the SP2010 binaries using an (optionally, server-specific) config.xml for input
  • Optionally install the Office Web Applications (OWA) binaries using config-OWA.xml for input
  • Create the Farm (Config & Central Admin content databases, Central Admin site, help collections, etc.)
  • Optionally configure and start many SharePoint services and service applications; currently the script can provision:
    • User Profile Service Application
    • User Profile Synchronization Service
    • Metadata Service Application
    • SharePoint Foundation User Code Service
    • State Service Application
    • Usage and Health Service Application
    • PowerPivot Service Application (removed due to complexity/misunderstandings around order of installation etc.)
    • Secure Store Service
    • Enterprise Search Service Application
    • Web Analytics Service Application
    • Outgoing Email
    • Business Data Connectivity Service Application
    • Excel Service Application
    • Access Service Application
    • PerformancePoint Service Application
    • Visio Graphics Service Application
    • Word Automation (Conversion) Service Application
    • The Office Web Applications service apps:
      • PowerPoint Service Application
      • Word Viewing Service Application
      • Excel Service Application (if not already provisioned by virtue of having an Enterprise license)
  • Create the main Portal web app and site collection (will try to provision and/or assign a certificate, too - all you need is an https://-based URL in the input XML)
  • Create/configure your My Sites web app and site collection (will also try to provision and/or assign a certificate if you have an https://-based URL in the Input XML)
  • Configure paths and options for both IIS and SharePoint (ULS) logging according to your preferences
  • (NEW) Discover other target servers in your farm (based on values in AutoSPInstallerInput.xml) and remote into each of them to perform the installation process (if <RemoteInstall> istrue)
  • Configure PDF indexing and icon display within SharePoint – effectively resolving what many consider to be a long-standing omission in the product in just a few seconds
  • Optionally install ForeFront Protection 2010 for SharePoint if the binaries are found in the correct path (see below)
  • Launch IE to display Central Administration, Portal and My Sites, and view the results of your hard work (just in time for your return from lunch)
  • Log all activity to a file on the current user's desktop, and pop open the log file for review when finished.

There are several input parameters to define in the input XML file (which illustrates how much stuff you really have to plan & gather during a regular SharePoint install). However this is a one-time-per-install effort, and the trade-off includes hours saved and better spent elsewhere (see lunch above) and an avoidance of the risks involved (typos, missed settings etc.) during manual installations.

New in v3:

  • Centralized, remote install of every SharePoint server in your farm using PowerShell remoting
  • Support for parallel binary installations, whether remote install is enabled or not (useful for speeding up multi-server farm installs)
  • Ability to specify a different SQL server/instance for each web application and service application, plus support for creating an alias for each SQL instance
  • Screen output and log both now display the elapsed time to install SharePoint and Office Web App binaries
  • Specify an arbitrary XML input file by passing the XML file name as an argument, or just dragging it onto AutoSPInstallerLaunch.bat

The full v3 change log can be found within the CodePlex source code changesets for the project. Also, see the post on my blog at spinsiders.com that provides an overview of the new features & fixes.

New in v2.5:
The ability to use a single AutoSPInstallerInput.XML file for your entire farm, and simply include the names of servers (comma-delimited) on which you want particular service instances or service applications installed. This works by using the Provision="" and Start="" attributes; for example, to provision the managed metadata service on your 2 app servers, you would specify:

<ManagedMetadataServiceApp Provision="SPAPPSRV1, SPAPPSRV2"
...

Further, the old way of specifying <ManagedMetadataServiceApp Provision="true"... still works, if you want to continue using a different XML input file for each server.

See the release notes associated with the original 2.5 changeset here for a more complete list of changes.

New in v2:

  • MAJOR code and XML schema refactoring effort by Andrew Woodward of 21apps to enable (among other things) easier editing and extending via a custom functions script file.
  • Both the launch batch file and the User Profile Service App creation (as farm account)self-elevate so no more need to right-click, Run as Administrator to successfully run AutoSPInstaller on a server with User Access Control (UAC) enabled!
  • Enterprise Search now properly sets both the service account and the crawl (content access) account
  • Much better multi-server farm support. Services can be tweaked to start on the servers you wish, and service applications won't be erroneously re-created on subsequent servers, etc.
  • Portal super user and super reader accounts can now be configured per best practices
  • Overall the install experience and results are more in line with community best practices; as always, this is a community-inspired and driven effort!

In addition to the scripts, you should create an installation source (local or shared) containingthe entire extracted contents of the SP201x install package. The zip package will by default create most of this folder structure when you extract it. When you're done, your folder structure should look something like this (Note: updated for v3):

\SP\AutoSPInstaller\AutoSPInstallerLaunch.bat
\SP\AutoSPInstaller\AutoSPInstallerInput.xml
\SP\AutoSPInstaller\AutoSPInstallerMain.ps1
\SP\AutoSPInstaller\AutoSPInstallerFunctions.ps1
\SP\AutoSPInstaller\AutoSPInstallerFunctionsCustom.ps1
\SP\AutoSPInstaller\AutoSPInstallerConfigureRemoteTarget.ps1

\SP\AutoSPInstaller\config.xml
\SP\201x\SharePoint\<installation files & folders>
\SP\201x\SharePoint\PreRequisiteInstallerFiles\
\SP\201x\SharePoint\Updates\
(extract Service Pack + Cumulative Updates here. NOTE not all updates support slipstreaming!)
\SP\2013\ProjectServer\ (optional; copy/extract the contents of the Project Server 2013 DVD/ISO here)
\SP\2013\ProjectServer\Updates (optional, for slipstreaming Service Packs and Public/Cumulative Updates. NOTE not all updates support slipstreaming!)

\SP\201x\LanguagePacks\xx-xx\
(optional)
\SP\201x\LanguagePacks\xx-xx\Updates\ (optional; extract Language Pack Service Pack / Cumulative Updates here)
OR
\SP\201x\LanguagePacks\<ServerLanguagePack_XX-XX.exe> (optional)
\SP\2010\OfficeWebApps\ (optional; only required/supported with SP2010)
\SP\2010\PDF\ (optional; only required/supported with SP2010)
\SP\2010\ForeFront\<ForeFront Protection 2010 for SharePoint install files> (optional, only required/supported with SP2010)

Note that x in the paths above is a0 or a 3 depending on whether you're installing SP2010 or SP2013. Spaces in the path to AutoSPInstallerLaunch.bat will cause the script to blow up, so avoid them.

Useful references:

  • Config.xml reference (SharePoint Server)
  • List of SharePoint Templates Codes and description
  • ULSViewer - best SharePoint log viewer out there, displays events in real-time and super useful for troubleshooting farm, service and service application provisioning issues.
  • I also highly recommend slipstreaming SharePoint 2010 service packs, cumulative updates and hotfixes into your installation source too, to further automate the process. Just place extracted patches in the\Updates\ path listed above, and they'll be automatically applied during the SharePoint binary installation process! Todd Klindt provides a great overview of the processhere.


Finally, I highly recommend working on your XML input file using a good editor like Notepad++ or good old Visual Studio - this helps a ton, especially to highlight any errors.Be especially mindful of invalid characters such as $ & " in your passwords etc.! Many script blow-up errors can be attributed to illegal characters or syntax errors in the XML. Finally, once you've populated your XML file with your environment/server specifics and before you attempt to run the script, pass the XML through a validator likethis.

Source code checked in, #114878

$
0
0
Changes in this release: - Various updates to code and comments to provide support for SharePoint 2016 IT Preview - Updated version to 3.99.5 - Updated function Run-PSConfig based on recent clarification by Stefan Gossner (http://blogs.technet.com/b/stefan_gossner/archive/2015/08/20/why-i-prefer-psconfigui-exe-over-psconfig-exe.aspx) - Script will now attempt to use pure PowerShell instead of makecert.exe to provision SSL certificates - Project Server service app is now included with SharePoint 2016; made some basic modifications to accomodate this - Updated & more reliable way of checking if SharePoint is already installed

Commented Issue: Error in CheckConfigFiles [21911]

$
0
0
If you don't specify DataDir in the xml this function errors as it tries to remove the trailing '\' from a string that is null.
The line:
$dataDir = $dataDir.TrimEnd("\")
needs to be moved from before the line:
if ([string]::IsNullOrEmpty($dataDir)) {$dataDir = "%PROGRAMFILES%\Microsoft Office Servers\$env:spVer.0\Data"}
to after it.
Comments: Associated with changeset 114878: Changes in this release:

- Various updates to code and comments to provide support for SharePoint 2016 IT Preview
- Updated version to 3.99.5
- Updated function Run-PSConfig based on recent clarification by Stefan Gossner (http://blogs.technet.com/b/stefan_gossner/archive/2015/08/20/why-i-prefer-psconfigui-exe-over-psconfig-exe.aspx)
- Script will now attempt to use pure PowerShell instead of makecert.exe to provision SSL certificates
- Project Server service app is now included with SharePoint 2016; made some basic modifications to accomodate this
- Updated & more reliable way of checking if SharePoint is already installed

Commented Unassigned: SP2010 AutoSPInstaller halts when Cannot convert the "Default" value of type "System.String" to type "System.Xml.XmlElement[]" [21934]

$
0
0
Hi Brian,

For SP2010 install, i get this error
It seems to halt just when its supposed to create the proxy group.






- Search Query and Site Settings Service already started.
- Enterprise search service application proxy already exists, skipping creation
.
--------------------------------------------------------------
- Script halted!


```
Exception : System.Management.Automation.ParameterBindingArgumentTr
ansformationException: Cannot process argument transfor
mation on parameter 'groups'. Cannot convert the "Defau
lt" value of type "System.String" to type "System.Xml.X
mlElement[]". ---> System.Management.Automation.Argumen
tTransformationMetadataException: Cannot convert the "D
efault" value of type "System.String" to type "System.X
ml.XmlElement[]". ---> System.Management.Automation.PSI
nvalidCastException: Cannot convert the "Default" value
of type "System.String" to type "System.Xml.XmlElement
[]".
at System.Management.Automation.LanguagePrimitives.C
onvertTo(Object valueToConvert, Type resultType, Boolea
n recursion, IFormatProvider formatProvider, TypeTable
backupTypeTable)
at System.Management.Automation.ArgumentTypeConverte
rAttribute.Transform(EngineIntrinsics engineIntrinsics,
Object inputData, Boolean bindingParameters, Boolean b
indingScriptCmdlet)
--- End of inner exception stack trace ---
at System.Management.Automation.ArgumentTypeConverte
rAttribute.Transform(EngineIntrinsics engineIntrinsics,
Object inputData, Boolean bindingParameters, Boolean b
indingScriptCmdlet)
at System.Management.Automation.ParameterBinderBase.
BindParameter(CommandParameterInternal parameter, Compi
ledCommandParameter parameterMetadata, ParameterBinding
Flags flags)
--- End of inner exception stack trace ---
at System.Management.Automation.ParameterBinderBase.
BindParameter(CommandParameterInternal parameter, Compi
ledCommandParameter parameterMetadata, ParameterBinding
Flags flags)
at System.Management.Automation.ParameterBinderContr
oller.BindParameter(UInt32 parameterSets, CommandParame
terInternal argument, MergedCompiledCommandParameter pa
rameter, ParameterBindingFlags flags)
at System.Management.Automation.ParameterBinderContr
oller.BindPositionalParametersInSet(UInt32 validParamet
erSets, Dictionary`2 nextPositionalParameters, CommandP
arameterInternal argument, ParameterBindingFlags flags,
ParameterBindingException& bindingException)
at System.Management.Automation.ParameterBinderContr
oller.BindPositionalParameters(Collection`1 unboundArgu
ments, UInt32 validParameterSets, UInt32 defaultParamet
erSet, Boolean ignoreArgumentsThatLookLikeParameters, P
arameterBindingException& outgoingBindingException)
at System.Management.Automation.ScriptParameterBinde
rController.BindCommandLineParameters(Collection`1 argu
ments)
at System.Management.Automation.ScriptCommandProcess
or.EnterScope()
at System.Management.Automation.ScriptCommandProcess
or.RunClause(ParseTreeNode clause, Object dollarUnderba
r, Object inputToProcess)
at System.Management.Automation.ScriptCommandProcess
or.DoBegin()
at System.Management.Automation.Internal.PipelinePro
cessor.Start(Boolean incomingStream)
at System.Management.Automation.Internal.PipelinePro
cessor.SynchronousExecuteEnumerate(Object input, Hashta
ble errorResults, Boolean enumerate)
TargetObject :
CategoryInfo : InvalidData: (:) [ForEach-Object], ParameterBindin...ma
tionException
FullyQualifiedErrorId : ParameterArgumentTransformationError,Microsoft.PowerShe
ll.Commands.ForEachObjectCommand
ErrorDetails :
InvocationInfo : System.Management.Automation.InvocationInfo
PipelineIterationInfo : {1, 1}
PSMessageDetails :

```


-----------------------------------
| Automated SP2010 install script |
| Started on: 7/7/2015 11:51:34 AM |
| Aborted: 7/7/2015 11:52:31 AM |
-----------------------------------
PS C:\SP\AutoSPInstaller>
Comments: Associated with changeset 114878: Changes in this release:

- Various updates to code and comments to provide support for SharePoint 2016 IT Preview
- Updated version to 3.99.5
- Updated function Run-PSConfig based on recent clarification by Stefan Gossner (http://blogs.technet.com/b/stefan_gossner/archive/2015/08/20/why-i-prefer-psconfigui-exe-over-psconfig-exe.aspx)
- Script will now attempt to use pure PowerShell instead of makecert.exe to provision SSL certificates
- Project Server service app is now included with SharePoint 2016; made some basic modifications to accomodate this
- Updated & more reliable way of checking if SharePoint is already installed

Released: AutoSPInstaller for SharePoint 201x (Aug 26, 2015)

$
0
0
Package consisting of AutoSPInstaller (v3.x) files. The SharePoint / CodePlex community as always deserves big thanks for support, input and contributions! This release is stable for both SP2010and SP2013 and supports the latest service packs available for each (currently SP2 for 2010 and SP1 for 2013). Also, SharePoint 2016 IT Preview is now supported, both on Windows 2012 R2 as well as Windows Server 2016 Technical Preview 3!

Please see the Changesets for a history of changes up to and including the latest release, as well as theFAQ.

Also, have a read through the Known Issues and the News on AutoSPInstaller.com, particularly if you are going to take advantage of things like the new v3 remote functionality and support for SharePoint 2016 Preview.
Viewing all 2279 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>