|
|
| |
|
JAILMANAGER
|
| |
|
A management solution for FreeBSD-Jails
|
| |
|
(simplfied maintainance and creation of virtual-server-environments)
|
| |
|
| |
The documentation is currently only available in german language.
(see README-file in the top-level dir)
The current release is 0.1 : [DOWNLOAD]
## Overview:
## What we need:
* Translators for the documentation
* Bug reports
* ...
## Authors and Licence
Marc Schoechlin [ms@256bit.org]
Licence : FreeBSD Licence
## Software - Environment
-> FreeBSD 4.6 and higher
-> Perl v5.6.1 and higher
## How to get and install:
# Get the Software
* Anonymous CVS
---
mkdir ~/cvs/
cd ~/cvs/
touch ~/.cvspass
# password: lfnet
cvs -d:pserver:anoncvs@anoncvs.lf.net:/serv/cvs login
cvs -d:pserver:anoncvs@anoncvs.lf.net:/serv/cvs checkout jailmanager
---
* via HTTP [DOWNLOAD]
# ...to be continued....
Detailed Documentation is
currently only available in German Language.
Look at jailmanager/doc/* and especially at jailmanager/doc/setup-jail-server
## Basic Features
The use of Jailmanger gives you several advantages compared
to a regular jail-setup.
-> centralized software management
-> no redundance files
-> no time consuming updates
-> automated setup of the central software-reference
-> every virtual server only needs an minimal disc-space of 10 megabytes
-> automated setup and creation of virtual-servers
-> maintenance shell for every virtual server
-> automated starting and stopping of jails
-> maintenance-tools which helps you to get informations
about the currently configured jails.
-> showing the processes for every jail/for a certain jail
-> showing the status of jails
-> Logging of maintenance-tasks to a logfile
-> every information about a certain jail is populated in
one single directory.
(this increases transparence, and makes it very easy to
transfer a jail to another hosting-server.)
-> batched configuration changes
-> execution of a certain script/program in every jail
-> optional interactive mode, which helps to verify
automated actions
-> passing of environment-variables which contain the
configuration data of a certain jail to the executed
programs to ease configuration tasks.
-> /SW-Support
/SW is a concept for maintaining software for multiple
hardware-platforms - it´s somethin LF.net-internal :-)
Non-LF.net users can use this directory, which is mounted
in every user-jail at the "/sw"-mountpint, for maintaining
global software-installations.
-> shellscript-supported update of configuration-files
->identifying of differences beetween the reference and
the user-jail
->interactive merging of configfiles
-> multi-ip-support for each jail
(it is neccessary to patch your hostsystem)
## ultrashort design overview
* master-jail:
This jail is automatically generated from /usr/src by a script,
and represents the software-reference for every user-jail
(see description below).
This Jail is fully functional - but it will be never directly
used for productive needs.
The directory where the master-jail resides is read-only mounted
to every user-jail with the mount_null-command.
* user-jail:
Jails of this type provide the different virtual-server-environments.
Almost all files which are need for the complete virtual server, are
provided by the master-jail directory which is mounted to a certain
directory within the user-jail.
All directories of the user-jail are symlinked to the corresponding
directory in the master-jail - except those which are needed for
local modifications. (i.e /etc/, /var/, /root, ....)
example view to such a user-jail file-system:
----
root@install07 $ls -la
total 25
drwxr-xr-x 13 root wheel 512 Mar 10 13:10 .
drwxr-xr-x 13 root wheel 512 Mar 10 13:10 ..
lrwxrwxr-x 1 root wheel 30 Mar 5 14:31 .cshrc -> /master/.cshrc
lrwxrwxr-x 1 root wheel 32 Mar 5 14:31 .profile -> /master/.profile
lrwxrwxr-x 1 root wheel 33 Mar 5 14:31 COPYRIGHT -> /master/COPYRIGHT
lrwxrwxr-x 1 root wheel 27 Mar 5 14:31 bin -> /master/bin
lrwxrwxr-x 1 root wheel 28 Mar 5 14:31 boot -> /master/boot
drwxr-xr-x 13 root wheel 512 Mar 5 14:31 client
drwxr-xr-x 3 root wheel 1536 Mar 6 09:36 dev
drwxr-xr-x 11 root wheel 1536 Mar 6 13:52 etc
lrwxrwxr-x 1 root wheel 9 Mar 5 14:31 kernel -> /dev/null
drwxr-xr-x 2 root wheel 512 Mar 5 14:31 mnt
lrwxrwxr-x 1 root wheel 31 Mar 5 14:31 modules -> /master/modules
dr-xr-xr-x 1 root wheel 512 Mar 10 13:10 proc
drwxr-xr-x 5 root wheel 512 Mar 6 09:38 root
lrwxrwxr-x 1 root wheel 28 Mar 5 14:31 sbin -> /master/sbin
drwxrwxr-x 3 root wheel 512 Mar 5 14:31 serv
lrwxrwxr-x 1 root wheel 15 Mar 5 14:31 sw
lrwxrwxr-x 1 root wheel 27 Mar 5 14:31 sys -> /master/sys
drwxrwxrwt 3 root wheel 512 Mar 10 03:01 tmp
drwxrwxr-x 3 root wheel 512 Mar 5 14:31 usr
drwxr-xr-x 20 root wheel 512 Mar 5 10:24 var
----
The master-jail is read-only mounted to /master with
mount_null.
(the man-page says that mount_null "MAY, IN FACT, DESTROY DATA ON YOUR SYSTEM" -
this warning was written in 1995 - i think this is a little bit outdated.
On several web-sites you can read that mount_null is stable enough - we only use mount_null
for read-only filesystems.)
The typical environment for a user-jail looks like that:
/<path-to-the-user-jails>/<hostname>/fs
/<path-to-the-user-jails>/<hostname>/conf
The "fs"-directory contains the files like described above,
the "conf" file of contains jail-specific configuration-data.
(IP-address, ...)
|
|
| |
|