Linux Labs

SRE practices: SLOs, incidents, redundancy / Stage 4 of 8 · step 6 of 7

The site broke after a release

medium ~20 min
Not running Starting usually ~20 s
Report a problem

Situation

An alert came in: the books.lab.test bookshop answers with error 500. The home page, the catalogue pages, even the style files — everything returns 500. Visitors are on the site right now.

The site is static content on nginx. CI deploys it: every release is unpacked into its own directory /srv/books/releases/<version>, and nginx serves the files from /srv/books/current.

Task

Bring the site back first; the cause will be reviewed later.

  1. The site runs again on the release that served the pages before the failure: /srv/books/current is a link to that release.
  2. Every address of http://books.lab.test/ answers 200.
  3. The visitors do not lose a single answer: nginx is not restarted or stopped.
  4. The failed release stays in releases/ untouched — the failure will be reviewed from it.

Constraints

  • Don't change the nginx configuration: the site is still served from /srv/books/current.
  • Don't edit the release files.

The nginx logs are read with sudo. There is no internet on the machine.

Visible only to you. Saved as you type.

All notes

Lab goals

0 of 4
  • /srv/books/current is a link to the release that was live before the failed rollout — not checked yet
  • A series of requests to http://books.lab.test/ during the check — every answer is 200, the pages come from that release — not checked yet
  • nginx was not restarted or stopped — only reloaded; the site configuration is unchanged — not checked yet
  • The failed release stays in releases/ untouched — for the review — not checked yet

Hints

0 of 3 open · they open one at a time
Hint 1
Show the solution after 3 failed checks

Leave the lab?

The machine keeps running for 10 more minutes, then it is removed. Files are lost; completed goals stay.

Loading…