<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://t2bwiki.iihe.ac.be/index.php?action=history&amp;feed=atom&amp;title=InstallationBEgridClient0</id>
	<title>InstallationBEgridClient0 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://t2bwiki.iihe.ac.be/index.php?action=history&amp;feed=atom&amp;title=InstallationBEgridClient0"/>
	<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=InstallationBEgridClient0&amp;action=history"/>
	<updated>2026-05-16T11:26:55Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://t2bwiki.iihe.ac.be/index.php?title=InstallationBEgridClient0&amp;diff=128&amp;oldid=prev</id>
		<title>Maintenance script: Created page with &quot; == Installation of a Quattor deployment server release 13.1 == === Aim of this procedure === This procedure describes how to install a Quattor deployment server (also calle...&quot;</title>
		<link rel="alternate" type="text/html" href="https://t2bwiki.iihe.ac.be/index.php?title=InstallationBEgridClient0&amp;diff=128&amp;oldid=prev"/>
		<updated>2015-08-26T12:28:37Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot; == Installation of a Quattor deployment server release 13.1 == === Aim of this procedure === This procedure describes how to install a Quattor deployment server (also calle...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&lt;br /&gt;
== Installation of a Quattor deployment server release 13.1 ==&lt;br /&gt;
=== Aim of this procedure ===&lt;br /&gt;
This procedure describes how to install a Quattor deployment server (also called &amp;quot;BEgrid client&amp;quot;) release 13.1. The main services/tools of such a server are : AII, DHCP, HTTPD, RUNCHECK and SINDES.&lt;br /&gt;
&lt;br /&gt;
=== Hardware needed ===&lt;br /&gt;
4096MB RAM + 40GB hard drive + 4 cores&lt;br /&gt;
If you want to use a VM under KVM, than choose virtio for NICs and HD.&lt;br /&gt;
You need two NICs : one in the private, and one in the public network.&lt;br /&gt;
&lt;br /&gt;
=== OS installation ===&lt;br /&gt;
&lt;br /&gt;
This procedure is based on SL58. Avoid RH6-like distros (too much troubles with pysvn and Python2.6 and GNUTLS used instead of OpenSSL), unless you are looking for troubles !&lt;br /&gt;
&lt;br /&gt;
During the installation process, choose the following options for the machine type : &amp;quot;Server&amp;quot;, &amp;quot;Development tools&amp;quot;. And un-select &amp;quot;GNOME&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Basic configuration tasks ===&lt;br /&gt;
&lt;br /&gt;
Once the OS is installed, do the following :&lt;br /&gt;
&lt;br /&gt;
*choose a nice name, and create entries for the machine in the DNSs&lt;br /&gt;
*adapt /etc/sysconfig/network :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
NETWORKING=yes&lt;br /&gt;
NETWORKING_IPV6=no&lt;br /&gt;
HOSTNAME=&amp;lt;hostname_of_your_choice&amp;gt;&lt;br /&gt;
DNS1=193.190.247.140&lt;br /&gt;
DNS2=193.190.247.71&lt;br /&gt;
GATEWAY=193.190.247.65&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*configure the NICs by editing the files /etc/sysconfig/network-scripts/ifcfg-eth&amp;lt;x&amp;gt; (x=0,1)&lt;br /&gt;
*disable Networkmanager :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
chkconfig --level 2345 NetworkManager off&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*enable network service :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
chkconfig --level 2345 network on&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*restart the network :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
service network restart&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*change hostname in environment with hostname command&lt;br /&gt;
*disable SELinux :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
setenforce 0&lt;br /&gt;
vim /etc/sysconfig/selinux&lt;br /&gt;
--&amp;gt; SELINUX=disabled&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*configure ntp (add the line &amp;quot;server ntp.vub.ac.be&amp;quot; at the end of /etc/ntp.conf)&lt;br /&gt;
*disable yum-autoupdate (remove yum.cron from /etc/cron.daily)&lt;br /&gt;
*configure the firewall, but don&amp;#039;t be too strict at the beginning : during the installation process, it is enough to allow only inputs from the private and public networks !&lt;br /&gt;
&lt;br /&gt;
=== Packages installation ===&lt;br /&gt;
&lt;br /&gt;
*Repositories configuration : edit the following repo files in /etc/yum.repo.d/ :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# cat /etc/yum.repos.d/quattor.repo&lt;br /&gt;
[quattor-13.1]&lt;br /&gt;
name=quattor13.1&lt;br /&gt;
enabled=1&lt;br /&gt;
baseurl=http://yum.quattor.org/13.1/&lt;br /&gt;
gpgcheck=0&lt;br /&gt;
[quattor-components]&lt;br /&gt;
name=quattor-components&lt;br /&gt;
enabled=1&lt;br /&gt;
baseurl=http://quattor.web.lal.in2p3.fr/packages/ncm-components/&lt;br /&gt;
gpgcheck=0&lt;br /&gt;
[quattor-externals]&lt;br /&gt;
name=quattor-externals&lt;br /&gt;
enabled=1&lt;br /&gt;
baseurl=http://quattor.web.lal.in2p3.fr/packages/quattor/externals/&lt;br /&gt;
gpgcheck=0&lt;br /&gt;
&lt;br /&gt;
# cat /etc/yum.repos.d/sl5_epel.repo &lt;br /&gt;
[sl5-epel]&lt;br /&gt;
name=Scientific Linux 5x - EPEL&lt;br /&gt;
baseurl=http://quattor.web.lal.in2p3.fr/packages/os/sl5/epel/&lt;br /&gt;
enabled=1&lt;br /&gt;
gpgcheck=0&lt;br /&gt;
&lt;br /&gt;
# cat /etc/yum.repos.d/sl5_addons.repo &lt;br /&gt;
[sl5-addons]&lt;br /&gt;
name=Scientific Linux 5x - addons&lt;br /&gt;
baseurl=http://quattor.web.lal.in2p3.fr/packages/os/sl5/addons&lt;br /&gt;
enabled=1&lt;br /&gt;
gpgcheck=0&lt;br /&gt;
&lt;br /&gt;
# cat /etc/yum.repos.d/java.repo &lt;br /&gt;
[java]&lt;br /&gt;
name=java&lt;br /&gt;
enabled=1&lt;br /&gt;
baseurl=http://quattor.web.lal.in2p3.fr/packages/java/&lt;br /&gt;
gpgcheck=0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 Also check that dag repo is disabled.&lt;br /&gt;
&lt;br /&gt;
*RPMs installation :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
yum install aii-dhcp aii-ks aii-pxelinux aii-server cdb-sync dhcp dnsmasq httpd  mod_ssl ncm-lib-blockdevices neon-devel squid subversion subversion-devel tftp-server java&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== AII configuration ===&lt;br /&gt;
&lt;br /&gt;
==== DHCP ====&lt;br /&gt;
&lt;br /&gt;
*Edit /etc/dhcpd.conf in order to have the following content :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Use this to enble / disable dynamic dns updates globally.&lt;br /&gt;
ddns-update-style ad-hoc;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
# write here your network name&lt;br /&gt;
shared-network iihe.ac.be {&lt;br /&gt;
&lt;br /&gt;
  deny unknown-clients;&lt;br /&gt;
  not authoritative;&lt;br /&gt;
&lt;br /&gt;
  # Write here your domain name&lt;br /&gt;
  option domain-name &amp;quot;iihe.ac.be&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  # Parameters for the installation via PXE using pxelinux&lt;br /&gt;
  filename                           &amp;quot;pxelinux.0&amp;quot;;&lt;br /&gt;
  # Uncommnent this line if ISC DHCP ver. 2&lt;br /&gt;
  # option dhcp-class-identifier       &amp;quot;PXEClient&amp;quot;;&lt;br /&gt;
  # Uncommnent this line if ISC DHCP ver. 3&lt;br /&gt;
  option vendor-class-identifier       &amp;quot;PXEClient&amp;quot;;&lt;br /&gt;
  option vendor-encapsulated-options 01:04:00:00:00:00:ff;&lt;br /&gt;
    &lt;br /&gt;
  # Complete with (at least) the gateway + DNS.&lt;br /&gt;
  # Hosts entries will be inserted&lt;br /&gt;
  # automatically by AII in this section&lt;br /&gt;
&lt;br /&gt;
  subnet 193.190.247.0 netmask 255.255.255.0 {&lt;br /&gt;
    option routers 193.190.247.65;&lt;br /&gt;
    option domain-name-servers 193.190.247.140;&lt;br /&gt;
  }&lt;br /&gt;
  &lt;br /&gt;
  subnet 193.190.247.96 netmask 255.255.255.224 {&lt;br /&gt;
    option routers 193.190.247.113;&lt;br /&gt;
    option domain-name-servers 193.190.198.10;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
  subnet 192.168.0.0 netmask 255.255.0.0 {&lt;br /&gt;
    option routers 192.168.10.100;&lt;br /&gt;
    option domain-name-servers 192.168.10.100;&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Service starting :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
chkconfig --add dhcpd&lt;br /&gt;
chkconfig --level 345 dhcpd on&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== TFTP ====&lt;br /&gt;
&lt;br /&gt;
*Edit /etc/xinetd.d/tftp :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
  server_args             = -s /osinstall/nbp&lt;br /&gt;
  disable                 = no&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Restart the service :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
service xinetd restart&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== OS base install ====&lt;br /&gt;
&lt;br /&gt;
*Create and feed the /osinstall sub-directories (OS base installation done during kickstart step) :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir -p /osinstall/nbp&lt;br /&gt;
mkdir -p /osinstall/ks&lt;br /&gt;
ln -s /osinstall/ks /var/www/html/ks&lt;br /&gt;
cp -a /usr/lib/syslinux/pxelinux.0 /osinstall/nbp/&lt;br /&gt;
cp -a /usr/share/doc/aii-server-13.1.0/eg/localboot.cfg /osinstall/nbp/pxelinux.cfg/&lt;br /&gt;
&lt;br /&gt;
mkdir /osinstall/nbp/sl630_x86_64&lt;br /&gt;
cd /osinstall/nbp/sl630_x86_64&lt;br /&gt;
wget http://linuxsoft.cern.ch/scientific/6.3/x86_64/os/images/pxeboot/initrd.img&lt;br /&gt;
wget http://linuxsoft.cern.ch/scientific/6.3/x86_64/os/images/pxeboot/vmlinuz&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Acknowledgement script ====&lt;br /&gt;
&lt;br /&gt;
*Do the following :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cp -a /usr/sbin/aii-installack.cgi /var/www/cgi-bin/&lt;br /&gt;
chmod o+rx /var/www/cgi-bin/aii-installack.cgi&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Aii-shellfe configuration ====&lt;br /&gt;
&lt;br /&gt;
*Create /etc/aii/aii-shellfe.conf with the following content (replace &amp;quot;dhcp55&amp;quot; by the real short name of your Quattor deployment server) :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cdburl = https://dhcp55.iihe.ac.be:444/profiles&lt;br /&gt;
profile_prefix = profile_&lt;br /&gt;
use_fqdn = 1&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Apache must be a sudoers. Add the following lines at the end of /etc/sudoers (replace &amp;quot;dhcp55&amp;quot; by the real short name of your Quattor deployment server) :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
apache  dhcp55.iihe.ac.be=(ALL) NOPASSWD: /usr/sbin/aii-shellfe&lt;br /&gt;
apache  dhcp55.wn.iihe.ac.be=(ALL) NOPASSWD: /usr/sbin/aii-shellfe&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 and comment the following line in /etc/sudoers :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Defaults    requiretty&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Deployment scripts ===&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;official&amp;quot; way to operate Quattor deployments as well as the SCDB tools needed, and how to install and configure them, is described here is full details :&lt;br /&gt;
https://trac.lal.in2p3.fr/Quattor/wiki/Download/SCDB#Installationofdeploymentscripts&lt;br /&gt;
&lt;br /&gt;
However, at IIHE, we prefer to work in another way : when the sysadmin wants to deploy some changes he has just committed, he must run the command &amp;quot;runcheck&amp;quot; from within a shell in the Quattor deployment server. This command is in fact a Python script that does the following things :&lt;br /&gt;
#checkout of the Quattor templates into a tmp directory;&lt;br /&gt;
 2. ant-build of the templates;&lt;br /&gt;
 3. if the the build was successful, the xml profiles are copied to the webserver directory so that they are available for download by the client machines, and&lt;br /&gt;
 4. the client machines are notified.&lt;br /&gt;
&lt;br /&gt;
The installation and configuration of runcheck is described here :&lt;br /&gt;
&lt;br /&gt;
*Log in on the Quattor deployment server and download and untar the following tarball :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
wget http://quattor.begrid.be/begrid/install/cb-v4-client.tar.gz&lt;br /&gt;
tar xvzf cb-v4-client.tar.gz&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*/opt/CB&amp;lt;x&amp;gt; (where &amp;lt;x&amp;gt; is the version number of the Centralized BEgrid Repository) is the usual place to put the software :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cp -a cp /opt/CBx&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
 (Change the value of x according to actual version of the Centralized BEgrid Repository you want to use.)&lt;br /&gt;
&lt;br /&gt;
*Let&amp;#039;s now give explanations by sub-directories :&lt;br /&gt;
**/opt/CBx/keys : contains the BEgrid CA certificate and a valid user *.p12 file used to connect authenticate against the SVN Quattor repository&lt;br /&gt;
**/opt/CBx/subversion: some subversion specific parameters; edit the servers file:&lt;br /&gt;
**correct full path to key (.p12 file)&lt;br /&gt;
**plain-text password for the key (it does not prompt for the password)&lt;br /&gt;
**/opt/CBx/tmp: will contain the checkout and build files.&lt;br /&gt;
**/opt/CBx/private: here you can put private files (such as passwords and certificate in the templates. passwd.tpl; pub_key.tpl)&lt;br /&gt;
**svncheck does this by simple copy from this directory into cfg/clusters. So keep that structure.&lt;br /&gt;
**remove the template cluster given as example, otherwise runcheck will try to build it later ...&lt;br /&gt;
**/opt/CBx/private/&amp;lt;clutername-glite-version&amp;gt;/passwd.tpl :&lt;br /&gt;
***This file contains the passwords that wil be used for your site.&lt;br /&gt;
***You can pick any password you like.&lt;br /&gt;
***(Unless certain nodes are not configured with Quattor, in that case they must match whitch the non Quattor nodes).&lt;br /&gt;
**/opt/CBx/private/&amp;lt;clutername-glite-version&amp;gt;/local_users.tpl :&lt;br /&gt;
***???&lt;br /&gt;
***Not needed for a CE or a WN.&lt;br /&gt;
**/opt/CBx/private/&amp;lt;clutername-glite-version&amp;gt;/pub_key.tpl :&lt;br /&gt;
***Contains the SSH key that will be used for remote SSH access to the nodes.&lt;br /&gt;
***More info on generating a key can be found here:&lt;br /&gt;
**/opt/CBx/private/&amp;lt;clutername-glite-version&amp;gt;/&amp;lt;your_machine_fqdn&amp;gt;.tpl :&lt;br /&gt;
***This is the place where to put the *.tpl files containing the hostcert.pem and hostkey.pem of your machine.&lt;br /&gt;
***Go to this [http://mon.iihe.ac.be/trac/t2b/wiki/UpdateCertificates page] to know how to generate these private templates.&lt;br /&gt;
**/opt/CBx/svncheck: this is the code written by Jean-François Roche :&lt;br /&gt;
**in config.conf you can specify most needed parameters :&lt;br /&gt;
***svn_repos: point it to the trunk of the centralised-begrid repository&lt;br /&gt;
***cluster_regexp: a regexp to build only these clusters matching the regexp&lt;br /&gt;
***also adapt parameters in the email section&lt;br /&gt;
*Update of the pysvn library :&lt;br /&gt;
**runcheck uses pysvn library to access the Quattor SVN;&lt;br /&gt;
**the library is stored in /opt/CBx/svncheck/pysvn;&lt;br /&gt;
**the already existing library is outdated (built for i686 architecture), it must be updated;&lt;br /&gt;
**to build new pysvn :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd /root/&lt;br /&gt;
wget http://pysvn.barrys-emacs.org/source_kits/pysvn-1.6.2.tar.gz&lt;br /&gt;
tar xvzf pysvn-1.6.2.tar.gz&lt;br /&gt;
cd pysvn-1.6.2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
  and follow the instructions in the INSTALL.html file.&lt;br /&gt;
**once the build is finished, replace the old library by the new one :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mv /opt/CBx/svncheck/pysvn /opt/CBx/svncheck/pysvn_old&lt;br /&gt;
mkdir /opt/CBx/svncheck/pysvn&lt;br /&gt;
cp -a /root/pysvn-1.6.2/Source/pysvn/_* /opt/CBx/svncheck/pysvn/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== HTTPD ===&lt;br /&gt;
&lt;br /&gt;
*Basic configuration of the service :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
chkconfig --add httpd&lt;br /&gt;
chkconfig --level 345 httpd on&lt;br /&gt;
service httpd start&lt;br /&gt;
&lt;br /&gt;
mkdir -p /var/www/https/profiles&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Configuration of the reverse proxy with a cache :&lt;br /&gt;
**Check that the modules mod_proxy and mod_cache are installed and loaded (see the httpd configuration).&lt;br /&gt;
**Reverse proxy is the only one supported by Quattor: your profiles will point to the RPM repository at quattor.begrid.be, but in fact your local Quattor deployment server will get the RPMs, (in theory optionally) cache them, and provide them to node that is being installed.&lt;br /&gt;
**Using a disk cache is preferred to lower the load on the CB and the network (and it should be faster).&lt;br /&gt;
**Create the file /etc/httpd/conf.d/cb-cache.conf with the following content :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Reverse Proxy  (Added for AII)&lt;br /&gt;
#&lt;br /&gt;
# Comment this line if modules are already loaded in your default httpd.conf&lt;br /&gt;
LoadModule proxy_module modules/mod_proxy.so&lt;br /&gt;
&lt;br /&gt;
&amp;lt;IfModule mod_setenvif.c&amp;gt;&lt;br /&gt;
    BrowserMatch &amp;quot;rpm/.*&amp;quot; nokeepalive force-response-1.0&lt;br /&gt;
    BrowserMatch &amp;quot;Python-urllib/.*&amp;quot; nokeepalive force-response-1.0&lt;br /&gt;
&amp;lt;/IfModule&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ProxyRequests Off&lt;br /&gt;
&amp;lt;Proxy *&amp;gt;&lt;br /&gt;
        Order deny,allow&lt;br /&gt;
        Allow from all&lt;br /&gt;
        SetEnv force-proxy-request-1.0 1&lt;br /&gt;
        SetEnv proxy-nokeepalive 1&lt;br /&gt;
&amp;lt;/Proxy&amp;gt;&lt;br /&gt;
&lt;br /&gt;
ProxyMaxForwards 15&lt;br /&gt;
ProxyReceiveBufferSize 0&lt;br /&gt;
ProxyTimeout 300&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Location /begrid/&amp;gt;&lt;br /&gt;
        ProxyPass http://quattor.begrid.be/begrid/&lt;br /&gt;
        ProxyPassReverse /&lt;br /&gt;
&amp;lt;/Location&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Location /packages/&amp;gt;&lt;br /&gt;
        ProxyPass http://quattor.web.lal.in2p3.fr/packages/&lt;br /&gt;
        ProxyPassReverse /&lt;br /&gt;
&amp;lt;/Location&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Location /13.1/&amp;gt;&lt;br /&gt;
        ProxyPass http://yum.quattor.org/13.1/&lt;br /&gt;
        ProxyPassReverse /&lt;br /&gt;
&amp;lt;/Location&amp;gt;&lt;br /&gt;
#&lt;br /&gt;
# Disk Cache (Added for AII)&lt;br /&gt;
#&lt;br /&gt;
# Comment these lines if modules are already loaded in your default httpd.conf&lt;br /&gt;
LoadModule cache_module modules/mod_cache.so&lt;br /&gt;
LoadModule disk_cache_module modules/mod_disk_cache.so&lt;br /&gt;
&lt;br /&gt;
## Directory to host the cache&lt;br /&gt;
CacheRoot /var/www/cache&lt;br /&gt;
&lt;br /&gt;
## Max size of total cache in kb (obsoleted by Apache 2.2, use htcacheclean instead as explained below)&lt;br /&gt;
#CacheSize 15000000&lt;br /&gt;
&lt;br /&gt;
CacheEnable disk /begrid&lt;br /&gt;
CacheEnable disk /packages&lt;br /&gt;
CacheEnable disk /13.1&lt;br /&gt;
&lt;br /&gt;
## CacheDirLevels*CacheDirLength must be smaller than 20 !!&lt;br /&gt;
## don&amp;#039;t set this higher than necessary&lt;br /&gt;
## following setting will create 64*64=4096 subdirectories&lt;br /&gt;
## for all possible hashes 64^22&lt;br /&gt;
CacheDirLevels 2&lt;br /&gt;
CacheDirLength 1&lt;br /&gt;
&lt;br /&gt;
## in bytes (1GB, should be enough for openoffice)&lt;br /&gt;
CacheMaxFileSize 1000000000&lt;br /&gt;
CacheMinFileSize 1&lt;br /&gt;
&lt;br /&gt;
## expire after 100 days&lt;br /&gt;
CacheDefaultExpire 8640000&lt;br /&gt;
CacheMaxExpire 10000000&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
**Create the cache directory and restart Apache :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir /var/www/cache;chown apache.apache /var/www/cache&lt;br /&gt;
/etc/init.d/httpd restart&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
**Since Apache 2.2, the &amp;lt;tt&amp;gt;CacheSize&amp;lt;/tt&amp;gt; directive is not used anymore. So to limit the size of the disk space allocated for caching, you will have to use htcacheclean. For that, create the following cron job in /etc/cron.hourly/htcacheclean-cron.sh :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
 &lt;br /&gt;
htcacheclean -v -n -p/var/www/cache -l15000000K&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== SINDES ===&lt;br /&gt;
&lt;br /&gt;
You will find a presentation of SINDES on this [https://twiki.cern.ch/twiki/pub/FIOgroup/SinDes/presentation-poulhies-27-sept-2005.pdf page].&lt;br /&gt;
&lt;br /&gt;
A few things you should now about about the current status of SINDES :&lt;br /&gt;
*SINDES is not part of Quattor, it is not maintained any more. Some other solutions (like FreeIPA) are being investigated by developers...&lt;br /&gt;
*Some SINDES RPMs are still available in BEgrid repositories. Though quite old now, the latest version available from BEgrid repos is still working with Quattor release 13.1 (the AII hook, aii_sindes, is still there).&lt;br /&gt;
*Even if SINDES is not mandatory, it is the only way to secure deployment of machines using SSL.&lt;br /&gt;
&lt;br /&gt;
Now, here is the procedure to install and configure SINDES, and make it working with Quattor 13.1 :&lt;br /&gt;
*Installation of RPMs :&lt;br /&gt;
**You first need to enable the old BEgrid repos, by creating the file /etc/yum.repos.d/cb-v5-sl5.repo :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[cb-v5]&lt;br /&gt;
name=CB server - client repo - SL5&lt;br /&gt;
baseurl=http://quattor.begrid.be/begrid/install/apt/RPMS.cb-v5_i386_sl5/&lt;br /&gt;
enabled = 1&lt;br /&gt;
&lt;br /&gt;
[quattor]&lt;br /&gt;
name=Quattor repo - SL4&lt;br /&gt;
#baseurl=http://quattorsw.web.cern.ch/quattorsw/software/quattor/yum/1.3/i386/RPMS.quattor_sl4&lt;br /&gt;
baseurl=http://quattor.begrid.be/begrid/install/apt/RPMS.quattor_i386_sl4/&lt;br /&gt;
enabled = 1&lt;br /&gt;
&lt;br /&gt;
[rpmforge]&lt;br /&gt;
name = Red Hat Enterprise  - RPMforge.net - dag&lt;br /&gt;
#baseurl = http://apt.sw.be/redhat/el5/en//dag&lt;br /&gt;
#mirrorlist = http://apt.sw.be/redhat/el5/en/mirrors-rpmforge&lt;br /&gt;
#mirrorlist = ///etc/yum.repos.d/mirrors-rpmforge&lt;br /&gt;
baseurl = http://quattor.begrid.be/begrid/install/apt/RPMS.dag_i386_el5/&lt;br /&gt;
enabled = 1&lt;br /&gt;
protect = 0&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
**Packages installation :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
wget http://quattor.begrid.be/begrid/install/apt/RPMS.cb-v5_i386_sl5/cb-client-sindes-0.6.0-sl50.1.noarch.rpm&lt;br /&gt;
yum localinstall cb-client-sindes-0.6.0-sl50.1.noarch.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
  The result should be :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Installing:&lt;br /&gt;
 cb-client-sindes                                         noarch                             0.6.0-sl50.1                                  /cb-client-sindes-0.6.0-sl50.1.noarch                             7.0 k&lt;br /&gt;
Installing for dependencies:&lt;br /&gt;
 SINDES-Shell-bin                                         noarch                             0.5-34                                        cb-v5                                                             9.1 k&lt;br /&gt;
 SINDES-ca                                                noarch                             0.9.99-2.el5                                  cb-v5                                                              15 k&lt;br /&gt;
 perl-Config-IniFiles                                     noarch                             2.72-2.el5.2                                  sl5-epel                                                           49 k&lt;br /&gt;
 perl-Crypt-SSLeay                                        x86_64                             0.57-3.el5.rfx                                sl5-addons                                                         96 k&lt;br /&gt;
 perl-Date-Manip                                          noarch                             5.56-1.el5.rf                                 sl5-addons                                                        211 k&lt;br /&gt;
 perl-IO-stringy                                          noarch                             2.110-5.el5                                   sl5-epel                                                           70 k&lt;br /&gt;
 perl-IPC-Shareable                                       noarch                             0.60-3.el5                                    sl5-epel                                                           39 k&lt;br /&gt;
 perl-List-MoreUtils                                      x86_64                             0.33-5.el5                                    sl5-epel                                                           75 k&lt;br /&gt;
 perl-Log-Dispatch                                        noarch                             2.21-1.el5.rf                                 rpmforge                                                           81 k&lt;br /&gt;
 perl-Log-Dispatch-FileRotate                             noarch                             1.19-1.el5.rf                                 sl5-addons                                                         24 k&lt;br /&gt;
 perl-Log-Log4perl                                        noarch                             1.15-1.el5.rf                                 rpmforge                                                          385 k&lt;br /&gt;
 perl-MIME-Lite                                           noarch                             3.021-1.el5.rf                                rpmforge                                                           95 k&lt;br /&gt;
 perl-Mail-Sender                                         noarch                             0.8.13-2.el5.1                                sl5-epel                                                           53 k&lt;br /&gt;
 perl-Mail-Sendmail                                       noarch                             0.79-9.el5.1                                  sl5-epel                                                           27 k&lt;br /&gt;
 perl-MailTools                                           noarch                             2.02-1.el5.rf                                 rpmforge                                                          100 k&lt;br /&gt;
 perl-Params-Validate                                     x86_64                             0.91-1.el5.rf                                 sl5-addons                                                        105 k&lt;br /&gt;
 perl-SINDES-GetCertificate                               noarch                             0.9.99-1.el5                                  cb-v5                                                              19 k&lt;br /&gt;
 perl-SINDES-Shell                                        noarch                             0.5-30                                        cb-v5                                                              21 k&lt;br /&gt;
 perl-SINDES-common                                       noarch                             0.5-24                                        cb-v5                                                              47 k&lt;br /&gt;
 perl-Term-Shell                                          noarch                             0.02_cern-1                                   quattor                                                            32 k&lt;br /&gt;
 perl-TimeDate                                            noarch                             1:1.16-5.el5                                  sl-base                                                            32 k&lt;br /&gt;
 perl-XML-DOM                                             noarch                             1.44-2.el5.rf                                 rpmforge                                                          188 k&lt;br /&gt;
 perl-XML-RegExp                                          noarch                             0.03-2.el5                                    sl5-epel                                                          8.2 k&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
**Disable the old BEgrid repos, by setting enabled=0 everywhere in /etc/yum.repos.d/cb-v5-sl5.repo.&lt;br /&gt;
&lt;br /&gt;
**We also aii_sindes.pm :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
wget http://quattor.begrid.be/begrid/Central_BEGrid_Repository/i386_quattor_sl4/aii_sindes-0.2.4-1.noarch.rpm&lt;br /&gt;
yum --nogpgcheck localinstall aii_sindes-0.2.4-1.noarch.rpm&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
**And since aii_sindes.pem is expected to be in a directory AII :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mkdir /usr/lib/perl/AII&lt;br /&gt;
cp -a /usr/lib/perl/NCM/Component/aii_sindes.pm /usr/lib/perl/AII/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
  and replace this line in /usr/lib/perl/AII/aii_sindes :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
package NCM::Component::aii_sindes;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
  by :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
package AII::aii_sindes;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
**To configure SINDES, follow the instructions on this [https://quattor.begrid.be/trac/centralised-begrid-v5/wiki/SINDES#Configurationstepthroughguide page].&lt;br /&gt;
**Adapt AII configuration to SINDES, by adding the following lines to /etc/aii/aii-shellfe.conf :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cert_file = /etc/sindes/certs/apache.crt&lt;br /&gt;
key_file = /etc/sindes/keys/apache.key&lt;br /&gt;
ca_file = /etc/sindes/certs/ca.crt&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
**Important requirement on the client side : openssl should be upgraded to at least the same version as on the deployment server, that is 0.9.8e-26. And since SINDES should be working before the SPMA step, so that the machine is able to download its XML profile, the following things must be done :&lt;br /&gt;
**Make sure that you have at least version 0.9.8e-26 of openssl in client machines configuration.&lt;br /&gt;
**Add openssl package in the list AII_OSINSTALL_BASE_PACKAGES (see the quattor/aii/ks/config template).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{TracNotice|{{PAGENAME}}}}&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
</feed>