1 |
On Tue, Jun 21, 2005 at 08:35:52PM +0200, Thierry Carrez wrote: |
2 |
> I don't say that it cannot be done, and I don't ask what's the best way |
3 |
> to do it. I just ask *if* we should try to provide higher-level tools |
4 |
> (and/or doc) to help in doing so. It's not obvious (especially for |
5 |
> non-developers) how to proceed in that situation, even if a lot of |
6 |
> people have designed their own solution in their corner. |
7 |
Best way to do it? Scary notion, not the way we're doing it |
8 |
currently. |
9 |
|
10 |
Push mode is preferable imo, 'cept no code exists to support that. |
11 |
Someone could write the necessary client/server code, but that would |
12 |
have issues when bound into existing portage apis... |
13 |
|
14 |
> >> With automatic deployments, would we run into difficult-to-solve |
15 |
> >> etc-update problems ? Should/could the ServicePack system take care of |
16 |
> >> that ? |
17 |
> > |
18 |
> > I wouldn't use etc-update for this on a enterprise rollout personally. |
19 |
> > If you need config cfengine does a nice job, as well as using |
20 |
> > cvs/rcs/something-else |
21 |
> |
22 |
> Again, the technology is out there, it's just not tightly integrated. |
23 |
> Should we leave it as-is and let everyone design his own tools to |
24 |
> connect the dots or should we ? |
25 |
Not sure if the technology persay is out there honestly. If it were a |
26 |
cluster, cloned boxes, I'd say minimalize CONFIG_PROTECT, and |
27 |
(assuming you write the client/server cruft above) slip in config pkgs |
28 |
that get installed alongside... or, just jam the config changes into |
29 |
the pkg (not clean but it's possible). Or just trigger |
30 |
staggered reboot's on the boxes if you've got a fast network and pxe |
31 |
boot + imaging setup (I like the other method a bit more however :) |
32 |
|
33 |
If you're managing a half dozen servers, each server running it's own |
34 |
customized httpd.conf, I don't see an easy way to handle that |
35 |
(would love to hear any ideas people have on that one). |
36 |
|
37 |
Basically, kind of curious of how one could easily handle config |
38 |
management of multiple boxes, with config's potentially being wildly |
39 |
different from system to system (talking about a bit more then just |
40 |
/etc/conf.d/net.* and /etc/hostname differences here). I suspect just |
41 |
wrapping the config changes into a bingpkg, and sliding them out |
42 |
alongside on a push would suffice, but that's just one possible |
43 |
method. |
44 |
|
45 |
> >> Even in a simpler setup (preprod > production) we don't have the tools |
46 |
> >> to push a software configuration change from a test machine to a |
47 |
> >> production one. |
48 |
> > |
49 |
> > What exactly are you looking for here? |
50 |
> |
51 |
> Should we provide high-level software that defines an update pack (new |
52 |
> binaries + configuration changes), allows to test it on a preproduction |
53 |
> system and (once tested) to push it to registered production systems ? |
54 |
> Or let everyone write his own treefreezing + network mounts + shell |
55 |
> scripts + cfengine / CVS magic combo to do it ? |
56 |
How do you push it? I don't mean, what protocol/underlying, I'm |
57 |
asking how do you actually push _portage_ to do what you want? Either |
58 |
you try and abuse the craptastic api in stable to pull it off, or you |
59 |
probably resort to a catalyst akin trick of calling emerge via system. |
60 |
|
61 |
Neither is a proper solution. Api is required, further, preferably |
62 |
portage innards being designed such that you can swap in your own |
63 |
remote subsystem (whether cache tree or config) so it's a matter of |
64 |
pushing commands down the client/server pipes, with the portage |
65 |
config/installation on that box pulling what it needs (remote tree == |
66 |
having to pull all relevant files if building, binpkg is easier |
67 |
however). |
68 |
|
69 |
> > Portage needs work; I know the devs are working on it, I know there |
70 |
> > are other people who are doing there own things. I see a lot of |
71 |
> > portage-2.1 features that greatly simplify what you are trying to do ( |
72 |
> > repositories, config rewrite..etc.. ). I think portage and what it |
73 |
> > covers is a big part of this. Recollecting a conversation with jstubbs |
74 |
> > about portage he mentioned that he wouldn't want the portage-team to |
75 |
> > maintain a Enterprise-like distribution program, but that the new API |
76 |
> > would be great to write one against ;) |
77 |
> |
78 |
> I don't think it should be the role of the portage-team either. |
79 |
|
80 |
I draw a slightly finer line... portaged, some hypothetical |
81 |
client/server ap, not our business to implement, just provide an api |
82 |
for them to use. Thing is, if they're going remote, they'll either |
83 |
need to be able to trigger sync's on the boxes local tree |
84 |
(innefficient as all hell), or the tree is remote. If the tree is |
85 |
remote, that falls on portage devs head to provide a framework so the |
86 |
tree can be remote, in other words abstraction/framework design. |
87 |
|
88 |
Further... if you're pushing updates out, you need some method to |
89 |
query the vdb from the target- even if you're dealing with pushing |
90 |
updates down to a set of identical installations, you need to identify |
91 |
(easily/cleanly) what needs to be built, and what needs to be pushed |
92 |
down the line. Dancing around it, but you need access to the vdb for |
93 |
that system definition, which probably would be stored locally... in |
94 |
which case, the system targets probably would need to have a remote |
95 |
vdb. |
96 |
|
97 |
Implementing all of the crazy and fun stuff isn't portage (the |
98 |
project) business (interest in it personally, but other things have |
99 |
much higher priority). To do the crazy/fun stuff requires a sane |
100 |
design so stuff can be swapped in/out as required, which falls on our |
101 |
heads though, and is what's being kicked around/worked on now. |
102 |
|
103 |
> > I know Cardoe and genstef? are working on a seperate package manager |
104 |
> > that just handles binaries but uses all the current portage stuff, so |
105 |
> > you might want to talk to them as well. |
106 |
> |
107 |
> I sure hope they will comment on that thread :) |
108 |
Kind of curious what they're attempting myself, since I've not heard |
109 |
much thus far... |
110 |
~harring |
111 |
-- |
112 |
gentoo-dev@g.o mailing list |