How can you maintain a Sitecore website effectively?

How can you maintain a Sitecore website effectively?

Authored by Ameex Technologies on 26 Nov 2020

Types of Maintenance

There are four types of site maintenance tasks

Corrective maintenance includes tasks related to fixing site errors and failures

Update maintenance includes tasks related to updating code, assemblies, caches and security

Upgrade maintenance includes tasks related to upgrading the Sitecore version and hardware

Preventive maintenance includes tasks that help to avoid errors, site outages and slow response times

 

Corrective Maintenance

Performing corrective maintenance tasks

  • Inspect, detect and correct errors in a systematic way.
  • Unmaintained systems tend to be less reliable
  • Address incipient issues before they become major
  • Steadily narrow the scope to troubleshoot issues
  • Add other maintenance types to minimize costs
  • Corrective maintenance can be the least cost effective

Update Maintenance

Performing scheduled update maintenance tasks

  • Caching and other settings need to be tuned regularly
  • Microsoft security updates need to be installed ASAP
  • Scheduled maintenance is a key success factor
  • Maintenance is a recurring process, not an event
  • Maintenance should be done on a regular schedule
  • Provides for budgeting of site updates and simple fixes
  • Once a month may be enough for tight budgets

Upgrade Maintenance

Performing upgrade maintenance tasks

  • Product enhancements are only available on upgrades
  • Newer versions address bugs in earlier versions
  • Timely upgrades help to avoid multi-stage upgrades
  • An annual upgrade should be enough for most sites

SITECORE1

 

 

 

 

 

 

 

 

 

 

Preventive Maintenance

Performing preventive maintenance tasks

  • Extends the useful lifetime of a website
  • Eliminates the expense of unexpected downtime
  • Helps avoid and mitigate site failures
  • Neglected websites eventually fail
  • Responding reactively to site failures can be expensive
  • Preventive is less stressful than corrective maintenance

Setting Maintenance Scope

Define a scope for planned maintenance

  • Business requirements
  • Review your Sitecore implementation and deployment
  • Identify your business needs and tolerance for risk
  • Create a practical maintenance plan
  • Financial requirements
  • Review existing support and maintenance agreements
  • Identify resources available to perform maintenance
  • Specify the distribution of maintenance information

SITECORE2

 

 

 

 

 

 

 

 

Using a Maintenance Checklist

Use a maintenance checklist for efficiency

  • Helps ensure maintenance gets done regularly
  • Helps ensure checks & actions do not get skipped
  • Provides a history of completed maintenance actions

Create a custom checklist for your organization

  • Tailor maintenance tasks to your business needs 
  • Some maintenance tasks can be done less frequently
  • Some maintenance tasks can be skipped entirely
  • Start with a generic checklist and then customize it
  • Have your Sitecore partner create a custom checklist
  • Use these slides to build your own custom checklist

Using Maintenance Windows

Schedule a maintenance window

  • Schedule site down time for maintenance support
  • Ensures no users are logged on during maintenance
  • Generally scheduled for off hours once a month
  • Disclose it to allow clients to prepare for disruptions
  • Should be part of any Service Level Agreement (SLA)

Display a simple maintenance page to visitors

  • Notifies visitors that your site still exists
  • Lets visitors know that maintenance is only temporary
  • Display message in all languages supported by the site

Hosting Service’ Maintenance

Routine ‘hosting service’ maintenance actions

  • Log on to hosting service to verify access before need
  • Check for messages/warnings from hosting service
  • Verify when hosting agreement is scheduled to expire
  • Verify remaining free space for backups
  • Consider re-creating disk safes to reclaim lost space
  • Review users with access to hosting service interface
  • Disable unused accounts and users on extended leaves

Server System Maintenance

Routine server system maintenance actions

  • Review Windows System log for warnings & errors
  • Review Windows Application log for warnings & errors
  • Remove server roles that are unused or not needed
  • Verify server configuration documentation is accurate
  • Verify change control documentation is up-to-date
  • Review recent system performance logs in PerfMon
  • Verify performance logging is occurring regularly
  • Compare current performance statistics with baseline

Server File System Maintenance

Routine server file system maintenance actions

  • Verify file system backups are occurring as scheduled
  • Use Disk Management to check the status of drives
  • Verify remaining free space on file system
  • Check file system fragmentation levels
  • Verify scheduled defragmentation is occurring off hours
  • Manually defragment disks as needed
  • View the Windows Recycle Bin & empty as needed

Server Security Maintenance

