X-Git-Url: https://code.grnet.gr/git/ganeti-local/blobdiff_plain/328201a5b60e1ba8de380af7d39fbfc732afb614..6386c5460133dc532106705af481f55bd5f1fb03:/INSTALL diff --git a/INSTALL b/INSTALL index 6238416..fa9ca65 100644 --- a/INSTALL +++ b/INSTALL @@ -48,6 +48,7 @@ Before installing, please verify that you have the following programs: - `Python IP address manipulation library `_ - `Bitarray Python library `_ +- `GNU Make `_ These programs are supplied as part of most Linux distributions, so usually they can be installed via the standard package manager. Also @@ -55,7 +56,15 @@ many of them will already be installed on a standard machine. On Debian/Ubuntu, you can use this command line to install all required packages, except for RBD, DRBD and Xen:: - $ apt-get install lvm2 ssh bridge-utils iproute iputils-arping \ + $ apt-get install lvm2 ssh bridge-utils iproute iputils-arping make \ + ndisc6 python python-openssl openssl \ + python-pyparsing python-simplejson python-bitarray \ + python-pyinotify python-pycurl python-ipaddr socat fping + +For older distributions (eg. Debian Squeeze) the package names are +different.:: + + $ apt-get install lvm2 ssh bridge-utils iproute iputils-arping make \ ndisc6 python python-pyopenssl openssl \ python-pyparsing python-simplejson python-bitarray \ python-pyinotify python-pycurl python-ipaddr socat fping @@ -64,13 +73,6 @@ If bitarray is missing it can be installed from easy-install:: $ easy_install bitarray -Or on newer distributions (eg. Debian Wheezy) the above becomes:: - - $ apt-get install lvm2 ssh bridge-utils iproute iputils-arping \ - ndisc6 python python-openssl openssl \ - python-pyparsing python-simplejson python-bitarray \ - python-pyinotify python-pycurl python-ipaddr socat fping - Note that this does not install optional packages:: $ apt-get install python-paramiko python-affinity qemu-img @@ -83,12 +85,12 @@ For example:: $ cd / && sudo easy_install \ affinity \ bitarray \ - ipaddr \ + ipaddr On Fedora to install all required packages except RBD, DRBD and Xen:: - $ yum install openssh openssh-clients bridge-utils iproute ndisc6 \ + $ yum install openssh openssh-clients bridge-utils iproute ndisc6 make \ pyOpenSSL pyparsing python-simplejson python-inotify \ python-lxm socat fping python-bitarray python-ipaddr @@ -144,19 +146,22 @@ deploy Ganeti on production machines). More specifically: - `deepseq `_ - `curl `_, tested with versions 1.3.4 and above +- `hslogger `_, version 1.1 and + above (note that Debian Squeeze only has version 1.0.9) Some of these are also available as package in Debian/Ubuntu:: + $ apt-get install ghc libghc-json-dev libghc-network-dev \ + libghc-parallel-dev libghc-deepseq-dev \ + libghc-utf8-string-dev libghc-curl-dev \ + libghc-hslogger-dev + +Or in older versions of these distributions (using GHC 6.x):: + $ apt-get install ghc6 libghc6-json-dev libghc6-network-dev \ libghc6-parallel-dev libghc6-deepseq-dev \ libghc6-curl-dev -Or in newer versions of these distributions (using GHC 7.x):: - - $ apt-get install ghc libghc-json-dev libghc-network-dev \ - libghc-parallel-dev libghc-deepseq-dev \ - libghc-utf8-string-dev libghc-curl-dev - In Fedora, some of them are available via packages as well:: $ yum install ghc ghc-json-devel ghc-network-devel \ @@ -166,22 +171,21 @@ If using a distribution which does not provide them, first install the Haskell platform. You can also install ``cabal`` manually:: $ apt-get install cabal-install + $ cabal update -Then install the additional libraries via -``cabal``:: +Then install the additional libraries (only the ones not available in your +distribution packages) via ``cabal``:: - $ cabal install json network parallel utf8-string curl + $ cabal install json network parallel utf8-string curl hslogger Haskell optional features ~~~~~~~~~~~~~~~~~~~~~~~~~ Optionally, more functionality can be enabled if your build machine has -a few more Haskell libraries enabled: the ``ganeti-confd`` daemon -(``--enable-confd``) and the monitoring daemon +a few more Haskell libraries enabled: the ``ganeti-confd`` and +``ganeti-luxid`` daemon (``--enable-confd``) and the monitoring daemon (``--enable-mond``). The list of extra dependencies for these is: -- `hslogger `_, version 1.1 and - above (note that Debian Squeeze only has version 1.0.9) - `Crypto `_, tested with version 4.2.4 - `text `_ @@ -193,19 +197,21 @@ a few more Haskell libraries enabled: the ``ganeti-confd`` daemon - `vector `_ - `snap-server` `_, version 0.8.1 and above. +- `process `_, version 1.0.1.1 and + above These libraries are available in Debian Wheezy (but not in Squeeze), so you can use either apt:: - $ apt-get install libghc-hslogger-dev libghc-crypto-dev libghc-text-dev \ + $ apt-get install libghc-crypto-dev libghc-text-dev \ libghc-hinotify-dev libghc-regex-pcre-dev \ libghc-attoparsec-dev libghc-vector-dev \ libghc-snap-server-dev or ``cabal``, after installing a required non-Haskell dependency:: - $ apt-get install libpcre3-dev - $ cabal install hslogger Crypto text hinotify==0.3.2 regex-pcre \ + $ apt-get install libpcre3-dev libcurl4-openssl-dev + $ cabal install Crypto text hinotify==0.3.2 regex-pcre \ attoparsec vector snap-server to install them.