public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
From: R0b0t1 <r030t1@gmail.com>
To: gentoo-dev@lists.gentoo.org
Subject: Re: [gentoo-dev] Managing updates on many identical Gentoo systems
Date: Thu, 18 Jan 2018 17:00:43 -0600	[thread overview]
Message-ID: <CAAD4mYgT5iUKbA-tfpsqePHr+drngpU6tgvtKCpp1LmBJPE73A@mail.gmail.com> (raw)
In-Reply-To: <2686de8e-334c-084b-4828-6109b10dd536@gentoo.org>

Hello,

There's been a lot of relevant points but I'm not sure how to stitch
together all of the posts so I will reply to the OP.

On Thu, Jan 18, 2018 at 5:46 AM, Anthony G. Basile <blueness@gentoo.org> wrote:
> Hi everyone,
>
> I'm trying to design an update system for many identical Gentoo systems.
>  Using a binhost is obvious, but there are still problems with this
> approach.
>

How are the hosts administered now? Which problems are you referring to?

It's my understanding that Debian/Fedora/etc. based datacenters have
all of their machines crunching dependencies individually. There may
be local mirrors, but it looks like people have not seen fit to
centralize dependency information.

> Unless there's some magic I don't know about (and this is why I'm
> sending this email) each machine still needs to have the portage tree
> installed locally (1.5 GB) or somehow mounted by a network filesystem
> (which is not practical if the machines are not on a local network).
> Furthermore, each machine would have to run emerge locally to do the
> calculation of what packages need updating.
>
> This procedure is redundant because each machine is housing the same
> data and doing the same dependence-tree calculation.  It should be
> possible to do this calculation on a centralized binhost and simply
> communicate the update information to the remote machines.  They would
> then only have to download the .tbz2's and install them, keeping a tidy
> /var/db/pkg.  Thus they avoid having to house the portage tree and
> burning cpu cycles that just calculate redundant information.
>

Is it necessary to retain information that would be used to administer
the machines on the machines? You could treat your servers as embedded
appliances. The typical method used in that case is to push an entire
root to them at once. For safety's sake a separate system partition
can receive the system image; system data is kept elsewhere.

This would require some small customization by way of update code to
unpack the new system and modify bootloader entries. All configuration
of the system apart from that would have to be handled upstream when
the release was prepared, or stored on the data partition.

This is done for lots of devices (phones?) and works well even when
bandwidth is fairly limited.

Cheers,
     R0b0t1


      parent reply	other threads:[~2018-01-18 23:00 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-01-18 11:46 [gentoo-dev] Managing updates on many identical Gentoo systems Anthony G. Basile
2018-01-18 12:00 ` Joakim Tjernlund
2018-01-18 12:34 ` Lars Wendler
2018-01-18 19:22   ` NP-Hardass
2018-01-18 12:42 ` Martin Gysel
2018-01-18 15:36 ` [gentoo-dev] " Duncan
2018-01-18 22:13   ` Bill Kenworthy
2018-01-19 14:45     ` Alec Warner
2018-01-19 15:03       ` Anthony G. Basile
2018-01-19 18:13         ` Zac Medico
2018-01-20 15:34         ` Anthony G. Basile
2018-01-20 21:48           ` Zac Medico
2018-01-18 16:13 ` [gentoo-dev] " Alec Warner
2018-01-18 23:01   ` Zac Medico
2018-01-18 22:30 ` Alexander Tsoy
2018-01-18 22:53   ` Alexander Tsoy
2018-01-18 23:00 ` R0b0t1 [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAAD4mYgT5iUKbA-tfpsqePHr+drngpU6tgvtKCpp1LmBJPE73A@mail.gmail.com \
    --to=r030t1@gmail.com \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox