Design Sitecore xDB solution with following assumptions:
- Split solution into:
- Key components, used by page visitors (P0)
- Secondary components, used by content authors (P1)
- Redundancy for key components, 24/7 monitoring
- Office hours only monitoring for secondary components
(Click the diagram for full size)
- We duplicated all instances required by front-end to fully operate. This includes: content delivery server, SQL Server’s Web and Core databases, MongoDB and Solr.
- We have two data centres (or physical servers), on first we install all P1 components and by one instance of P0 components. We also replicate Core and Web databases from first data centre to second, so every CD server connects to Web & Core on its own data centre.
- Content management server and related components are accessed only during business hours, from company’s internal network, therefore doesn’t require 24/7 monitoring.
- In this solution, we expect lot of analytics data, therefore “Processing” role is on separate instance. If analytics data size is not an issue, xDB data processing can be done on CM role. For now, we skip remote reporting, which is done on CM instance, but can be easily separated in the future if needed.
- MongoDB and SQL server data backup is not part of the diagram not to overcomplicate it, but for sure should be included.
- Configure Sitecore servers https://doc.sitecore.net/…/configuring_servers
- Configure connection strings in Sitecore https://doc.sitecore.net/…/database_connection_strings_for_configuring_servers
- SQL server replication support in Sitecore https://kb.sitecore.net/articles/423602
- Guide how to replicate SQL server (mirroring) in Sitecore https://sdn.sitecore.net/…/sql_server_replication_guide_sc63-64-a4.pdf