Gentoo Archives: gentoo-server

From: Andrea Barisani <lcars@g.o>
To: gentoo-server@g.o
Subject: Re: [gentoo-server] strategies for upgrading packages in a large cluster of machines
Date: Wed, 15 Oct 2003 22:12:53
Message-Id: 20031015221251.GC29137@sole.infis.univ.trieste.it
In Reply to: [gentoo-server] strategies for upgrading packages in a large cluster of machines by Kurt Lieber
1 On Wed, Oct 15, 2003 at 02:51:47PM -0400, Kurt Lieber wrote:
2 > All --
3 >
4 > Curious what various suggestions you can offer for the following problem:
5 >
6 > I have a large cluster of machines that I will be building using Gentoo. I
7 > will be using partimage for the initial installation (build one gold server
8 > and clone the rest from it) and cfengine for ongoing configuration
9 > management of things like /etc/ files, etc.
10 >
11 > The one area I'm stuck on is how to manage package upgrades. I don't want
12 > to have to run 'emerge -u world' on each machine. In fact, I don't want to
13 > have to compile things on each machine. Ideally, I want to only have to
14 > upgrade one machine and have those changes propogate out automatically to
15 > the other machines from there. (All hardware will be identical)
16 >
17 > I've looked at rdist, but I've never used that before, so I'm not sure how
18 > well it would work.
19 >
20 > Another suggestion was maintaining a custom portage tree and running a
21 > nightly 'emerge -u --usepkg world' on all the boxes. Then, by making a
22 > change to the portage tree (which the other servers would sync from), it
23 > would propogate out to the servers automatically the next time the cron job
24 > ran. This is an option and probably the best one I have at this point, but
25 > it seems somewhat fragile -- one slip-up in the portage tree and I'm hosed.
26 > This also wouldn't work for installing new kernels
27
28 Ok, I've already responded privately to Kurt but I think it's best
29 republishing this link to the list in case someone it's interested. :)
30
31 Here [1] you'll find a summary on how I'm managing Gentoo on a 35 hosts
32 installation.
33
34 I've found that maintaining a single gold server and using 'emerge -k' to
35 propagate updates it's the best way. Of course something (like kernel and
36 baselayout) must be done manually (however I've got a separate procedure for conf files and
37 kernel is copied with them).
38
39 I've also found that at times portage lost track of some packages in
40 /var/cache/edb/world however having only a few 'gold' images to mantain you
41 can forget about db consistency on the clients since 'emerge -k' of an update
42 doesn't look at it. You can possibly forget about portage and simply issue a
43 tar -xvjf /packages/All/update.tbz2 I guess...
44
45 A simple script that parses and confront `epm -q -a|sort` output is used to
46 check package consistency between clients.
47
48 Bye
49
50 [1] http://article.gmane.org/gmane.linux.gentoo.sysadmin/65/match=keep+sanity
51
52 --
53 ------------------------------------------------------------
54 INFIS Network Administrator & Security Officer .*.
55 Department of Physics - University of Trieste /V\
56 lcars@××××××××××××××××××.it - PGP Key 0x8E21FE82 (/ \)
57 ---------------------------------------------------- ( )
58 "How would you know I'm mad?" said Alice. ^^-^^
59 "You must be,'said the Cat,'or you wouldn't have come here."
60 ------------------------------------------------------------