Here are some recommendations for MokaFive customers and partners who are implementing large scale deployments, setting up MokaFive for 2,000 endpoints.
Many considerations go into designing a scalable robust application infrastructure. Those considerations vary quite a bit from application to application and organization to organization. In fact, agreeing on the goals and constraints of the proposed system is typically the most important task in ensuring an efficient, relevant architecture.
When considering a MokaFive deployment, the following goals are typical and will be used to drive the example design covered in this post:
- Minimize WAN traffic
- Minimize user wait times for initial deployment and updates
- Meet 4 hour SLA in the event of a server failure
- Meet 24 hour SLA in the event of a site failure
- Eliminate single points of failure within application
- Support up to 2000 users
Meeting these goals will be achieved using the following system design components:
- Dedicated database servers
- Geographically distributed image store infrastructure
- High availability configuration
- Disaster recovery configuration
The result is focused on classifying each data source within the MokaFive system based on the amount of data it typically carries. Since the policy and reporting data transferred between management servers and client as well as between management servers and database servers is of a small size, those systems will be centralized with multiple systems provided for redundancy only. On the other hand the image stores carry, replicate and deliver larger amounts of data and are therefore designed with a distributed approach to minimize WAN traffic and delivery times in addition to providing disaster recovery and high availability.