« Deploy/SpaceWalk/Install » : différence entre les versions

De TartareFR
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 1 : Ligne 1 :
[[Fichier:LogoSpacewalk.svg|right]]
[[Fichier:LogoSpacewalk.svg|right]]
= Spacewalk Installation Instructions =
'''Installation de Spacewalk 2.0.'''


These are installation instructions for new installations of Spacewalk 1.8.
== Pré-requis ==
[[Fichier:SpacewalkRelease2.0.png|center]]


== Prerequisites ==
* Ports ouverts en sortie 80, 443, 4545 (seulement si le monitoring est souhaité)
 
* Ports ouverts en entrée 80, 443, 5222 (seulement pour effectuer des actions sur les clients) and 5269 (seulement pour effectuer des actions sur le Proxy Spacewalk), 69 udp pour utiliser tftp
* Outbound open ports 80, 443, 4545 (only if you want to enable monitoring)
* Espace disque pour la base de données: 250 KiB par client + 500 KiB par channel + 230 KiB par paquet du channel (ex: 1.1GiB pour un channel avec 5000 paquets)
* Inbound open ports 80, 443, 5222 (only if you want to push actions to client machines) and 5269 (only for push actions to a Spacewalk Proxy), 69 udp if you want to use tftp
* Espace disque pour les paquets (default <path>/var/satellite</path>): Red Hat recommende 6GB par channel pour les siens
* Storage for database: 250 KiB per client system + 500 KiB per channel + 230 KiB per package in channel (i.e. 1.1GiB for channel with 5000 packages)
* 2GB RAM minimum, 4GB recommendé
* Storage for packages (default /var/satellite): Depends on what you're storing; Red Hat recommend 6GB per channel for their channels
* Un système d'exploitation à jour.
* 2GB RAM minimum, 4GB recommended
* Pour utiliser LDAP comme service d'identité central, voir https://fedorahosted.org/spacewalk/wiki/SpacewalkWithLDAP
* Make sure your underlying OS up-to-date.
* If you use LDAP as a central identity service and wish to pull user and group information from it, see https://fedorahosted.org/spacewalk/wiki/SpacewalkWithLDAP
* Make sure your operating system is fully up-to-date.
* In the following steps we assume you have a default, vanilla installation of your operating system, without any customized setup of yum repositories, user management, security, etc.
* In the following steps we assume you have a default, vanilla installation of your operating system, without any customized setup of yum repositories, user management, security, etc.


== Setting up Spacewalk repo ==
== Mise en place du dépôt Spacewalk ==
 
RPM downloads of the project are available through yum repositories at


Les RPM sont disponible au téléchargement sur le dépôt <app>yum</app> du projet:
* http://yum.spacewalkproject.org/ - Binary RPMs
* http://yum.spacewalkproject.org/ - Binary RPMs


To use this repository easily, install spacewalk-repo package with commands below:
Pour l'utiliser facilement, On va installer le paquet <package>spacewalk-repo</package>


=== Red Hat Enterprise Linux 5, CentOS 5 ===
=== RHEL 5, CentOS 5 ===


<pre>
<pre>
rpm -Uvh http://yum.spacewalkproject.org/1.8/RHEL/5/x86_64/spacewalk-repo-1.8-4.el5.noarch.rpm
rpm -Uvh http://yum.spacewalkproject.org/2.0/RHEL/5/x86_64/spacewalk-repo-2.0-3.el5.noarch.rpm
</pre>
</pre>


=== Red Hat Enterprise Linux 6, Scientific Linux 6, CentOS 6 ===
=== RHEL 6, CentOS 6, Scientific Linux 6 ===


<pre>
<pre>
rpm -Uvh http://yum.spacewalkproject.org/1.8/RHEL/6/x86_64/spacewalk-repo-1.8-4.el6.noarch.rpm
rpm -Uvh http://yum.spacewalkproject.org/2.0/RHEL/6/x86_64/spacewalk-repo-2.0-3.el6.noarch.rpm
</pre>
</pre>


=== Fedora 16 ===
=== Fedora 18 ===


<pre>
<pre>
rpm -Uvh http://yum.spacewalkproject.org/1.8/Fedora/16/x86_64/spacewalk-repo-1.8-4.fc16.noarch.rpm
rpm -Uvh http://yum.spacewalkproject.org/2.0/Fedora/18/x86_64/spacewalk-repo-2.0-3.fc18.noarch.rpm
</pre>
</pre>


=== Fedora 17 ===
=== Fedora 19 ===


<pre>
<pre>
rpm -Uvh http://yum.spacewalkproject.org/1.8/Fedora/17/x86_64/spacewalk-repo-1.8-4.fc17.noarch.rpm
rpm -Uvh http://yum.spacewalkproject.org/2.0/Fedora/19/x86_64/spacewalk-repo-2.0-3.fc19.noarch.rpm
</pre>
</pre>


=== Nightly builds ===
== Dépôts et paquets additionels ==


If you want to use the nightly builds, install the <tt>spacewalk-repo</tt> package based on your operating system (see above) and then enable the nightly repository:
=== RHEL 6 ===


<pre>
Pour utiliser Spacewalk sur RHEL 6, Il est obligatoire d'être inscrit sur le channel RHN:
sed -i 's/enabled=0/enabled=1/' /etc/yum.repos.d/spacewalk-nightly.repo
sed -i 's/enabled=1/enabled=0/' /etc/yum.repos.d/spacewalk.repo
</pre>
{{Admon/warning|Nigthly repo contains developers snapshot and it is not suitable for production environment.|Especially beware that you might not be able to upgrade from the nightly installation to the next release, especially with respect to the database schema.}}
 
== Additional repos & packages ==
 
=== Red Hat Optional Server 6 ===
 
When using RHEL 6, make sure you are subscribed to following RHN channel:


* '''Red Hat Optional Server 6'''
* '''Red Hat Optional Server 6'''
Ligne 70 : Ligne 57 :
==== RHEL 6, SL 6, CentOS 6 and Fedora ====
==== RHEL 6, SL 6, CentOS 6 and Fedora ====


For Spacewalk on EL 6 and Fedora, a couple of additional dependencies are needed from jpackage.
Pour utiliser Spacewalk sur RHEL 6 et Fedora, quelques dépendances nécessite des paquets provenant du dépôt '''jpackage'''. Il faut donc l'installer avant de poursuivre l'installation.
If repo is broken, mirror list here: http://www.jpackage.org/mirroring.php
 
Please configure the following yum repository before beginning your Spacewalk installation:
Liste des mirroirs disponibles sur http://www.jpackage.org/mirroring.php


<pre>
<pre>
Ligne 86 : Ligne 73 :
</pre>
</pre>


We specifically want 5.0 generic directory in the above URL.
Nous voulons spécifiquement le répertoire 5.0 dans l'URL ci dessus.
Make sure, you do not use the jpackage-generic repository on RHEL 5.
{{Admon/warning|Dépôt jpackage et RHEL|Il ne faut pas utiliser le dépôt '''jpackage-generic''' sur RHEL 5.}}


=== EPEL repository ===
=== EPEL repository ===


Spacewalk requires a Java Virtual Machine with version 1.6.0 or greater. [http://fedoraproject.org/wiki/EPEL EPEL - Extra Packages for Enterprise Linux] contains a version of the openjdk that works with Spacewalk. Other dependencies can get installed from EPEL as well.
Spacewalk requière une ''Machine Virtuel Java'' en version 1.6.0 ou supérieure. [http://fedoraproject.org/wiki/EPEL EPEL - Extra Packages pour Enterprise Linux] contient une version d'''openjdk'' qui fonctionne avec Spacewalk.
To get packages from EPEL just install this RPM:
D'autres dépendances peuvent être installés du dépôt EPEL sans problème.
Pour utiliser le dépôt '''EPEL''', on installe simplement le RPM du dépôt.


==== EPEL 5 (use for RHEL 5) ====
==== EPEL 5 (pour EL 5) ====
<pre>
<pre>
rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
</pre>
</pre>


==== EPEL 6 (use for RHEL 6) ====
==== EPEL 6 (pour EL 6) ====
<pre>
<pre>
rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
Ligne 106 : Ligne 94 :
=== CentOS 5 ===
=== CentOS 5 ===


Follow the instructions to use '''EPEL 5''' with the additions:
* Des paquets indispensables: <package>rhn-client-tools</package> et <package>rhnlib</package> sont supprimés des dépôts CentOS, ils  se trouvent dans le dépôt '''spacewalk-client'''.<br>On peut les installer facilement en installant <package>spacewalk-client-repo</package> du dépôt '''spacewalk-client'''.<pre>rpm -ihv http://yum.spacewalkproject.org/1.8-client/RHEL/5/x86_64/spacewalk-client-repo-1.8-4.el5.noarch.rpm</pre>
* Necessary packages rhn-client-tools and rhnlib were removed from CentOS, they can be found in spacewalk-client repo. Setup it by installing spacewalk-client-repo package.
*  Import de la clé GPG pour les RPM Red Hat:<pre># wget -O /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release http://www.redhat.com/security/37017186.txt</pre><pre># rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release</pre>
<pre>
rpm -ihv http://yum.spacewalkproject.org/1.8-client/RHEL/5/x86_64/spacewalk-client-repo-1.8-4.el5.noarch.rpm
</pre>
*  Import Red Hat's RPM GPG key:
<pre>
# wget -O /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release http://www.redhat.com/security/37017186.txt
# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
</pre>


== Database server ==
== Base de données ==


Spacewalk uses database server to store its primary data. It supports either PostgreSQL (version 8.4 and higher) or Oracle RDBMS (version 10g or higher).
Spacewalk utilise un serveur de bases de données pour sauvegarder ses données. Il supporte PostgreSQL (version 8.4 et supérieur) et Oracle RDBMS (version 10g et supérieur).


=== PostgreSQL server, set up by Spacewalk (embedded) ===
=== Serveur PostgreSQL, configuré par Spacewalk (embarqué) ===


You can let Spacewalk setup the PostgreSQL server on your machine without any manual intervention. Run:
On peut laisser Spacewalk configurer le serveur PostgreSQL sans intervention humaine.
<pre>
<pre>
yum install spacewalk-setup-embedded-postgresql
yum install spacewalk-setup-postgresql
</pre>
</pre>
and skip to the section '''Installing Spacewalk'''.
On doit alors ignorer la section '''Configurer Spacewalk'''.
 
=== PostgreSQL server, set up manually ===


If you prefer to setup the PostgreSQL manually, you have a choice to install it on the same machine as Spacewalk or different machine. Use [[Deploy/SpaceWalk/PostgresqlSetup|Setup PostgreSQL]] as a guide to get the server installed and setup. Namely, you need a database and a user, the user should be a superuser and the database should have the plpgsql language created.
=== Serveur PostgreSQL, configuré par nos soins ===


When using external PostgreSQL database, make sure the postgresql-contrib (or postgresql84-contrib on RHEL 5) package is installed on the database server.
Par préférence ou pour utiliser un serveur de bases de données déjà existant, on peut installer/configurer un serveur <package>postgresql</package> local ou distant. voir la [[Deploy/SpaceWalk/PostgresqlSetup|page de configuration de PostgreSQL]] afin d'installer et configurer le serveur. On a besoin d'une base et d'un utilisateur, et la base doit avoir le langage '''plpgsql'''.
{{Admon/important|Serveur de bases de données PostgreSQL distant|Pour utiliser un serveur PostgreSQL distant, il faut que le paquet <package>postgresql-contrib</package> (ou <package>postgresql84-contrib</package> pour EL 5) soit installé sur le serveur PostgreSQL.}}


=== Oracle Pre-Requisites ===
=== Oracle Pre-Requisites ===


In order to get Spacewalk to run with Oracle database backend, you need:
Pour utiliser un serveur de bases de données Oracle avec Spacewalk, il faut:


* Instant Client 11.2.0.3.0 installed on the Spacewalk machine
* Instant Client 11.2.0.3.0 installé sur le serveur Spacewalk.
* Oracle database server, either on the Spacewalk machine or on another host; versions 10g and 11g are known to work
* Oracle database server, soit sur le serveur Spacewalk ou une autre machine; les versions 10g and 11g fonctionnent.


Installation of the free but limited Oracle 11g XE database server can be found on the [https://fedorahosted.org/spacewalk/wiki/OracleXeSetup Oracle 11g Express Edition Setup] page. Hints for making Spacewalk work with external Oracle database server are on the [https://fedorahosted.org/spacewalk/wiki/FullOracleSetup Full Oracle Setup] page.
L'installation du serveur de bases de données gratuit mais limité d''''Oracle 11g XE database server''' est expliqué sur la page [https://fedorahosted.org/spacewalk/wiki/OracleXeSetup configuration d'Oracle 11g Express Edition du wiki fedora] page. La configuration spécifique de Spacewalk concernant Oracle database server est sur la page du wiki [https://fedorahosted.org/spacewalk/wiki/FullOracleSetup Full Oracle Setup].


== Installing Spacewalk ==
== Installer Spacewalk ==


Just ask yum to install the necessary packages. This will pull down and install the set of RPMs required to get Spacewalk to run.
On va demander à <app>yum</app> d'installer les paquets nécessaires, ainsi que leurs dépendances.


If you prefer the [wiki:PostgreSQL] backend, including the embedded version mentioned above:
Pour utiliser la base de données [[Deploy/SpaceWalk/PostgresqlSetup|PostgreSQL]], y compris pour la version embarquée.
<pre>
<pre>
yum install spacewalk-postgresql  
yum install spacewalk-postgresql  
</pre>
</pre>


If you tend to use the Oracle backend:
Pour utiliser la base de données Oracle
<pre>
<pre>
yum install spacewalk-oracle  
yum install spacewalk-oracle  
</pre>
</pre>


== Configuring the firewall ==
== Configurer le firewall ==
 
Spacewalk a besoin de se connecter sur plusieurs port en entrée et en sortie.


Spacewalk needs various inbound ports to be connectible. Use <tt>system-config-firewall</tt>} or edit <tt>/etc/sysconfig/iptables</tt>, adding the ports needed -- 80 and 443.
On peut utiliser <app>system-config-firewall</app> ou éditer le fichier <path>/etc/sysconfig/iptables</path> afin d'ajouter les ports 80 et 443.
On system with <tt>firewalld</tt> use <tt>firewall-cmd --add-service=http --add-service=http</tt>.
Add port 5222 if you want to push actions to client machines and 5269 for push actions to a Spacewalk Proxy, 69 udp if you want to use tftp.


== Configuring Spacewalk ==
Pour les systèmes utilisant <package>firewalld</package>
<pre>firewall-cmd --add-service=http --add-service=http</pre>


Your Spacewalk server should have a resolvable FQDN such as 'hostname.domain.com'.  If the installer complains that the hostname is not the FQDN, do not use the --skip-fqdn-test flag to skip !
On peut ajouter les ports suivants en entrée (optionnel)
* 5222 pour effectuer des actions sur les clients
* 5269 pour effectuer des actions sur le Proxy Spacewalk
* udp/69 pour utiliser tftp
On peut ajouter les ports suivants en sortie (optionnel)
* 4545 pour le monitoring


The setup requires that the database account has a password.
== Configurer Spacewalk ==
{{Admon/important|Database password|Please don't use ''' '#' ''' (number sign/pound/hash) and ''' '@' ''' in your database password otherwise installation will fail.}}


Once the Spacewalk RPM is installed you need to configure the application.
Le serveur Spacewalk doit avoir un nom pleinement résolvable (FQDN) comme ''spacewalk.b2pweb.com''.
{{Admon/warning|Erreur sur la résolution de nom pleinement qualifié|Si l'installateur se plaint de ne pas trouver le nom pleinement qualifié de l'hôte, il ne faut pas utiliser l'option '''--skip-fqdn-test''' afin de passer outre !}}
{{Admon/important|Mot de passe pour la connexion à la base de données|La configuration exige d'avoir un mot de passe pour la connexion à la base de données.<br>
De plus, il ne faut surtout pas utiliser les caractères ''' '#' ''', ''' '+' ''', ''' '-' ''', ''' '£' '''  (number sign/pound/hash) et ''' '@' ''' dans le mot de passe, ou le script d'initialisation echouera.}}


If you have installed <tt>spacewalk-setup-embedded-postgresql</tt>, run
Une fois les RPM de Spacewalk installés, on doit configurer l'application.


Si c'est le paquet <package>spacewalk-setup-embedded-postgresql</package> qui a été installé
<pre>
<pre>
spacewalk-setup --disconnected
spacewalk-setup --disconnected
</pre>
</pre>
If you've set up the database server manually (both on the same and on different machine), run
 
Sinon
<pre>
<pre>
spacewalk-setup --disconnected --external-db
spacewalk-setup --disconnected --external-db
</pre>
</pre>
An example session is as follows:


Exemple d'exécution
<pre>
<pre>
# spacewalk-setup --disconnected --external-db
spacewalk-setup --disconnected --external-db
** Database: Setting up database connection for PostgreSQL backend.
** Database: Setting up database connection for PostgreSQL backend.
Hostname (leave empty for local)?  
Hostname (leave empty for local)?  
Database? spaceschema
Database? spaceschema
Username? spaceuser
Username? spaceuser
Password? <spacewd>
Password?  
** Database: Populating database.
** Database: Populating database.
*** Progress: ##################################
*** Progress: ####################################
* Setting up users and groups.
* Setting up users and groups.
** GPG: Initializing GPG and importing key.
** GPG: Initializing GPG and importing key.
** GPG: Creating /root/.gnupg directory
** GPG: Creating /root/.gnupg directory
You must enter an email address.
You must enter an email address.
Admin Email Address? srs@b2pweb.com
Admin Email Address? root@spacewalk.b2pweb.com
* Performing initial configuration.
* Performing initial configuration.
* Activating Spacewalk.
* Activating Spacewalk.
Ligne 205 : Ligne 194 :
* Enabling Monitoring.
* Enabling Monitoring.
* Configuring apache SSL virtual host.
* Configuring apache SSL virtual host.
Should setup configure apache's default ssl server for you (saves original ssl.conf) [Y]?  
Should setup configure apache's default ssl server for you (saves original ssl.conf) [Y]?
** /etc/httpd/conf.d/ssl.conf has been backed up to ssl.conf-swsave
** /etc/httpd/conf.d/ssl.conf has been backed up to ssl.conf-swsave
* Configuring tomcat.
* Configuring tomcat.
** /etc/tomcat6/tomcat6.conf has been backed up to tomcat6.conf-swsave
** /etc/sysconfig//tomcat6 has been backed up to tomcat6-swsave
** /etc/tomcat6/server.xml has been backed up to server.xml-swsave
** /etc/tomcat6//server.xml has been backed up to server.xml-swsave
** /etc/tomcat6/web.xml has been backed up to web.xml-swsave
** /etc/tomcat6//web.xml has been backed up to web.xml-swsave
* Configuring jabberd.
* Configuring jabberd.
* Creating SSL certificates.
* Creating SSL certificates.
CA certificate password? <b2p2010web>
CA certificate password?  
Re-enter CA certificate password? <b2p2010web>
Re-enter CA certificate password?  
Organization? B2PWeb
Organization? B2PWeb
Organization Unit [spacewalk.b2pweb.com]?  
Organization Unit [spacewalk.b2pweb.com]? SRS Spacewalk
Email Address [srs@b2pweb.com]?  
Email Address [root@spacewalk.b2pweb.com]?  
City? Cavaillon
City? Cavaillon
State? PACA 
State? P.A.C.A.
Country code (Examples: "US", "JP", "IN", or type "?" to see a list)? FR
Country code (Examples: "US", "JP", "IN", or type "?" to see a list)? FR
** SSL: Generating CA certificate.
** SSL: Generating CA certificate.
Ligne 232 : Ligne 221 :
Processing /etc/cobbler/settings
Processing /etc/cobbler/settings
`/etc/cobbler/settings' -> `/etc/cobbler/settings-swsave'
`/etc/cobbler/settings' -> `/etc/cobbler/settings-swsave'
cobblerd does not appear to be running/accessible
Cobbler requires tftp and xinetd services be turned on for PXE provisioning functionality. Enable these services [Y]?
Cobbler requires tftp and xinetd services be turned on for PXE provisioning functionality. Enable these services [Y]?  
cobblerd does not appear to be running/accessible
* Restarting services.
* Restarting services.
Installation complete.
Installation complete.
Visit https://spacewalk.b2pweb.com to create the Spacewalk administrator account.
Visit https://spacewalk.b2pweb.com to create the Spacewalk administrator account.
</pre>
</pre>
{{Admon/tip|Si <app>spacewalk-setup</app> échoue|Il faut corriger l'erreur rapportée et éventuellement la chercher dans les logs du répertoire <path>/var/log/rhn</path>, ainsi que dans les logs de la base de données, d'Apache ou de tomcat.}}


Should the spacewalk-setup fail, check the error it gives you and also investigate the logs in /var/log/rhn, as well as the logs from your database server, Apache server and tomcat.
=== Configurer Spacewalk avec un fichier ===
 
=== Configuring Spacewalk with an Answer File ===
 
You can also configure Spacewalk by using an answer file, by running <tt>spacewalk-setup</tt> like


On peut aussi configurer Spacewalk en utilisant un fichier et en exécutant <app>spacewalk-setup</app>
<pre>
<pre>
spacewalk-setup --disconnected --answer-file=<FILENAME>
spacewalk-setup --disconnected --answer-file=<FILENAME>
</pre>
</pre>
 
{{Admon/note|Valeur inexistante ou vide|Si une valeur n'est pas déclarée ou est vide, la valeur sera demandée sur la console.}}
An example answer file for the Oracle database backend:
 
<pre>
admin-email = root@localhost
ssl-set-org = Spacewalk Org
ssl-set-org-unit = spacewalk
ssl-set-city = My City
ssl-set-state = My State
ssl-set-country = US
ssl-password = spacewalk
ssl-set-email = root@localhost
ssl-config-sslvhost = Y
db-backend=oracle
db-user=spacewalk
db-password=spacewalk
db-name=xe
db-host=localhost
db-port=1521
enable-tftp=Y
</pre>
 
If you do not supply a value or leave out a key you will be prompted to supply that answer.
 
For PostgreSQL, you need to create something like this:


<pre>
<pre>
admin-email = root@localhost
admin-email = root@spacewalk.b2pweb.com
ssl-set-org = Spacewalk Org
ssl-set-org = B2PWeb
ssl-set-org-unit = spacewalk
ssl-set-org-unit = SRS Spacewalk
ssl-set-city = My City
ssl-set-city = Cavaillon
ssl-set-state = My State
ssl-set-state = P.A.C.A.
ssl-set-country = US
ssl-set-country = FR
ssl-password = spacewalk
ssl-password = swpasswd
ssl-set-email = root@localhost
ssl-set-email = root@spacewalk.b2pweb.com
ssl-config-sslvhost = Y
ssl-config-sslvhost = Y
db-backend=postgresql
db-backend=postgresql
Ligne 294 : Ligne 255 :
</pre>
</pre>


After <tt>spacewalk-setup</tt> is complete your application is ready to go!
après l'exécution complète de <app>spacewalk-setup</app>, l'application est utilisable !


Once you've made sure you can login to the Spacewalk WebUI, you can then proceed to the next step: [[Deploy/SpaceWalk/Upload|Uploading Content]].
Une fois assuré de se connecter sur l'interface web Spacewalk, on peut se rendre à l'adresse https://spacewalk.b2pweb.com pour la prochaine étape: [[Deploy/SpaceWalk/Upload|Ajouter de contenu]]


== Managing Spacewalk ==
== Gérer Spacewalk ==


Spacewalk consists of several services. Each of them has its own init.d script to stop/start/restart. If you want manage all spacewalk services at once use
Spacewalk contient beaucoup de services. Chacun d'eux possède son propre script de gestion (<path>/etc/init.d</path>). Pour gérer tous les services d'un coup
<pre>
<pre>
/usr/sbin/spacewalk-service [stop|start|restart].
/usr/sbin/spacewalk-service [stop|start|restart].
</pre>
</pre>

Version du 14 août 2013 à 09:37

LogoSpacewalk.svg

Installation de Spacewalk 2.0.

Pré-requis

SpacewalkRelease2.0.png
  • Ports ouverts en sortie 80, 443, 4545 (seulement si le monitoring est souhaité)
  • Ports ouverts en entrée 80, 443, 5222 (seulement pour effectuer des actions sur les clients) and 5269 (seulement pour effectuer des actions sur le Proxy Spacewalk), 69 udp pour utiliser tftp
  • Espace disque pour la base de données: 250 KiB par client + 500 KiB par channel + 230 KiB par paquet du channel (ex: 1.1GiB pour un channel avec 5000 paquets)
  • Espace disque pour les paquets (default <path>/var/satellite</path>): Red Hat recommende 6GB par channel pour les siens
  • 2GB RAM minimum, 4GB recommendé
  • Un système d'exploitation à jour.
  • Pour utiliser LDAP comme service d'identité central, voir https://fedorahosted.org/spacewalk/wiki/SpacewalkWithLDAP
  • In the following steps we assume you have a default, vanilla installation of your operating system, without any customized setup of yum repositories, user management, security, etc.

Mise en place du dépôt Spacewalk

Les RPM sont disponible au téléchargement sur le dépôt <app>yum</app> du projet:

Pour l'utiliser facilement, On va installer le paquet <package>spacewalk-repo</package>

RHEL 5, CentOS 5

rpm -Uvh http://yum.spacewalkproject.org/2.0/RHEL/5/x86_64/spacewalk-repo-2.0-3.el5.noarch.rpm

RHEL 6, CentOS 6, Scientific Linux 6

rpm -Uvh http://yum.spacewalkproject.org/2.0/RHEL/6/x86_64/spacewalk-repo-2.0-3.el6.noarch.rpm

Fedora 18

rpm -Uvh http://yum.spacewalkproject.org/2.0/Fedora/18/x86_64/spacewalk-repo-2.0-3.fc18.noarch.rpm

Fedora 19

rpm -Uvh http://yum.spacewalkproject.org/2.0/Fedora/19/x86_64/spacewalk-repo-2.0-3.fc19.noarch.rpm

Dépôts et paquets additionels

RHEL 6

Pour utiliser Spacewalk sur RHEL 6, Il est obligatoire d'être inscrit sur le channel RHN:

  • Red Hat Optional Server 6

Jpackage repository

RHEL 6, SL 6, CentOS 6 and Fedora

Pour utiliser Spacewalk sur RHEL 6 et Fedora, quelques dépendances nécessite des paquets provenant du dépôt jpackage. Il faut donc l'installer avant de poursuivre l'installation.

Liste des mirroirs disponibles sur http://www.jpackage.org/mirroring.php

cat > /etc/yum.repos.d/jpackage-generic.repo << EOF
[jpackage-generic]
name=JPackage generic
#baseurl=http://mirrors.dotsrc.org/pub/jpackage/5.0/generic/free/
mirrorlist=http://www.jpackage.org/mirrorlist.php?dist=generic&type=free&release=5.0
enabled=1
gpgcheck=1
gpgkey=http://www.jpackage.org/jpackage.asc
EOF

Nous voulons spécifiquement le répertoire 5.0 dans l'URL ci dessus.

Warning.png
Dépôt jpackage et RHEL
Il ne faut pas utiliser le dépôt jpackage-generic sur RHEL 5.

EPEL repository

Spacewalk requière une Machine Virtuel Java en version 1.6.0 ou supérieure. EPEL - Extra Packages pour Enterprise Linux contient une version d'openjdk qui fonctionne avec Spacewalk. D'autres dépendances peuvent être installés du dépôt EPEL sans problème. Pour utiliser le dépôt EPEL, on installe simplement le RPM du dépôt.

EPEL 5 (pour EL 5)

rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm

EPEL 6 (pour EL 6)

rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm

CentOS 5

  • Des paquets indispensables: <package>rhn-client-tools</package> et <package>rhnlib</package> sont supprimés des dépôts CentOS, ils se trouvent dans le dépôt spacewalk-client.
    On peut les installer facilement en installant <package>spacewalk-client-repo</package> du dépôt spacewalk-client.
    rpm -ihv http://yum.spacewalkproject.org/1.8-client/RHEL/5/x86_64/spacewalk-client-repo-1.8-4.el5.noarch.rpm
  • Import de la clé GPG pour les RPM Red Hat:
    # wget -O /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release http://www.redhat.com/security/37017186.txt
    # rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

Base de données

Spacewalk utilise un serveur de bases de données pour sauvegarder ses données. Il supporte PostgreSQL (version 8.4 et supérieur) et Oracle RDBMS (version 10g et supérieur).

Serveur PostgreSQL, configuré par Spacewalk (embarqué)

On peut laisser Spacewalk configurer le serveur PostgreSQL sans intervention humaine.

yum install spacewalk-setup-postgresql

On doit alors ignorer la section Configurer Spacewalk.

Serveur PostgreSQL, configuré par nos soins

Par préférence ou pour utiliser un serveur de bases de données déjà existant, on peut installer/configurer un serveur <package>postgresql</package> local ou distant. voir la page de configuration de PostgreSQL afin d'installer et configurer le serveur. On a besoin d'une base et d'un utilisateur, et la base doit avoir le langage plpgsql.

Important.png
Serveur de bases de données PostgreSQL distant
Pour utiliser un serveur PostgreSQL distant, il faut que le paquet <package>postgresql-contrib</package> (ou <package>postgresql84-contrib</package> pour EL 5) soit installé sur le serveur PostgreSQL.

Oracle Pre-Requisites

Pour utiliser un serveur de bases de données Oracle avec Spacewalk, il faut:

  • Instant Client 11.2.0.3.0 installé sur le serveur Spacewalk.
  • Oracle database server, soit sur le serveur Spacewalk ou une autre machine; les versions 10g and 11g fonctionnent.

L'installation du serveur de bases de données gratuit mais limité d'Oracle 11g XE database server est expliqué sur la page configuration d'Oracle 11g Express Edition du wiki fedora page. La configuration spécifique de Spacewalk concernant Oracle database server est sur la page du wiki Full Oracle Setup.

Installer Spacewalk

On va demander à <app>yum</app> d'installer les paquets nécessaires, ainsi que leurs dépendances.

Pour utiliser la base de données PostgreSQL, y compris pour la version embarquée.

yum install spacewalk-postgresql 

Pour utiliser la base de données Oracle

yum install spacewalk-oracle 

Configurer le firewall

Spacewalk a besoin de se connecter sur plusieurs port en entrée et en sortie.

On peut utiliser <app>system-config-firewall</app> ou éditer le fichier <path>/etc/sysconfig/iptables</path> afin d'ajouter les ports 80 et 443.

Pour les systèmes utilisant <package>firewalld</package>

firewall-cmd --add-service=http --add-service=http

On peut ajouter les ports suivants en entrée (optionnel)

  • 5222 pour effectuer des actions sur les clients
  • 5269 pour effectuer des actions sur le Proxy Spacewalk
  • udp/69 pour utiliser tftp

On peut ajouter les ports suivants en sortie (optionnel)

  • 4545 pour le monitoring

Configurer Spacewalk

Le serveur Spacewalk doit avoir un nom pleinement résolvable (FQDN) comme spacewalk.b2pweb.com.

Warning.png
Erreur sur la résolution de nom pleinement qualifié
Si l'installateur se plaint de ne pas trouver le nom pleinement qualifié de l'hôte, il ne faut pas utiliser l'option --skip-fqdn-test afin de passer outre !
Important.png
Mot de passe pour la connexion à la base de données
La configuration exige d'avoir un mot de passe pour la connexion à la base de données.
De plus, il ne faut surtout pas utiliser les caractères '#' , '+' , '-' , '£' (number sign/pound/hash) et '@' dans le mot de passe, ou le script d'initialisation echouera.

Une fois les RPM de Spacewalk installés, on doit configurer l'application.

Si c'est le paquet <package>spacewalk-setup-embedded-postgresql</package> qui a été installé

spacewalk-setup --disconnected

Sinon

spacewalk-setup --disconnected --external-db

Exemple d'exécution

spacewalk-setup --disconnected --external-db
** Database: Setting up database connection for PostgreSQL backend.
Hostname (leave empty for local)? 
Database? spaceschema
Username? spaceuser
Password? 
** Database: Populating database.
*** Progress: ####################################
* Setting up users and groups.
** GPG: Initializing GPG and importing key.
** GPG: Creating /root/.gnupg directory
You must enter an email address.
Admin Email Address? root@spacewalk.b2pweb.com
* Performing initial configuration.
* Activating Spacewalk.
** Loading Spacewalk Certificate.
** Verifying certificate locally.
** Activating Spacewalk.
* Enabling Monitoring.
* Configuring apache SSL virtual host.
Should setup configure apache's default ssl server for you (saves original ssl.conf) [Y]?
** /etc/httpd/conf.d/ssl.conf has been backed up to ssl.conf-swsave
* Configuring tomcat.
** /etc/sysconfig//tomcat6 has been backed up to tomcat6-swsave
** /etc/tomcat6//server.xml has been backed up to server.xml-swsave
** /etc/tomcat6//web.xml has been backed up to web.xml-swsave
* Configuring jabberd.
* Creating SSL certificates.
CA certificate password? 
Re-enter CA certificate password? 
Organization? B2PWeb
Organization Unit [spacewalk.b2pweb.com]? SRS Spacewalk
Email Address [root@spacewalk.b2pweb.com]? 
City? Cavaillon
State? P.A.C.A.
Country code (Examples: "US", "JP", "IN", or type "?" to see a list)? FR
** SSL: Generating CA certificate.
** SSL: Deploying CA certificate.
** SSL: Generating server certificate.
** SSL: Storing SSL certificates.
* Deploying configuration files.
* Update configuration in database.
* Setting up Cobbler..
Processing /etc/cobbler/modules.conf
`/etc/cobbler/modules.conf' -> `/etc/cobbler/modules.conf-swsave'
Processing /etc/cobbler/settings
`/etc/cobbler/settings' -> `/etc/cobbler/settings-swsave'
Cobbler requires tftp and xinetd services be turned on for PXE provisioning functionality. Enable these services [Y]?
* Restarting services.
Installation complete.
Visit https://spacewalk.b2pweb.com to create the Spacewalk administrator account.
Idea.png
Si <app>spacewalk-setup</app> échoue
Il faut corriger l'erreur rapportée et éventuellement la chercher dans les logs du répertoire <path>/var/log/rhn</path>, ainsi que dans les logs de la base de données, d'Apache ou de tomcat.

Configurer Spacewalk avec un fichier

On peut aussi configurer Spacewalk en utilisant un fichier et en exécutant <app>spacewalk-setup</app>

spacewalk-setup --disconnected --answer-file=<FILENAME>
Note.png
Valeur inexistante ou vide
Si une valeur n'est pas déclarée ou est vide, la valeur sera demandée sur la console.
admin-email = root@spacewalk.b2pweb.com
ssl-set-org = B2PWeb
ssl-set-org-unit = SRS Spacewalk
ssl-set-city = Cavaillon
ssl-set-state = P.A.C.A.
ssl-set-country = FR
ssl-password = swpasswd
ssl-set-email = root@spacewalk.b2pweb.com
ssl-config-sslvhost = Y
db-backend=postgresql
db-name=spaceschema
db-user=spaceuser
db-password=spacepw
db-host=host
db-port=5432
enable-tftp=Y

après l'exécution complète de <app>spacewalk-setup</app>, l'application est utilisable !

Une fois assuré de se connecter sur l'interface web Spacewalk, on peut se rendre à l'adresse https://spacewalk.b2pweb.com pour la prochaine étape: Ajouter de contenu

Gérer Spacewalk

Spacewalk contient beaucoup de services. Chacun d'eux possède son propre script de gestion (<path>/etc/init.d</path>). Pour gérer tous les services d'un coup

/usr/sbin/spacewalk-service [stop|start|restart].