ministryofjustice / modernisation-platform

A place for the core work of the Modernisation Platform • This repository is defined and managed in Terraform
https://user-guide.modernisation-platform.service.justice.gov.uk
MIT License
680 stars 289 forks source link

Identify key platform components then we might need to rebuild #1908

Closed davidkelliott closed 7 months ago

davidkelliott commented 2 years ago

User Story

As an MP engineer I need to know what to do if a component of the platform, eg networking component or AWS account, disappears. So that I can recreate it

Step 1. identify key components. Step 2 will be to create tickets for the individual runbooks

User Type(s)

Value

Questions / Assumptions / Hypothesis

Definition of done

Reference

How to write good user stories

github-actions[bot] commented 1 year ago

This issue is stale because it has been open 90 days with no activity.

github-actions[bot] commented 1 year ago

This issue is stale because it has been open 90 days with no activity.

ep-93 commented 7 months ago

https://user-guide.modernisation-platform.service.justice.gov.uk/runbooks/dr-process.html#priority-list - Priority List

https://user-guide.modernisation-platform.service.justice.gov.uk/runbooks/dr-process.html#single-account - Single account

dms1981 commented 7 months ago

I think @ep-93 has covered a lot of this, but I would see the following as platform components that would need to be reconstituted in the event of a region loss.

dms1981 commented 7 months ago

These two aren't platform components specifically, but would also need consideration:

dms1981 commented 7 months ago

With regards our KMS keys, the answer here might be to look more deeply into the provision of kms_replica_key resources, as also discussed here.

dms1981 commented 7 months ago

With regards to AWS Backup, we can also duplicate them into a separate region:

resource "aws_backup_plan" "replica" {
  ...
  rule {
    copy_action {
      destination_vault_arn = "arn:aws:backup:*:*:backup-vault:replica"
      lifecycle {}
    }
  }
}
dms1981 commented 7 months ago

So I think this gives us the following runbooks in need of creation for platform components: