- A State Service Application has no database defined (SharePoint 2013)
- Accounts used by application pools or service identities are in the local machine Administrators group (SharePoint 2013)
- All State Service databases are paused for a State Service Application (SharePoint 2013)
- Alternate access URLs have not been configured (SharePoint 2013)
- Application pools recycle when memory limits are exceeded (SharePoint 2013)
- Business Data Connectivity connectors are currently enabled in a partitioned environment (SharePoint 2013)
- Cached objects have been evicted (SharePoint 2013)
- Critical state of this rule indicates that the Word Automation Services is not running when it should be running (SharePoint 2013)
- Content databases contain orphaned Apps (SharePoint 2013)
- Database has large amounts of unused space (SharePoint 2013)
- Databases exist on servers running SharePoint Foundation (SharePoint 2013)
- Databases require upgrade or not supported (SharePoint 2013)
- Databases running in compatibility range, upgrade recommended (SharePoint 2013)
- Databases used by SharePoint have outdated index statistics (SharePoint 2013)
- Databases within this farm are set to read only and will fail to upgrade unless it is set to a read-write state (SharePoint 2013)
- SPHA rule: Dedicated crawl target configuration has one or more invalid servers (SharePoint 2013)
- Distributed cache service is not enabled in this deployment
- Drives used for SQL databases are running out of free space (SharePoint 2013)
- Expired sessions are not being deleted from the ASP.NET Session State database (SharePoint 2013)
- Firewall client settings on the cache host are incorrect (SharePoint 2013)
- Immediate translations for the Machine Translation service are disabled (SharePoint 2013)
- InfoPath form library forms cannot be filled out in a Web browser (SharePoint 2013)
- InfoPath Forms Services forms cannot be filled out in a Web browser because no State Service connection is configured (SharePoint 2013)
- More Cache hosts are running in this deployment than are registered with SharePoint (SharePoint 2013)
- One of the cache hosts in the cluster is down (SharePoint 2013)
- One or more servers is not responding (SharePoint 2013)
- One or more web applications are configured to use Windows Classic authentication (SharePoint 2013)
- People Search relevance is not optimized when the Active Directory has errors in the manager reporting structure (SharePoint 2013)
- Product / patch installation or server upgrade required (SharePoint 2013)
- Search - One or more crawl databases may have fragmented indices (SharePoint 2013)
- Some content databases are growing too large (SharePoint 2013)
- The Application Discovery and Load Balancer Service is not running in this farm (SharePoint 2013)
- The InfoPath Forms Services Maintenance Timer Job not enabled (SharePoint 2013)
- The Machine Translation Service is not running when it should be running (SharePoint 2013)
- The number of Distributed Cache hosts in the farm exceeds the recommended value
- The Security Token Service is not available (SharePoint 2013)
- SharePoint Health Analyzer rules reference (SharePoint 2013)
- The settings for the Machine Translation Service are not within the recommended limits (SharePoint Server 2013)
- The settings for Word Automation Services are not within the recommended limits (SharePoint 2013)
- The server farm account should not be used for other services (SharePoint 2013)
- The State Service Delete Expired Sessions timer job is not enabled (SharePoint 2013)
- The timer service failed to recycle (SharePoint 2013)
- The unattended Service Account Application ID is not specified or has an invalid value (SharePoint 2013)
- The Visio Graphics Service has a maximum cache age setting that will adversely impact performance (SharePoint Server 2013)
- The Visio Graphics Service has a maximum cache size setting that may adversely impact performance ((SharePoint Server 2013)
- The Visio Graphics Service has a maximum recalculation duration setting that will adversely impact performance ((SharePoint Server 2013)
- The Visio Graphics Service has a maximum Web Drawing Size setting that will adversely impact performance (SharePoint Server 2013)
- The Visio Graphics Service has a minimum cache age setting that may cause a security issue ((SharePoint Server 2013)
- The Visio Graphics Service has a minimum cache age setting that will adversely impact performance ((SharePoint Server 2013)
- This Distributed Cache host may cause cache reliability problems (SharePoint 2013)
- Validate the My Site Host and individual My Sites are on a dedicated Web application and separate URL domain (SharePoint 2013)
- Verify each User Profile service application has a My Site host configured ((SharePoint Server 2013)
- Verify each User Profile Service Application has an associated Managed Metadata Service Connection ((SharePoint Server 2013)
- Verify each User Profile Service Application has an associated Search Service Connection (SharePoint Server 2013)
- Verify that OAuth is configured correctly for the Machine Translation Service application in SharePoint 2013
- Verify that OAuth is configured correctly for the Machine Translation Service application proxy in SharePoint 2013
- Verify that the Activity Feed Timer Job is enabled (SharePoint 2013)
- Verify that the critical User Profile Application and User Profile Proxy Application timer jobs are available and have not been mistakenly deleted (SharePoint 2013)
- Web Applications using Claims authentication require an update (SharePoint 2013)
- Web.config file has incorrect settings for the requestFiltering element (SharePoint 2013)
- Web.config files are not identical on all machines in the farm (SharePoint 2013)
- XLIFF translations for the Machine Translation Service is disabled (SharePoint 2013)
Workflow Manager is an added value to the SharePoint 2013, in the previous versions workflow was part of the SharePoint on SharePoint 2013 there are 2 flavors you can use when developing workflows the first one is the SharePoint 2010 workflow and the second and new one is the new workflow manager which is now a separate component, when you install the new workflow manager it will allow to create SharePoint 2013 workflows.
The Architecture of the Workflow Manager depends on several separate databases to save the workflows so now the workflows are stored on those separate databases and not on the content databases so important in any backup and restore to make sure that all those workflows are backed up in case restoration is needed and while restoring there are important steps and scripts that needs to run in certain order to restore the workflow farm correctly.
I will be walking through the steps to restore the workflow farms and the scripts used can be found in this link Scripts
Backup Workflow Manager
There are some components/information which need to be backed up and stored in order to restore workflow manager.
- Backup the following databases by following the Database backup procedures, the frequency of backup the DB is same as content databases.
|WFResourceManagementDB||Workflow Manager Resource Management Store|
|WFInstanceManagementDB||Workflow Manager Instance Management Store|
|SbGatewayDatabase||Service Bus Gateway Database|
|SBMessageContainer01 – n||Service Bus Message Container Databases|
- Document the users/passwords used while configuring workflow manager.
- Copy all the certificates generated during initial Workflow Manager Configuration and the certificate password and Important to save the thumbnail of the service bus certificate.
- Certificates will exist on local certificates in personal folder and full trusted certificates folder all of them need to be exported specially the service bus certificate.
- To know service bus certificate run the command Get-SBFarm the returned result will contain the farm certificate thumbprint, check this thumbprint on the local machine certificates in the personal folder.
- Export certificate with private key.
- Keep track of outage date and time when it happens as it will be needed.
- Document all ports used during initial configuration.
- Get the symmetric key using this command and save it. “Get-SBNamespace -Name WorkflowDefaultNamespace”.
- Save all scopes names specially the one used to register the workflow manager farm to do that run the getscopes.ps1 script
- Prepare a new machine to install workflow manager on the same domain as old machines
- Use the same accounts when the workflow manager was configured originally.
- Make sure that App Management service/service application running and subscription service too
- Make sure to have user profile and user profile synchronization running and run full synchronization.
- Install workflow manager on new machine but don’t configure it.
- To install workflow manager install web platform installer and search for “workflow manager refresh 1”
- Restore the backed up databases.
- Only the following database should be restored.
- SBMessageContainer* (all message container DBs)
- Note: Do not restore the WFManagementDB and SbManagementDb databases as they will be recreated as part of the restore operation.
- Restore any needed content DBs, web applications and site collections.
- Restore the certificates exported during backup.
- Open an elevated SharePoint PowerShell (Run as Administrator) window on the new machine.
- Copy all the scripts and the wfm.config to a folder and navigate to that folder from the SharePoint PowerShell console.
- Run restoreWFStep1 script (modify the parameters in the script as appropriate first).
- Run restoreWFStep2 script (modify the parameters in the script as appropriate first).
- For each container database, run the previous step after modifying the parameters. (optional if more than container database exists)
- Run restoreWFStep3 (modify the parameters in the script as appropriate and put the thumbprint for the imported certificate).
- Run restoreWFStep4 (modify the parameters in the script as appropriate first).
- Set-SBNamespace –PrimarySymmetricKey keyvalue -Name WorkflowDefaultNamespace
- Open new SharePoint PowerShell as Administrator.
- Navigate to the folder containing scripts from the SharePoint PowerShell console.
- Run the following commands
- $filename = Resolve-Path .wfm.config
- [System.AppDomain]::CurrentDomain.SetData(“APP_CONFIG_FILE”, $filename.Path)
- Run restoreWFStep5 script (modify the parameters in the script as appropriate first).
- Run restoreWFStep6 script (modify the parameters in the script as appropriate first).
- Adjust DNS for workflow manager.
- In IIS make sure to have the binding with the port for http for the workflow manager IIS site
- You may need to register the workflow farm with the scope name used in the original farm
- Register-SPWorkflowService -SPSite “http:/webapplication” -WorkflowHostUri “http://workfowsite:12291 ” -AllowOAuthHttp -Force -ScopeName “MyScope”
- This command needs to run on the SharePoint Farm.(It is optional step if the farm didn’t see the workflow)
- Run the following timer jobs from the central admin
- Workflow Auto Cleanup
- Notification Timer Job
- Hold Processing and Reporting
- Bulk workflow task processing
- Refresh Trusted Security Token Services Metadata feed [Farm job – Daily]
To add other workflow manager servers, just import the certificate and run restoreWFStep4 (after modifying the parameters) and then run restoreWFStep6 (after modifying the parameters).
There are other cases for restoration, in case if the application servers are not affected only the SQL server in this case the uninstall workflow manager from existing application server and then follow the above steps, once done you can uninstall workflow manager from other nodes and install workflow manager and reinstall it but don’t configure it just use the commands in script of restoreWFStep4 and restoreWFStep6
There is other case when the the application server is affected, in this case prepare a new machine and apply the above steps, then for any other node you can install workflow manager but don’t configure it just run restoreWFStep4 and restoreWFStep6 in the scripts to add those nodes.
Here are five storage-related issues in SharePoint that can kill performance, with tips on how to resolve or prevent them.
Unstructured data takeover. The primary document types stored in SharePoint are PDFs, Microsoft Word and PowerPoint files, and large Excel spreadsheets. These documents are usually well over a megabyte.
SharePoint saves all file contents in SQL Server as unstructured data, otherwise known as Binary Large Objects (BLOBs). Having many BLOBs in SQL Server causes several issues. Not only do they take up lots of storage space, they also use server resources.
Because a BLOB is unstructured data, any time a user accesses a file in SharePoint, the BLOB has to be reassembled before it can be delivered back to the user – taking extra processing power and time.
Move BLOBs out of SQL Server and into a secondary storage location – specifically, a higher density storage array that is reasonably fast, like a file share or network attached storage (NAS).
An avalanche of large media. Organizations today use a variety of large files such as videos, images, and PowerPoint presentations, but storing them in SharePoint can lead to performance issues because SQL Server isn’t optimized to house them.
Media files, especially, cause issues for users because they are so large and need to be retrieved fairly quickly. For example, a video file may have to stream at a certain rate, and applications won’t return control until the file is fully loaded. As more of this type of content is stored in SharePoint, it amplifies the likelihood that users will experience browser timeout, slow Web server performance, and upload and recall failures.
For organizations that make SharePoint “the place” for all content large and small, use third-party tools specifically designed to facilitate the externalization of large media storage and organization. This will encourage user adoption and still allow you to maintain the performance that users demand.
Old and unused files hogging valuable SQL Server storage. As data ages, it usually loses its value and usefulness, so it’s not uncommon for the majority of SharePoint content to go completely unused for long periods of time. In fact, more than 60 to 80 percent of content in SharePoint is either unused or used only sparingly in its lifespan. Many organizations waste space by applying the same storage treatment for this old, unused data as they do for new, active content, quickly degrading both SQL Server and SharePoint performance.
Move less active and relevant SharePoint data to less expensive storage, while still keeping it available to end users via SharePoint. In the interface, it helps to move these older files to different parts of the information architecture, to minimize navigational and search clutter. Similarly, we can “unclutter” the storage back end.
A third-party tool that provides tiered storage will enable you to easily move each piece of SharePoint data through its life cycle to various repositories, such as direct attached storage, a file share, or even the cloud. With tiered storage, you can keep your most active and relevant data close at hand, while moving the rest to less expensive and possibly slower storage, based on the particular needs of your data set.
Lack of scalability. As SharePoint content grows, its supporting hardware can become underpowered if growth rates weren’t accurately forecasted. Organizations unable to invest in new hardware need to find alternatives that enable them to use best practices and keep SharePoint performance optimal. Microsoft guidance suggests limiting content databases to 200GB maximum unless disk subsystems are tuned for high input/output performance. In addition, huge content databases are cumbersome for backup and restore operations.
Offload BLOBs to the file system – thus reducing the size of the content database. Again, tiered storage will give you maximum flexibility, so as SharePoint data grows, you can direct it to the proper storage location, either for pure long-term storage or zippy immediate use.
It also lets you spread the storage load across a wider pool of storage devices. This approach keeps SharePoint performance high and preserves your investment in existing hardware by prolonging its useful life in lieu of buying expensive hardware. It’s simpler to invest in optimizing a smaller SQL Server storage core than a full multi-terabyte storage footprint, including archives.
Not leveraging Microsoft’s data externalization features. Microsoft’s recommended externalization options are Remote BLOB Storage (RBS), a SQL Server API that enables SharePoint 2010 to store BLOBs in locations outside the content databases, and External BLOB Storage (EBS), a SharePoint API introduced in SharePoint 2007 SP1 and continued in SharePoint 2010.
Many organizations haven’t yet explored these externalization capabilities, however, and are missing out on significant storage and related performance benefits. However, native EBS and RBS require frequent T-SQL command-line administration, and lack flexibility.
Use a third-party tool that works with Microsoft’s supported APIs, RBS, and EBS, and gives administrators an intuitive interface through SharePoint’s native Central Administration to set the scope, rules and location for data externalization.
In each of these five problem areas, you can see that offloading the SharePoint data to more efficient external storage is clearly the answer. Microsoft’s native options, EBS and RBS, only add to the complexity of managing SharePoint storage, however, so the best option to improve SharePoint performance and reduce costs is to select a third-party tool that integrates cleanly into SharePoint’s Central Administration. This would enable administrators to take advantage of EBS and RBS, choosing the data they want to externalize by setting the scope and rules for externalization and selecting where they want the data to be stored.