[lxc-devel] Q: general lxc architecture
Andrian Nord
nightnord at gmail.com
Wed Nov 11 23:21:57 UTC 2009
On Wed, Nov 11, 2009 at 09:30:27PM +0100, Daniel Lezcano wrote:
> What I have in mind is to just copy the file somewhere with lxc-create
> and remove it with lxc-destroy. And, much more later, integrate in a
> nicer way lxc-debian, lxc-sshd, lxc-fedora, lxc-busybox, etc ...
Yes, I got it, but I was about source for copying, i.e.
/etc/lxc/template.conf or, maybe, /usr/share/lxc/template/, etc - you
plan to do it on some hardcoded path (say /usr/share/lxc/template), or,
maybe, concept of global /etc/lxc.conf (with option
lxc.create.template = /usr/share/lxc/template) would be introduced
But this is not so important, anyway, but, still, global config might be
useful for certain things.
> Not exactly.
>
> 1) You created the container before, lxc-start/lxc-execute use the
> configuration.
> 2) You didn't create the container before, lxc-start/lxc-execute use the
> configuration file specified in the command line (if none specified,
> then default values).
>
> eg. lxc-start/lxc-execute -f <config> -n mycontainer -- /bin/bash
>
> At present, this is what happens more or less because when you call
> lxc-execute and the container does not exist, it is created before and
> destroyed after. In case of failure, (machine crash, lxc bug, kill -9),
> the container is not destroyed.
>
> And I think it is much more simple to keep a single generic
> configuration to pass it to several lxc-start/lxc-execute instead of
> creating them before. But that do not prevent the create the containers
> before to keep a persistent configuration for a specific container. Both
> behavior are kept.
Yes, yes, I got the primary idea, but... You mean, that I could have
different configs for temporary containers (read - autochroot), but I
may have single rootfs? But it's value controlled by lxc.rootfs
option, so it may be done at present.
But if you intend a fallback-config pattern like 'if container is
persistent, than read it's config, otherwise read specified fallback-config',
how could I change some configuration values to make my containers
different in, say, network ip, or utsname?
This seems to be usable only for network-less containers, or containers
that can share exactly same roots - i.e. for isolating/limiting specific
tasks. Autochroot - again. But, as it seems for me, it might became slightly
more usable, if there whould be an additional option, like
lxc-execute --define lxc.network.ipv4=192.168.1.2/24 -f <config> -n ...
In that way it could be used for spawning isolated networked applications
or small full-featured temporary containers sharing most of fs (via ro
binds), but having small exclusive amount of diskspace (or ramspace via
tmpfs). This could be used for providing save-and-cheap dynamically
spawned and cleaned full featured demo-environments for, say, educational
purposes. I.e. it could be used as terminal server, for example.
> Aha, good point ! To be fixed :)
I'm using lxc for one-and-half servers (participating in configuring
of second one), and I've got a few ideas how it could be improved in
different ways. I'm planning to implement them as I would have some more
free time, but may I previously post them here (as another thread), maybe
you have some additional ideas or another design view?
> Oops, you moved a wrong one :)
What do you mean? Are you about garbaged patch? I don't know why it
happens =) Should I attach patch?
Or you are about what it does?.. Or something else?
I'm sorry for requestioning, I hardly understand short phrases without
context (due to just too big variety of possible translations)
More information about the lxc-devel
mailing list