Skip to content

Commit

Permalink
Add runbook
Browse files Browse the repository at this point in the history
  • Loading branch information
MiroslavGatsanoga committed Jun 18, 2020
1 parent d5d075e commit eae5bcb
Show file tree
Hide file tree
Showing 2 changed files with 139 additions and 0 deletions.
38 changes: 38 additions & 0 deletions .github/runbooks.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# These settings determine the behaviour of runbook.md's Runbook Validator bot
# https://github.com/financial-times/runbook.md

# Everything below is optional

runbooks:
# All available settings are listed below

# Disable checks for this repo
# defaults to `false`
disabled: false

### SUPPORT FOR MULTIPLE RUNBOOKS IN A SINGLE REPOSITORY

# Fail checks if `any` | `all` | `none` runbooks fail validation
# defaults to `any`
failOn: any

### SUPPORT FOR UPDATING BIZ-OPS

# Update valid Biz-Ops runbooks on merge to a specific branch
#### IF YOUR DEPLOYMENTS ARE AUTOMATED (CircleCI, Heroku Pipelines)
#### PLEASE INTEGRATE WITH CHANGE-API INSTEAD
#### https://github.com/Financial-Times/change-api#change-api---v2
# defaults to `false`
updateOnMerge: true

# Merges to this branch trigger Biz-Ops updates updateOnMerge is `true`
# defaults to `master`
updateBranch: master

### UPDATING BIZ-OPS REQUIRES EACH RUNBOOK TO BE TIED TO A VALID SYSTEM CODE
# Mappings between paths and system codes
# unless a custom mapping is specified here
# runbook.md tries to parse the system code from the runbook's filename (format: my-sys-code_runbook.md)
systemCodes:
# paths are relative to root, omitting ./ (case-insensitive)
draft-annotations-api: runbooks/runbook.md
101 changes: 101 additions & 0 deletions runbooks/runbook.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
# PAC Draft Annotations API

Draft Annotations API is a micro-service that provides create, read, update and delete endpoints for draft annotations stored in PAC.

## Code
draft-annotations-api

## Primary URL
https://pac-prod-glb.upp.ft.com/__draft-annotations-api

## Service Tier
Platinum

## Lifecycle Stage
Production

## Delivered By
content

## Supported By
content

## Known About By

- elitsa.pavlova
- kalin.arsov
- marina.chompalova
- miroslav.gatsanoga
- ivan.nikolov
- donislav.belev
- mihail.mihaylov
- boyko.boykov

## Host Platform
AWS

## Architecture
Draft Annotations API is part of the PAC clusters, it is deployed in both EU and US regions with two replicas per deployment. The service uses the annotations published in UPP in order to produce draft annotations that are stored in PAC Aurora DB.

[PAC architecture diagram](https://app.lucidchart.com/publicSegments/view/22c1656b-6242-4da6-9dfb-f7225c20f38f/image.png)

## Contains Personal Data
No

## Contains Sensitive Data
No

## Dependencies
- annotationsapi
- internal-concordances
- generic-rw-aurora
- apigateway

## Failover Architecture Type
ActiveActive

## Failover Process Type
FullyAutomated

## Failback Process Type
FullyAutomated

## Failover Details
The service is deployed in both PAC clusters. The failover guide for the cluster is located [here](https://github.com/Financial-Times/upp-docs/tree/master/failover-guides/pac-cluster).

## Data Recovery Process Type
NotApplicable

## Data Recovery Details
The service does not store data, so it does not require any data recovery steps.

## Release Process Type
PartiallyAutomated

## Rollback Process Type
Manual

## Release Details
Manual failover is needed when a new version of the service is deployed to production. Otherwise, an automated failover is going to take place when releasing.
For more details about the failover process see the [PAC failover guide](https://github.com/Financial-Times/upp-docs/tree/master/failover-guides/pac-cluster).

## Key Management Process Type
Manual

## Key Management Details
The service uses sealed secrets to manage Kubernetes secrets.
The actions required to create/change sealed secrets are described [here](https://github.com/Financial-Times/upp-docs/tree/master/guides/sealed-secrets-guide/).

## Monitoring
Health Checks:
- [PAC Prod EU](https://pac-prod-eu.upp.ft.com/__health/__pods-health?service-name=draft-annotations-api)
- [PAC Prod US](https://pac-prod-us.upp.ft.com/__health/__pods-health?service-name=draft-annotations-api)

Splunk Alerts:
- [Concepts failed to be enriched by draft annotations API](https://financialtimes.splunkcloud.com/en-US/app/financial_times_production/alert?s=%2FservicesNS%2Fnobody%2Ffinancial_times_production%2Fsaved%2Fsearches%2FPAC%2520Concepts%2520failed%2520to%2520be%2520enriched%2520by%2520draft%2520annotations%2520API)

## First Line Troubleshooting
Please refer to the [First Line Troubleshooting guide](https://github.com/Financial-Times/upp-docs/tree/master/guides/ops/first-line-troubleshooting).

## Second Line Troubleshooting
Please refer to the GitHub repository README for troubleshooting information.

0 comments on commit eae5bcb

Please sign in to comment.