Wednesday, 25 October 2017

SharePoint Admin Daily / Weekly / Monthly Activities

SharePoint  Admin Daily / Weekly / Monthly Activities

1 Managing and checking the overall server health and functionality
2 Monitoring SharePoint disk space usage through the built-in SharePoint reports for each site collection
3 Managing SharePoint permissions
4 Analyzing and reporting upon SharePoint usage and activity
5 Moving/copying sites
6 Supporting network load balancing needs and ensuring its correct operation (NLB)
7 Regular review of the events and messages reported in Event Viewer and Performance Monitor
8 Regular review, clean-up, management and configuration of SharePoint accounts and sites. This portion of the role will work closely with an Active Directory administrator if they are separated.
9 Regularly analyzing SharePoint content and storage
10 Monitoring SharePoint trends (e.g. site usage and growth, disk space usage and growth)
11 Setting up alerts and enforcing policies
12 Regularly auditing your SharePoint environment
13 Identifying and reporting governance violations
14 Checking for operating system, SQL Server and SharePoint patches and cumulative updates.

One-time / First-time Farm Activities

1. Determine general patch approach for applying patches 
2. Windows O/S (Windows Update)
3. SQL Server (Service Packs) 
4. Document the overall system architecture
5. Document the disaster recovery plan for data center, server, or document recovery
6. Determine search architecture (What is indexed?, how often?, etc.)
7. Determine design continuity (What templates are used for each area)
8. Determine best practices for creation of Sites, Site Collections, and content databases
9. Determine strategy for business intelligence in SharePoint (upon dashboards, where is 
the data stored?, how is it presented?, etc.)
10. Create SharePoint Service Level Agreement
11. Create best practices document for taxonomies
12. Create best practices document on security configuration
13. Create SharePoint roles document
14. Determine who can access the site (internal only? customers?)
15. Determine how partners and users will navigate the sit
16. Determine the process to request a site
17. Determine the process to request access to sites
18. Create best practices document to explain how and when to publish a document to a 
global audience (should they be PDFs?)
19. Create feedback and/or suggestion mechanism for site enhancements
20. Determine naming conventions
21. Develop process for FAQ (users and help desk)
22. Develop training process

Daily Activities

1. Review Windows Event Logs for high-priority issues 
2. Review the SharePoint Logs for high-priority issues
3. Monitoring Third party tool, Services, web sites, applications
4. Tickets ,XIS Reports, Calls, Think about new PowerShell Script (Such as Automation , Monitoring tools)
5. Workflow task, web site permission issue , make daily To-do list , IIS Logs , UlS Logs, Think about innovation ideas.
6. Search about SharePoint Blogs , Article, Forums and utilizes resolved the issues. 
Weekly Activities

1. Review Search Usage reports 
2. Attempt searches upon typical end-user searches – verify they work properly 
3. Verify Alerts are functioning properly 
4. Enhance search through audit of Search patterns (implementation of noise words, best bets, 
keywords, thesaurus entry, etc.)
5. Review and maintain current BI cubes and web parts (if applicable) 
6. Audit server utilization (disk IO, disk space, CPU, etc.) and update baseline 
7. Review past week questions and issues and update FAQ 
8. Ensure off-site backup procedure working properly

Monthly Activities

1. Review overall server architecture based on current use 
2. Audit individual server design (each server) 
3. Review released patch list for Windows Operating System, SQL Server and SharePoint 
4. Apply patches per the pre-defined patch approach
5. Review patches or maintenance to third-party controls (web parts, iFilters, etc.)
4. Review overall server architecture diagrams and documentation for updates and revisions 
5. Review search architecture for new areas to index, crawl or exclude 
6. Report on SharePoint uptime and SLA compliance 
7. Review security hierarchy 
8. Review new functions or sites deployed. Determine if training needs to be updated
9. Verify backups are valid and contain data

Quarterly Activities

1. Review company disaster recovery plan

Annual Activities

