Tuesday, December 20, 2016

Add Links to Resources List in SharePoint Central Administration

The Resources list in SharePoint Central Administration site lets you to keep frequently accessed links to the home page. Say for e.g. To access User profile service application, you'll have to navigate through:
  • Central Administration >> Application Management 
  • Manage Service Applications >> Search and pick your user profile service Application
in some other cases, you'll find a difficulty in navigating To-And-Fro in SharePoint Central Administration. So, Resources list comes handy to manage this hassle. Just add your frequently accessed links to it! When you log into SharePoint Central Administration site, you'll see the Resources link list in right pane.
Consider Resources list as your Favorites or Bookmarks List!
sharepoint 2013 central admin resources list
To Add a link/remove links in resources list:
  • Click on "Resources" link from SharePoint Central Admin home page (or your can Click the gear icon and click Site Contents >>  Find the Resources list)
  • From here you can add or delete the link like any list item.
    sharepoint 2013 add link to resources list in central admin
This saves time and effort, especially if you have trouble finding service applications in Central Admin.

Populate Resources List using PowerShell:
Lets use PowerShell to add items to Resources list in SharePoint Central Administration site.
Add-PSSnapin Microsoft.SharePoint.Powershell -ErrorAction SilentlyContinue

#Get Central Administration Site
$CentralAdminUrl = Get-SPWebApplication -includecentraladministration | where {$_.IsAdministrationWebApplication} | Select -ExpandProperty URL

#Get Resources list from Central Admin
$List = (Get-SPWeb -identity $CentralAdminUrl).Lists["Resources"]

#Get Service Applications to add to Resources List
$ServiceApps = Get-SPServiceApplication | Where {($_.TypeName -eq "Excel Services Application") `
                                 -or ($_.TypeName -eq "Managed Metadata Service") `
                                 -or ($_.TypeName -eq "User Profile Service Application") `
                                 -or ($_.TypeName -eq "Search Service Application") `
                                 -or ($_.TypeName -eq "Business Data Connectivity Service Application") }

#Loop through and Add Links to Resources list
foreach ($App in $ServiceApps)
    $Item = $List.Items.Add()
    $Item["URL"] = "$($App.ManageLink.Url), $($App.DisplayName)"

Write-Host "Service Application Links added to Resource List!" -f Green

You might also like:
SharePoint Usage Reports
Usage reports, collaboration and audit for SharePoint.
Document SharePoint Farm
Automatically generate SharePoint documentation.

Thursday, December 15, 2016

How to Create SharePoint 2016 Farm using PowerShell

Creating SharePoint 2016 farm using PowerShell is almost as same as in its previous version. In SharePoint 2016 there is an additional parameter -LocalServerRole added as SharePoint 2016 introduced MinRoles.

  • SQL Server is already installed and ready to use.
  • You have created a Farm account for SharePoint 2016.
  • You have logged in to the server (Setup account) which has Administrator access on all SharePoint servers and DB_Creator, Security_Admin Server roles in SQL Server.

Step 1: Install SharePoint 2016 prerequisites and binaries to each server in your proposed SharePoint 2016 farm.
install sharepoint 2016 farm using powershell
On completing the installation, Uncheck "Run the SharePoint Products Configuration Wizard now" and close the wizard.
create new sharepoint 2016 farm with Powershell

Step 2: PowerShell Script to Create SharePoint 2016 Farm:
Save the below script as "Create-Farm.ps1" or something like that, change the configuration settings parameters as per your environment. Open SharePoint 2016 Management Shell as Administrator, and run the script. You'll see
"The local farm is not accessible. Cmdlets with FeatureDependencyId are not registered."  error for the first time, which is quite normal, since we have not created the Farm yet! proceed running the script.

#Configuration Settings 
$DatabaseServer = "SP16-SQL"
$ConfigDatabase = "Intranet_Farm_Config"
$AdminContentDB = "Intranet_Farm_Content_Admin"
$Passphrase = "2FJlsXghFsas5vdJJKEXXwWF"
$FarmAccountName = "Crescent\Sp2016admin"

#Get the Farm Account Credentials
$FarmAccount = Get-Credential $FarmAccountName
$Passphrase = (ConvertTo-SecureString $Passphrase -AsPlainText -force)
#Create SharePoint Farm
Write-Host "Creating Configuration Database and Central Admin Content Database..."
New-SPConfigurationDatabase -DatabaseServer $DatabaseServer -DatabaseName $ConfigDatabase -AdministrationContentDatabaseName $AdminContentDB -Passphrase $Passphrase -FarmCredentials $FarmAccount -LocalServerRole $ServerRole

$Farm = Get-SPFarm -ErrorAction SilentlyContinue -ErrorVariable err  
if ($Farm -ne $null) 
Write-Host "Installing SharePoint Resources..."
Write-Host "Installing Farm Services ..."
Write-Host "Installing SharePoint Features..."
Install-SPFeature -AllExistingFeatures
Write-Host "Creating Central Administration..."              
New-SPCentralAdministration -Port 2016 -WindowsAuthProvider NTLM
Write-Host "Installing Help..."
Install-SPHelpCollection -All  
Write-Host "Installing Application Content..."
Write-Host "SharePoint 2016 Farm Created Successfully!"
Once the script completed successfully, You'll see farm created successfully message. Here I've used "SingleServer" as MinRole. You can adjust it based on your requirement.
Alternatively, You can create SharePoint Farm (Run script til line#15) and then Run Products configuration wizard to complete the rest of the steps in farm creation.

Add Additional Servers to the SharePoint 2016 Farm:
Once you are done with the creation of the SharePoint 2016 farm from first server, You can connect rest of the servers to the Farm either using SharePoint products configuration wizard or with PowerShell.

Open SharePoint products configuration wizard and choose "Connect to an existing server farm" and run through the wizard! Select the server MinRole as per your topology.
powershell script to create sharepoint 2016 farm

Join Additional Server to the SharePoint 2016 farm using PowerShell:
If you prefer PowerShell way to add an additional server to the farm, use this PowerShell script.  

Connect-SPConfigurationDatabase -DatabaseServer $DBServer -DatabaseName $DBName -PassPhrase $SecurePassPhrase -LocalServerRole $ServerRole
Write-Host "Installing SharePoint Resources..."
Write-Host "Installing Farm Services ..."
Write-Host "Installing SharePoint Features..."
Install-SPFeature -AllExistingFeatures
Write-Host "Installing Help..."
Install-SPHelpCollection -All  
Write-Host "Installing Application Content..."
Write-Host "Joined the Server to Farm Successfully!"
If you don't want the server to host Distributed cache, use the parameter: -SkipRegisterAsDistributedCacheHost and the end!
Related post: How to Create SharePoint 2013 farm using PowerShell

You might also like:
SharePoint Usage Reports
Usage reports, collaboration and audit for SharePoint.
Document SharePoint Farm
Automatically generate SharePoint documentation.

Wednesday, December 14, 2016

Open this link on a Phone - QR Code Feature in SharePoint 2016

SharePoint 2016 introduces a new feature to open links on your phone or tablet using QR codes. Here is how this feature works:
  • Go to any of your SharePoint 2016 library such as document library. From the document's context menu, click on the tiny phone icon.
    QR Code Open this link on a phone Feature in SharePoint 2016
  • This takes you to a page with QR code generated for the document URL. By default, every document is assigned with a Unique QR code.Open documents with QR code in sharepoint 2016
  • From your phone, use QR reader app to read the QR code and navigate to the document URL. This makes easier to share documents on mobile devices.

You might also like:
SharePoint Usage Reports
Usage reports, collaboration and audit for SharePoint.
Document SharePoint Farm
Automatically generate SharePoint documentation.

Thursday, December 8, 2016

How to Create State Service Application in SharePoint 2016

Lot of components like InfoPath Form services, Visio, Search Service, workflows, etc relies in State Service Application of SharePoint to store the application sessions. If its not configured already, you'd probably see error messages such as:

"The form cannot be rendered. This may be due to a misconfiguration of the Microsoft SharePoint Server State Service. For more information, contact your server administrator."

How to Create State Service application in SharePoint 2016?
State service application can't be created through new service application page. If you go to New dialog of Central Administration >> Manage Service Application page, you won't find it! here is how to create state service application in SharePoint 2016.
  • Go to Central Administration site >> Click on "Configuration Wizards" link from the bottom
  • In Configuration Wizards page >> click Launch the Farm Configuration Wizard link >> and then click "Start the Wizard".
    sharepoint 2013 configure state service application
  • On the services configuration page, under Services applications section, select the State Service check box (select any other service applications you may require) and click Next.
    create state service application sharepoint 2016 powershell
  • Click on Skip button if you set-up a top-level site collection. If not, go ahead and create it now by clicking OK.
You can verify the new state service application by: going to Central Administration > Application Management > Manage service applications >> State service application should be listed there!
create state service application sharepoint 2016
Once you created state service application, make sure your new state service application is associated with your web application by going to Central Administration >> Manage Web Applications >> Select your web application >> Click on "Service Application Associations" from the ribbon >> and in "Configure Service Application Associations" page, State Services should be selected.

Disadvantage: Configuration wizard creates state service database with GUIDs! E.g. StateService_2349fb4359fb45c9a5255562cb0eab0b. So, to avoid GUIDs in database, Create State service application using PowerShell:

SharePoint 2016: Create State Service Application using PowerShell
Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue

#Configuration variables
$ServiceAppName = "State Service Application" 
$ServiceAppProxyName ="State Service Application"
$DatabaseName ="SP16_State_Service"

#Create New State Service application
$StateServiceApp = New-SPStateServiceApplication -Name $ServiceAppName 

#Create Database for State Service App
$Database = New-SPStateServiceDatabase -Name $DatabaseName -ServiceApplication $StateServiceApp  

#Create Proxy for State Service
New-SPStateServiceApplicationProxy -Name $ServiceAppProxyName -ServiceApplication $StateServiceApp -DefaultProxyGroup  

Initialize-SPStateServiceDatabase -Identity $Database

Write-host "State Service Application Created Successfully!"

You might also like:
SharePoint Usage Reports
Usage reports, collaboration and audit for SharePoint.
Document SharePoint Farm
Automatically generate SharePoint documentation.

Tuesday, December 6, 2016

Configure My Sites in SharePoint 2016 - Step by Step Guide

SharePoint 2013 & SharePoint 2016 brought new social networking capabilities to the SharePoint collaboration space. With My Sites users can store documents, keep-up their profile information, news feed, contribute to the organization via blogs, follow activities on sites, people, tags, documents, etc! In short: My Site is the personal space for individual users in an organization. At high level, configuring my sites in SharePoint 2016 involves following steps:
  1. Create a dedicated web application & My Site host site collection
  2. Add a wildcard inclusion managed path to the web application
  3. Enable self-service site creation for the web application
  4. Create a permission policy & Grant everyone permission to My Site web application
  5. Configure My Site settings for the User Profile service application
This article walks you through step by step on creating and configuring My Sites for SharePoint 2016. Although this article aims at SharePoint 2016, same steps are applicable to SharePoint 2013 as well.

Before you create My Sites in SharePoint, you need to have the following services properly configured.
  • User Profile Service application - SharePoint My Sites depends on UPS! User Profile Service Application will be used to map the My Sites with the User Profiles.
  • Managed Metadata service application -  My Site users Keywords! so have MMS created  & configured prior setting up My Sites.
  • Search service application - not mandatory, but best practice for people search results!
Also make sure User Profile Service Application, Managed Metadata Service, and Search Service Application are up running and they are connected to your My site web application through service connections in Central Admin.

Step 1: Create New web application for My Sites

Although you can use an existing web application, its a best practice to create a dedicated web application for My sites for reasons like security, performance, etc. So, To start with, lets create a dedicated web application to host our my sites in SharePoint 2016.
  • Open SharePoint 2016 Central Administration site.
  • From Application Management >> Click the Manage Web Applications >> Click New to Create New Web Application.
  • Provide a Name, Port, Host Header, and fill the rest of the new web application form. Hit OK to create new web application.
create my site host sharepoint 2013

Create My Site Host Site Collection in SharePoint 2016:
Once the web application is created, proceed with creating a site collection in the root of the web application.
  • From SharePoint 2016 Central Administration, select Application Management and then select Create site collections
  • Select the Web application we created in the previous step. 
  • Provide a name and description to the site collection.
  • Choose the "My Site Host" as template.
  • Provide a primary site collection administrator.
  • Leave the quota option default.
  • Click the OK button to create the site collection.
create my site host sharepoint 2016

Step 2: Add new managed path to the My Site Web Application:

Managed paths defines the location to host site collections within a web application. In our environment, When SharePoint users provision their My Sites, we would like them to reside at http://mysite.crescent.com/personal/name-of-person/. So, We defined a wildcard managed path for "/personal/" as follows:
  • From SharePoint Central Administration >> Manage Web Application >> Select the My Site Host Web Application you just created.
  • In the ribbon click the Managed Paths button >> Define Managed Paths dialog, Add a new path called "personal" (or "my" or whatever you like!) and make it Wildcard inclusion. Click "Add Path" and then OK once done.
  • Optionally, You can delete the OOTB "Sites" managed path from My site web application.
    sharepoint mysite configuration

Step 3: Enable self-service site creation for the web application

Self-service site creation option enables the end user to create their own My site collection automatically.
  • Select your web application from Manage Web Applications page of Central Administration site.
  • Click on "Self Service Site Creation" button for the web application
    configure my site sharepoint 2013
  • Select "On" for Site Collections and "Prompt users to create a team site" under Start a Site. Provide the managed path we created ("/personal"). Leave the rest default.
    sharepoint 2013 my site step by step

Step 4: Add Permission Level Policy & User Permission to My Site Web Application (Optional):

Perform this step only when you want your users to create subsites under my site site collection. Create a permission level policy with "Create Subsites" rights.
  • Select your My Site web application and Click on the "Permission Policy" button from the ribbon. In the "Manage Permission Policy Levels", click on "Add Permission Policy Level" link.
    sharepoint 2016 mysite web application
  • Under Permissions, scroll to Site Permissions, select the Grant option for "Create Subsites - Create subsites such as team sites, Meeting Workspace sites, and Document Workspace sites". Now, the new permission policy level should appear among other policy levels.
    sharepoint 2016 my sites configuration
  • You need to grant that policy level to all users. Highlight your my site web application, Click on the "User Policy" button from the ribbon.
  • Click on "Add users" link >> Choose All zones and enter the users as "Everyone". Click OK to commit your changes.
    sharepoint 2013 my site creation

Step 5: Configure My Site URL in the User Profile Service Application

Alright, Now you have a My Site Web Application, My Site Host root site collection,  wildcard managed path and self-service enabled for the web application. The only remaining thing would be to set up My Site URL on User Profile Service Application, So that user profile service knows where to create new site collections for user My Sites. 
  • Go to Central Administration >> Application Management >> Manage service applications.
  • Select your User Profile Service Application >> On the Manage User profile service page, in My Site Settings section, click on "Setup My Sites" link.
    sharepoint 2013 my site step by step
  • Enter the My Site Host URL and click Save.
  • Specify other settings like Personal Site Location, Site Naming Format, Secondary Owner, etc.
Each My Site exists as a separate site collection to provide security isolation in SharePoint.

Optional: Set up interval for activity feed timer job
  • Go to the Central Administration >> Monitoring >> Timer Job >> Review job definitions
  • Find "User Profile Service Application - Activity Feed Job", and set up the activity feed sync time according to your needs. By default, its set to run for every 10 Minutes.

Create My Sites in SharePoint 2016:
So, we completed all configurations to get My sites up and running. Lets perform a quick test.
  • Go to any of the SharePoint site in the farm and select "About Me" link from the welcome menu.
  • You will redirected to your personal My Site home page if all fine, Where you can edit Your personal details like profile picture, contact information etc.
    sharepoint my site configuration
My Site Quota & Content Database sizing - Best Practices:
Setup Storage Quota for My Sites! By default, this setting is unlimited. - But you don't want your SQL disks get filled by My Sites, isn't it?

By default, The maximum number of site collections created per content database is 5000. If you are planning for 10,000 My Sites, of 100 GB each you'll need 1000 TB disk space! So, plan to adhere Content database sizing recommendation - 200 GB or less per content database for better performance.

Technet reference: Configure My Sites in SharePoint Server 2016

You might also like:
SharePoint Usage Reports
Usage reports, collaboration and audit for SharePoint.
Document SharePoint Farm
Automatically generate SharePoint documentation.

Friday, December 2, 2016

Shared MinRoles in SharePoint 2016 Feature Pack 1

MinRole was an exciting new feature introduced in SharePoint 2016. In Simple words, based on the MinRole you select during setting up your Farm, SharePoint 2016 automatically takes care of services to run on that server and optimizes it to delivers better performance and reliability. However, the downside is: You need Eight SharePoint servers to have an highly available SharePoint 2016 farm!

So now with Feature pack 1, You can combine Web Front End and Distributed Cache roles - Application and Search roles together! and you just need Four servers to have a highly available SharePoint 2016 farm instead of Eight! Apart from MinRoles enhancement, Feature pack 1 also brings features such as: Central Administration Administrative Actions Logging, Custom Tiles in the SharePoint app launcher, Hybrid Auditing, Hybrid Taxonomy, OneDrive API, etc.

If you have installed Feature pack 1 prior creating SharePoint 2016 farm, this how it looks like on farm creation wizard:
Shared MinRoles in SharePoint 2016 Feature Pack 1
If your SharePoint farm is already created, you can switch the MinRoles from SharePoint 2016 Central Administration site: How to switch Server's MinRole in SharePoint 2016

How to Install Feature Pack 1 in SharePoint 2016?
Download and install November 2016 CU which brings the Feature pack 1 for SharePoint 2016. In addition, If you have language packs installed in your farm, you need to download and install the November 2016 CU Language pack fix (Optionally, you can download and install all other updates from Technet - SharePoint 2016 Updates ,
Don't forget to run SharePoint products configuration wizard once After the installation!

You might also like:
SharePoint Usage Reports
Usage reports, collaboration and audit for SharePoint.
Document SharePoint Farm
Automatically generate SharePoint documentation.

You might also like:

Related Posts Plugin for WordPress, Blogger...