Routine server security maintenance actions

  • Install latest Microsoft security updates
  • Reboot server for security updates to take effect
  • Review Windows Security logs
  • Check for both successful and failed audited actions
  • Disable unused Windows accounts for users on leave
  • Check members of Local Administrators group
  • Check users with Remote Desktop access
  • Check users with FTP access

IIS Maintenance

Routine IIS maintenance actions

  • Stop and disable any unused or unwanted web sites
  • Review the IIS logs for 404 and other errors
  • Review the recently logged IIS performance counters
  • Make a backup of your IIS configuration information
  • Open a console to C:\Windows\System32\inetsrv
  • Type "appcmd.exe add backup "
  • Press the key to backup all IIS config settings
  • The backup is added to the C:\Windows\System32\inetsrv\backup folder
  • Copy your IIS backup file to a separate server

SQL Database Maintenance

Routine SQL database maintenance actions

  • Verify your logon to SQL Server Management Studio
  • Verify database backups are occurring as scheduled
  • Take any unused or unneeded SQL databases offline
  • Compare recent SQL performance stats with baseline
  • Run DBCC CHECKDB on databases to verify integrity
  • Use Index Physical Statistics report for index rebuilds

Configure Maintenance Plans for routine actions

  • Runs an automated set of tasks on a scheduled basis
  • Eliminates the need for manual maintenance
  • Verify Maintenance Plan is running as scheduled

ASP.NET Code Maintenance

Routine ASP.NET code maintenance actions

  • Fixing non-optimum behavior of a site
  • Adding new functionality to a site
  • Updating code to use strongly-typed controls
  • Minimizes the amount of strings in code
  • Compiler can catch more errors at build time
  • Updating Web Forms to Model-view-controller (MVC)
  • Archiving or removing stale code files

Routine source control maintenance actions

  • Check Git or other source control logs for errors
  • Check CCNET for errors

Sitecore Maintenance

Routine Sitecore maintenance actions

  • Use the Sitecore Control Panel to update databases
  • Rebuild the Link Database for all databases
  • Rebuild the Search Index for all indexes
  • Clean up Databases for all databases
  • Tune all Sitecore caches as needed
  • Use /sitecore/admin/stats.aspx for slow renderings
  • Use /sitecore/admin/cache.aspx for tuning caches
  • Use the Sitecore Control Panel to update databases
  • Disable unused admin accounts for users on leave
  • Review Sitecore logs for application restarts & errors
  • Open Sitecore Support tickets as needed
  • Review the Sitecore Recycle Bin and empty as needed

Content Tree Maintenance

Routine Content Tree maintenance actions

  • Locate items that contain more than 10 versions
  • Remove or archive oldest versions to reduce versions
  • Identify items with more than 100 immediate children
  • Consider distributing children to descendant locations
  • Use bucket items for huge amounts of descendants
  • Review the Quick Action Bar for items with issues
  • Items with validation errors
  • Items with duplicate names and same parent
  • Items with broken links
  • Items with missing versions
  • Items with publishing warnings

Advanced System Reporter

Use Advanced System Reporter for maintenance

  • Sitecore shared source module
  • Generates reports on Sitecore maintenance issues
  • You can schedule reports to be emailed regularly
  • Available at http://marketplace.sitecore.net

SITECORE3

 

 

 

Sitecore Analytics Maintenance

Digital Marketing System maintenance actions

  • Verify DMS is successfully recording analytics
  • Review recent Engagement Analytics reports
  • Update visitor classifications
  • Correct issues in Site Health reports
  • Check Analytics Status Information for failures
  • Sitecore Control Panel > Analytics > Status Information
  • Check up on DMS campaigns and multivariate tests
  • View Executive Insight Dashboard graphs
  • Verify remaining number of MaxMind lookups

Google Analytics Maintenance

Google Analytics (GA) maintenance actions

  • Verify you can log on to the Google Analytics site
  • Use the Dashboard to verify GA is recording analytics
  • Verify GA account and email settings are correct

SITECORE4

 

 

 

 

 

 

 

 

 

 

In Summary

  • There are four types of site maintenance tasks
  • Corrective maintenance can be the least cost effective
  • Perform maintenance on a regularly scheduled basis
  • Timely upgrades help to avoid multi-stage upgrades
  • Create a practical maintenance plan
  • Create a custom checklist of maintenance tasks
  • Include servers, databases, IIS, code, analytics, etc.
  • Advanced System Reporter helps with Sitecore tasks

Download Ameex's Drupal Maintenance Checklist