Difference between revisions of "EGI Marketplace Services Availability and Continuity Plan"
|(One intermediate revision by the same user not shown)|
Latest revision as of 14:35, 20 May 2020
|Main||EGI.eu operations services||Support||Documentation||Tools||Activities||Performance||Technology||Catch-all Services||Resource Allocation||Security|
|Documentation menu:||Home •||Manuals •||Procedures •||Training •||Other •||Contact ►||For:||VO managers •||Administrators|
Back to main page: Services Availability Continuity Plans
work in progress
This page reports on the Availability and Continuity Plan for the EGI Marketplace Services and it is the result of the risks assessment conducted for this service: a series of risks and treats has been identified and analysed, along with the correspondent countermeasures currently in place. Whenever a countermeasure is not considered satisfactory for either avoiding or reducing the likelihood of the occurrence of a risk, or its impact, it is agreed with the service provider a new treatment for improving the availability and continuity of the service. The process is concluded with an availability and continuity test.
|Risks assessment||2019-07-24||Q3 2020|
|Av/Co plan and test||2019-11-25||Q3 2020|
Previous plans are collected here: https://documents.egi.eu/secure/ShowDocument?docid=3552
Availability requirements and performances
In the OLA it was agreed the following performances targets, on a monthly basis:
- Availability: 90%
- Reliability 95%
Other availability requirements:
- the service is accessible through X509 certificate and Check-in
- the service is accessible via webUI
The service availability is regularly tested by nagios probe org.nagiosexchange.Portal-WebCheck: https://argo-mon.egi.eu/nagios/cgi-bin/status.cgi?servicegroup=SITE_EGI-MARKETPLACE_egi.Portal&style=overview
Risks assessment and management
For more details, please look at the google spreadsheet. We will report here a summary of the assessment.
|Risk id||Risk description||Affected components||Established measures||Risk level||Expected duration of downtime / time for recovery||Comment|
|1||Service unavailable / loss of data due to hardware failure||MP user GUI, user database, service database, order database||All services are running on virtual machines. In case of hardware failure of the host machine the virtual machine can be re-instantiated.||High||up to 8 hours (1 working day)||It is necessary to verify the implementation status of the hardware HA configuration.|
|2||Service unavailable / loss of data due to software failure||MP user GUI, user database, service database, order database||Restoring of the codebase via git repository,monitoring of system health, backupsRestoring of the codebase via git repository,monitoring of system health, backups||Medium||up to 4 hours||the measures already in place are considered satisfactory and risk level is acceptable|
|3||service unavailable / loss of data due to human error||MP user GUI, user database, service database, order database||Restoring of the codebase via git repository, monitoring of system health, restore of backup of virtual machine,||Medium||less than 1 hour||the measures already in place are considered satisfactory and risk level is acceptable|
|4||service unavailable for network failure (Network outage with causes external of the site)||MP user GUI||Monitoring of service availability, ACC Cyfronet AGH has redundant network connectivity.||Low||up to 4 hours||the measures already in place are considered satisfactory and risk level is acceptable|
|5||Unavailability of key technical and support staff (holidays period, sickness, ...)||-||More personnel have been involved in the operation of the Marketplace Service||Low||1 or more working days||the measures already in place are considered satisfactory and risk level is acceptable|
|6||Major disruption in the data centre. Fire, flood or electric failure for example||MP user GUI, user database, service database, order database||The computing centre has electric backup system and fire control devices.||Medium||1 or more working days||the measures already in place are considered satisfactory and risk level is acceptable|
|7||Major security incident. The system is compromised by external attackers and needs to be reinstalled and restored.||MP user GUI, user database, service database, order database||Monitoring of system health, security audits, backups, following best practices for security configuration and timely implementation of patches||Low||up to 8 hours (1 working day)||the measures already in place are considered satisfactory and risk level is acceptable|
|8||(D)DOS attack. The service is unavailable because of a coordinated DDOS.||MP user GUI||Local network team provides monitoring and protection for DOS attacks, firewall can limit impact of the DDoS||Medium||less than 1 hour||the measures already in place are considered satisfactory and risk level is acceptable|
Currently there is no hardware HA configuration. It is important agreeing with the provider a plan for implementing it in order to decrease the rating of risk number 1. The progress on this will be tracked on Jira.
The provider has got internal procedures to invoke in case of risk occurrence
The Availability targets don't change in case the plan is invoked.
- Maximum tolerable period of disruption (MTPoD) (the maximum amount of time that a service can be unavailable or undelivered after an event that causes disruption to operations, before its stakeholders perceive unacceptable consequences): 1 day
- Recovery time objective (RTO) (the acceptable amount of time to restore the service in order to avoid unacceptable consequences associated with a break in continuity (this has to be less than MTPoD)): 4 hours
- Recovery point objective (RPO) (the acceptable latency of data that will not be recovered): 1 day
Approach for the return to normal working conditions as reported in the risk assessment.
Availability and Continuity test
The proposed A/C test will focus on a recovery scenario: the service is supposed to have been disrupted and needs to be reinstalled from scratch. The last backup of the data will be used for restoring the service, verifying how much information will be lost, and the time spent will be measured.
Performing this test will be useful to spot any issue in the recovery procedures of the service.
Test details and outcome
1. Deploy new virtual machines in OpenStack cloud using automatic ansible scripts (haproxy, rails environments, databases: Postgres, elastic search, Redis) 2. Restore databases and configurations from backups using scripts. 3. Run setup deployment script (clone marketplace source code from GitHub https://github.com/cyfronet-fid/marketplace, build and run puma and sidekick services) 4. Setup haproxy to proxy services form new machines. 5. Associate floating IP addresses in OpenStack to haproxy service and open firewall. 6. Test instance https://marketplace.eosc-portal.eu
The duration of the test was 1 hour, which is an acceptable time. In case any problem occurs during the recovery process, the duration is expected to increase till 4 hours.
|Alessandro Paolini||2019-07-24||first draft, discussing with the provider|
|Alessandro Paolini||2019-08-22||the provider confirmed there is no hardware HA configuration; added new content about Ava requirements (to be refined) and additional information in risk assessment section (to be refined); the provider is going to plan a recovery test.|
|Alessandro Paolini||2019-11-28||plan finalised|