I am using unattended-upgrades across multiple servers. I would like package updates to be rolled out gradually, either randomly or to a subset of test/staging machines first. Is there a way to do that for APT on Ubuntu?

An obvious option is to set some machines to update on Monday and the others to update on Wednesday, but that only gives me only weekly updates...

The goal of course is to avoid a Crowdstrike-like situation on my Ubuntu machines.

edit: For example. An updated openssh-server comes out. One fifth of the machines updates that day, another fifth updates the next day, and the rest updates 3 days later.

  • gnuhaut@lemmy.ml
    ·
    2 months ago

    Ubuntu only does security updates, no? So that seems like a bad idea.

    If you still want to do that, I guess you'd probably need to run your own package mirror, update that on Monday, and then point all the machines to use that in the sources.list and run unattended-upgrades on different days of the week.

    • remram@lemmy.ml
      hexagon
      ·
      2 months ago

      Ubuntu only does security updates, no?

      No, why do you think that?

      run your own package mirror

      I think you might be on to something here. I could probably do this with a package mirror, updating it daily and rotating the staging, production, etc URLs to serve content as old as I want. This would require a bit of scripting but seems very configurable.

      Thanks for the idea! Can't believe I didn't think of that. It seems so obvious now, I wonder if someone already made it.