1. Exercise a company disaster recovery plan
2. Plan for upgrade: SQL, Windows, SharePoint 2016, PU, CU, Production end user cleanup task (site, dbs, uls, old user, ups cleanup task)

Removing items from the Office 365 Search Index - Cloud hybrid Search

Reference Link:Removing items from the Office 365 Search Index

Script:
<#
.SYNOPSIS
    Issue a call to SPO to delete all external content indexed through Cloud hybrid search. This operation is asynchronous.
.PARAMETER PortalUrl
    SharePoint Online portal URL, for example 'https://contoso.sharepoint.com'.
.PARAMETER Credential
    Logon credential for tenant admin. Will prompt for credential if not specified.
#>
param(
    [Parameter(Mandatory=$true, HelpMessage="SharePoint Online portal URL (PPE), for example https://contoso.spoppe.com.")]
    [ValidateNotNullOrEmpty()]
    [String] $PortalUrl,
    [Parameter(Mandatory=$false, HelpMessage="Logon credential for tenant admin. Will be prompted if not specified.")]
    [PSCredential] $Credential
)
$SP_VERSION = "15"
$regKey = Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Office Server\15.0\Search" -ErrorAction SilentlyContinue
if ($regKey -eq $null) {
    $regKey = Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Office Server\16.0\Search" -ErrorAction SilentlyContinue
    if ($regKey -eq $null) {
        throw "Unable to detect SharePoint installation."
    }
    $SP_VERSION = "16"
}
Add-Type -AssemblyName ("Microsoft.SharePoint.Client, Version=$SP_VERSION.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c")
Add-Type -AssemblyName ("Microsoft.SharePoint.Client.Search, Version=$SP_VERSION.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c")
Add-Type -AssemblyName ("Microsoft.SharePoint.Client.Runtime, Version=$SP_VERSION.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c")
if ($Credential -eq $null)
{
    $Credential = Get-Credential -Message "SPO tenant admin credential"
}
$context = New-Object Microsoft.SharePoint.Client.ClientContext($PortalUrl)
$spocred = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($Credential.UserName, $Credential.Password)
$context.Credentials = $spocred
$manager = New-Object Microsoft.SharePoint.Client.Search.ContentPush.PushTenantManager $context
$task = $manager.DeleteAllCloudHybridSearchContent()
$context.ExecuteQuery()
Write-Host "Started delete task (id=$($task.Value))"



Record this task ID as you may need it if calling Microsoft Support should the process for any reason fail. The task is asynchronous, that is, you can leave it to continue on running in the Office 365 Search Farm and it will eventually complete.
After this final step you will get no more feedback but you can track the effect of the task by running a search query for the managed property IsExternalContent=1 . The screen shots below were taken just before the purge, then a short time later and you can see the reduction in the estimated item count for the same query.

Thursday, 5 October 2017

Backup and Restore Service Applications in SharePoint 2013

Finding the path of a service application in SharePoint 2013

Open the SharePoint Administration Shell and enter: Backup-SPFarm -ShowTree
Backup-SPFarm -Directory "C:\Backup" -BackupMethod Full -Item "Farm\Shared Services\Shared Services Applications\User Profile Service" –Force

(OR)

SQL Backups for Service Applications with Database Content

There are five service applications that hold content in databases that you can backup directly from SQL. You can’t get both the service application settings and the content this way, but you can usually recreate the service applications without much trouble and then just leverage the content from the backed up service applications by performing a database restore from your SQL backup and set the destination to be the new service application database.
The service applications components that you can backup directly from SQL are:
–        Search Administration (but not the index)
–        Business Data Connectivity
–        Secure Store
–        User Profile Service social database
–        User Profile Service profile database
–        Managed Metadata
Those databases can be backed up and restored through the SQL Server Management Studio. Using this approach, you can easily create a service application on a new farm, and then use SQL Server Management Studio to restore the backed up copy of the service application database over the newly created one.