Roadmap about migration of public services into the cloudA step by step roadmap for Public Authorities to help them as they plan, determine effort and budget, select the appropriate services, make the required internal organisational changes and finally execute the migration into cloud.
Cloud scalability does not always eliminate application performance problems, and even after migrating to the cloud, applications might not scale up correctly (Pelerin, 2015). Performance testing aims to ensure that the deployed applications are fully functional and that they meet the initial set of requirements regarding cloudification. It also helps to solve issues such as database errors or application and website crashes. Testing should be done periodically and include general performance and compatibility tests, stress and load tests and security/vulnerability tests.
Validation of the automation process and functionality tests: Tests to ensure that the automation process is working well and the application performs as designed (e.g. the users can log in, capha works, google maps can be shown etc). For this test stakeholders should be involved as much as possible. More about monitoring and validation methodologies can be found here.
Stress and load tests: These tests evaluate the maximum load that the application can support, highlight potential weaknesses and size the cloud machines on which applications are deployed. There is a plethora of open source load test tools that can be used in the cloudification process, such as JMeter, the Grinder, Garling, Isung etc.
Security tests: security testing is a multilevel exercise that includes software performance and vulnerability assessment and it should be applied in different phases of the migration process. An entire section dedicated on security can be found here.
DISASTER PREVENTION AND RESTORING USING HA
In information technology, High Availability (HA) refers to the availability of systems and/or components in the aftermath of a failure. Availability is measured relative to “100% operational” or “never failing”. HA can be implemented using clustering, in order to increase the systems uptime. Generally speaking high availability is implemented using a group of machines, collectively called a high availability cluster, where the workload of a failed machine is automatically and quickly taken over by a different machine in the cluster. The main steps to perform such a task is to update the database related configuration files and then to perform the validation, using the same tools with the automation process described before.