README.grid.rst 2.79 KB
Newer Older
1 2
grid
====
Łukasz Nowak's avatar
Łukasz Nowak committed
3

4 5 6 7
.. warning::
  This section is outdated, ``slapgrid`` command was reorganised in ``slapos`` sub-commands.


8
slapgrid is a client of SlapOS. SlapOS provides support for deploying a SaaS
Łukasz Nowak's avatar
Łukasz Nowak committed
9 10 11
system in a minute.
Slapgrid allows you to easily deploy instances of softwares based on buildout
profiles.
12
For more informations about SLAP and SlapOS, please see the SLAP documentation.
Łukasz Nowak's avatar
Łukasz Nowak committed
13 14 15


Requirements
16
------------
Łukasz Nowak's avatar
Łukasz Nowak committed
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

A working SLAP server with informations about your computer, in order to
retrieve them.

As Vifib servers use IPv6 only, we strongly recommend an IPv6 enabled UNIX
box.

For the same reasons, Python >= 2.6 with development headers is also strongly
recommended (IPv6 support is not complete in previous releases).

For now, gcc and glibc development headers are required to build most software
releases.


Concepts
32
--------
Łukasz Nowak's avatar
Łukasz Nowak committed
33 34 35 36 37 38 39 40 41 42

Here are the fundamental concepts of slapgrid : 
A Software Release (SR) is just a software.
A Computer Partition (CP) is an instance of a Software Release.
Imagine you want to install with slapgrid some software and run it. You will
have to install the software as a Software Release, and then instantiate it,
i.e configuring it for your needs, as a Computer Partition.


How it works
43
------------
Łukasz Nowak's avatar
Łukasz Nowak committed
44 45 46 47 48 49 50 51 52 53

When run, slapgrid will authenticate to the SLAP library with a computer_id and
fetch the list of Software Releases to install or remove and Computer
Partitions to start or stop.
Then, it will process each Software Release, and each Computer Partition.
It will also periodically send to SLAP the usage report of each Computer
Partition.


Installation
54
------------
Łukasz Nowak's avatar
Łukasz Nowak committed
55

56
With easy_install::
Łukasz Nowak's avatar
Łukasz Nowak committed
57

58
  $ easy_install slapgrid
Łukasz Nowak's avatar
Łukasz Nowak committed
59 60 61 62 63 64 65 66 67 68

slapgrid needs several directories to be created and configured before being
able to run : a software releases directory, and an instances directory with
configured computer partition directory(ies).
You should create for each Computer Partition directory created a specific user
and associate it with its Computer Partition directory. Each Computer Partition
directory should belongs to this specific user, with permissions of 0750.


Usage
69
-----
Łukasz Nowak's avatar
Łukasz Nowak committed
70 71 72 73 74 75 76 77

slapgrid needs several informations in order to run. You can specify them by
adding arguments to the slapgrid command line, or by putting then in a
configuration file.
Beware : you need a valid computer resource on server side.


Examples
78
--------
Łukasz Nowak's avatar
Łukasz Nowak committed
79 80

simple example : 
81
Just run slapgrid:
Łukasz Nowak's avatar
Łukasz Nowak committed
82

83 84 85
  $ slapgrid --instance-root /path/to/instance/root --software-root
  /path/to/software_root --master-url https://some.server/some.resource
  --computer-id my.computer.id
Łukasz Nowak's avatar
Łukasz Nowak committed
86 87


88 89 90 91 92 93 94 95 96 97 98
configuration file example::

  [slapgrid]
  instance_root = /path/to/instance/root
  software_root = /path/to/software/root
  master_url = https://slapos.server/slap_service
  computer_id = my.computer.id

then run slapgrid::

  $ slapgrid --configuration-file = path/to/configuration/file
Łukasz Nowak's avatar
Łukasz Nowak committed
99