WSO2 Support Services provides new users an onboard process as you start your journey deploying WSO2 solutions. As part of this process, a solution readiness checklist (SRC) will help you ensure that the solution is as intended and includes WSO2’s recommendations for a production-ready deployment.
Solution Readiness Checklist
Business usecase document:
Do you have a Business usecase document you can share or a simple statement of business
intent for using WSO2 Products ?
Identifying a use case is very important when choosing the right solution.
Identifying Products/ Features/ Extensions :
Did you identify the right set of products/features/extensions by considering their respective intended use cases?
Problems could have multiple solutions. It's important to identify the optimum solution.
Design Diagrams :
The Design diagram gives a clear visual picture of the architecture at different levels of deployment. This helps to easily review the solution on many angles. Do you have following design diagrams ?
Solution Architecture Diagram : The solution in detail with product mappings (WSO2 and other products)
Deployment Architecture Diagram : The deployment architecture in detail with product deployment / clustering / deployment tooling / automation agents / geographical distribution etc.
Capacity Planning :
- 4.1 Have you considered what the expected average and peak loads to the system may be?
- 4.2 Have you calculated the required number of product instances to support the load ?
It's important to identify whether the system can handle the current expected load and ability to serve future demands.
Lower (Pre-Production) Environments :
- 5.1 Do you have at least one environment that is identical to production ?
- 5.2 Do you have a dev environment that can be used for verification without impacting existing usages ?
Recommendation is to verify everything in the lower environment before applying it to production.
High Availability and Scalability :
- 6.1 Does the system handle the single point of failure (full HA) or partially handles it (partial HA - i.e you have added high availability for some components , but not for all components) ?
- 6.2 Can the system be easily scaled?
Availability of the system depends on the business functionality handled through the deployment. Our recommendation is to have at least the minimum high availability to the system. However, there are times when the system should be capable of scaling when demand increases.
Deployment Zones :
- 7.1 Is deployment going to be On-Premise, Cloud, Multi-Cloud or Hybrid?
- 7.2 Are components deployed in the right security zones (DMZ, MZ)?
- 7.3 Is your deployment multi-regional ? Change to: Is your deployment multi-regional?
Deployment zones should be considered when you have servers with different purposes. Specific factors like which components can be deployed in the DMZ, Geographical distribution of the deployment and, data centers should be considered.
Update Process :
Is there a CI-CD process and a mechanism to verify and apply product updates?
Software can contain bugs and security vulnerabilities. Many vendors follow different approaches when issuing patches or updates which normally involves downtime and requires an automated verification process. WSO2 issues updates through the WUM tool and all deployments should have an update process configured to accept the update as described here.
Deployment Infrastructure and Recomendations :
- 9.1 Is the deployment configured with supported JDK version ?
- 9.2 Is the deployment configured with a supported DB type and version ?
- 9.3 Does the deployment comply with the recommended CPU allocation ?
- 9.4 Does the deployment comply with the recommended JVM allocation ?
- 9.5 Does the deployment comply with the recommended Disk allocation ?
It's always recommended to configure the deployment with vendor tested products and solutions. This document document contains the resource recommendations for WSO2 servers and this document contains the recommendations for DB servers.
Test Plan :
Do you have a test plan covering all the use cases?
It's recommended to have a test plan covering all the testing scopes and activities covering for all use cases.