1

We're hosting multiple Websites with different Content Management Systems, also with different Versions. There are multiple Debian servers running on one esxi. I want to introduce a Windows-like Patch day every month, where we upgrade the packages on the servers. I'm curious how other admins plan such patch days. I've planed it so far:

  • aptitude update && aptitude upgrade --simulate -V to see which packages needs to be upgraded and if there are any major upgrades.
  • Make a snapshot of the Server
  • Upgrade the packages
  • Check server logs and take some Website samples

If all was successful, deleting the snaptshot 3 days after. If there a any errors, restore the snapshot and take a deeper look at the problem. I know this concept is quite sketchy. How's your patch routine? I'm worried that the upgrade may break some dependencies. But the are to many Websites to manually check every for their specific dependencies. I think of some kind of semi-automatic unit test, to check that the dependencies are still intact after every patch day. Did anybody has a buzz word, to start my search from?

We are using Icinga to monitor all servers, including monitoring for CPU Load, HDD space etc. Also we have a good running backup system.

Thanks in advance

2
  • 1
    Typically best practice is to have, in addition to your live production servers, a testing/staging/UAT environment where you first deploy your patches. There you do your patching, testing and resolve any issues and only then you patch production systems. Second rather than a generic upgrade on production you only upgrade to the same version of the packages you tested with, to prevent any updated packages released since your testing from becoming an unknown factor. Reverting to snapshot can be useful but you run the risk of also losing up to three days of data when you revert to an old snapshot
    – HBruijn
    Dec 18, 2014 at 10:14

1 Answer 1

0

There is apt-btrfs-snapshot in Ubuntu which offers such functionality as (IIRC) APT hooks if the root file system is btrfs. It's not in Debian though, IIRC because it's not reliable enough yet.

There are also instructions for how to do that with LVM (inside the VM) on the net, too, e.g. in this answer at AskUbuntu.

If you require the packages or APT repositories of a specific date, e.g. because you tried the updates on a test system, it worked fine there, but there are new updates available you don't want to deploy immediately (or which are newer versions than the one you tested), you may want to have a look at the Debian Snapshot Archive.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .