Installare Spacewalk su CentOS 6 (7)

By | luglio 18, 2017

Spacewalk è un prodotto open source per la gestione centralizzata di sistemi Linux, grazie a una comoda interfaccia web. La caratteristica principale di Spacewalk è la gestione centralizzata degli aggiornamenti di tutte le distrubzioni derivate da RedHat, come ad esempio CentOS, Fedora, Scientific Linux ecc. Ma questa è una delle tante funzionalità del prodotto, dove troveremo anche la possibilità di sincronizzare in un gruppo di sistemi file di configurazione, la possibilità di lanciare comandi, script in bash su tutti i sistemi collegati, e tanto altro ancora. In questo primo paragrafo parleremo di come installarlo su CentOS 6.

Prerequisiti

  • Installare CentOS 6.x
  • Configurare l’FQDN (es spacewalk.miodominio.com) via dns o file host
  • Disabilitare iptables durante l’istallazione
  • Abilitare i repository EPEL
  • Creare una partizione separata di almeno 60 Gb in LVM e montarla in /var/satellite (Consigliato)

Installazione

L’installazione avverrà in 3 passaggi:

  • Installazione dei repository necessari
  • Installazione di Spacewalk con postrgress
  • Configurazione iniziale di Spacewalk
  • Tuning del kernel e di postgress

Iniziamo…

Installazione dei repository necessari

Installiamo i repo di Spacewalk 2.2 (ultima versione disponibile ad oggi) con il comando:

# rpm -Uvh http://yum.spacewalkproject.org/2.2/RHEL/6/x86_64/spacewalk-repo-2.2-1.el6.noarch.rpm

Aggiungiamo il repository Jpackage per l’installazione di Java ed eventuali plugin creando il file /etc/yum.repos.d/jpackage-generic.repo

# touch /etc/yum.repos.d/jpackage-generic.repo

e aggiungiamo le righe:

[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

salviamo il file e installiamo i repository EPEL seguendo QUESTA guida.

Una volta aggiunti/installati i 3 repository necessari, aggiorniamo il sistema con il comando:

# yum clean all
# yum update -y 

completata l’installazione degli aggiornamenti, riavviamo il sistema:

# reboot

Installazione di Spacewalk con postrgress

Dopo il riavvio installiamo il pacchetto di spacewalk e relative dipendenze, con il comando:

# yum install -y spacewalk-postgresql spacewalk-setup-postgresql

Completata l’installazione del pacchetto settiamo il LOCALE per il database postgress:

export LANGUAGE="en_US.UTF-8"
export LANG="en_US.UTF-8"
export LC_ALL="en_US.UTF-8"

Inizializiamo il DB con il comando:

# /etc/init.d/postgresql initdb

avviamo postgress:

# /etc/init.d/postgresql start
# chkconfig postgresql on

Una volta avviato postgress dobbiamo modificare il template di default con codifica UTF8.

Logghiamoci con l’utenza postgres

# sudo su postgres

accediamo al database con il comando:

# psql

Entrati nella console di postgress lanciamo i comandi:

postgres=# UPDATE pg_database SET datistemplate=FALSE WHERE datname='template1';
postgres=# DROP DATABASE template1;
postgres=# CREATE DATABASE template1 WITH owner=postgres template=template0 encoding='UTF8';
postgres=# UPDATE pg_database SET datistemplate=TRUE WHERE datname='template1';
postgres=# \q

# exit

Riavviamo il servizio:

# /etc/init.d/postgresql restart

Configurazione iniziale di Spacewalk

A questo punto passiamo alla configuarazione vera e propria di Spacewalk, lanciamo il comando:

# spacewalk-setup --disconnected

E inseriamo le nostre informazioni:

[root@spacewalk ~]# spacewalk-setup --disconnected
** Database: Setting up database connection for PostgreSQL backend.
Database "rhnschema" does not exist
** Database: Installing the database:
** Database: This is a long process that is logged in:
** Database:   /var/log/rhn/install_db.log
*** Progress: #
** Database: Installation complete.
** 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? admin@mydomain.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]? Y
** /etc/httpd/conf.d/ssl.conf has been backed up to ssl.conf-swsave
* Configuring tomcat.
* Configuring jabberd.
* Creating SSL certificates.
CA certificate password?
Re-enter CA certificate password?
Organization? My Organization
Organization Unit [spacewalk.mydomain.com]? mydomain.com
Email Address [admin@mydomain.com]?
City? Rome
State? Italy
Country code (Examples: "US", "JP", "IN", or type "?" to see a list)? IT
** 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]? Y
* Restarting services.
Installation complete.
Visit https://spacewalk.mydomain.com to create the Spacewalk administrator account.

Rechiamoci all’indirizzo https://spacewalk.mydomain.com e inseriamo le credenziali per accedere e gestire Spacewalk

Tuning del kernel e di postgress

Facciamo un pò di tuning al DB migliorando così performance e connection.

Installiamo il pacchetto pgtune con il comando:

# yum install - y pgtune

completata l’installazione lanciamo i comandi:

# cp /var/lib/pgsql/data/postgresql.conf  /var/lib/pgsql/data/postgresql.conf_bk
# pgtune --type=web -c 600 -i /var/lib/pgsql/data/postgresql.conf >/root/pgtune.conf
# cp /root/pgtune.conf /var/lib/pgsql/data/postgresql.conf
# chown postgres.postgres /var/lib/pgsql/data/postgresql.conf

a questo punto modifichiamo il valore del kernel SHMMAX con i comandi:

# echo 2147483648 > /proc/sys/kernel/shmmax
# echo "kernel.shmmax=2147483648" >> /etc/sysctl.conf

Riavviamo postgress con il comando:

# service postgresql restart

Nelle prossime guide Vedremo come creare canali personalizzati, repository, come agganciare il nostro primo server e come distribuire file di configurazione.

  • Creare Canali Software su Spacewalk

Save

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *