Installation de cobbler sur CentOS 6.6

Introduction

Ce texte explique comment installer cobbler sur un système CentOS 6.6.

La solution est testée sur la plate forme vituelle :

  • hôte CentOS 7
  • solution de virtualisation: libvirt

Préparation de l'hôte

Configuration NFS

mkdir /home/cobbler
printf -- "/home/cobbler   192.168.122.2(rw,no_root_squash)" >> /etc/exports
printf -- "/home/depots    192.168.122.2(ro,no_root_squash)" >> /etc/exports
exportfs -r

Installation du serveur

  • Création d'une machine virtuelle standard : CentOS 6
  • Réseau : NAT le temps de l'installation
  • Installation du système: minimal

Fixer une @ip pour le serveur

virsh  dumpxml  cobbler | grep 'mac address'
virsh edit default

<dhcp>
  ...
  <host mac='52:54:00:d6:ea:e3' name='god' ip='192.168.122.2' />
</dhcp>

virsh net-destroy default
virsh net-start default

Configuration du serveur

Configuration du réseau : DHCP

Installation de dépot EPEL

yum install epel-release facter

Desactivation de selinux

setenforce permissive
sed -i 's/^SELINUX=.*$/SELINUX=permissive/' /etc/sysconfig/selinux
NOTE: BAD IDEA but the article was written in 2014. What's up now ?

Installation de paquets de confort

yum install vim man task
task config locale fr-FR

Installation de cobbler

Installation

Installation de cobbler serveur + web

yum install -y cobbler cobbler-web git

Configuration pour un démarrage au boot

chkconfig cobbler on
chkconfig httpd on
service cobbler start
service httpd start

Installation des paquets pour le pxe

    yum install syslinux.x86_64

Configuration

Serveur kickstart

sed -i "s/^server:.*/server: $(facter ipaddress)/" /etc/cobblers/settings

Serveur tftp

sed -i "s/^next_server:.*/next_server: $(facter ipaddress)/" /etc/cobblers/settings

utilisation de git

sed -i 's/^scm_track_mode/scm_track_mode: "git"/' /etc/cobblers/settings

notes

  • faire la configuration des variabbles 'GIT_' pour cobbler
  • UTILISER cobbler setting edit --name=foo --value=bar pour faire de la config plutôt que sed !!

On applique les modifications

cobbler sync

Test de la configuration

cobbler check

Test Web

login/pass: cobbler/cobbler

firefox http://192.168.122.1/cobbler_web

Utilisation montage nfs pour le stockage de cobbler

Creation de l'alias datastore pour une utilisation par autofs

printf -- '192.168.122.1 datasrore' >> /etc/hosts

Installation des paquets nécessaires pour autofs

yum install nfs-utils autofs
service autofs start
chkconfig autofs on

Comme la VM serveur n'a pas beaucoup de place, on utilise un montage nfs sur l'hôte pour l'environnement cobbler. Il faut donc déplacer l'éxistant:

cd /var/www
mv cobbler cobbler_ori
ln -sf /net/datastore/home/cobbler .
rsync -av cobbler_ori cobbler

.. note:: - etudier l'arborescence pour ne pas tout monter - il semble que ce soit ks_mirror qui prend de la place car il contient les distrib.

Verification

cobbler check

Import dune distribution

Montage de l'iso

ls -al /net/datastore/home/depots/ISO
mount -t iso9660 -o loop,ro /net/datastore/home/depots/ISO/CentOS-7-x86_64.iso /mnt

Import d'une ditribution

# cobbler import --name=CentOS7 --arch=x86_64 --path=/mnt
task started: 2014-11-29_004454_import
task started (id=Media import, time=Sat Nov 29 00:44:54 2014)
Found a candidate signature: breed=redhat, version=rhel6
Found a candidate signature: breed=redhat, version=rhel7
Found a matching signature: breed=redhat, version=rhel7
Adding distros from path /var/www/cobbler/ks_mirror/CentOS7-x86_64:
creating new distro: CentOS7-x86_64
trying symlink: /var/www/cobbler/ks_mirror/CentOS7-x86_64 -> /var/www/cobbler/links/CentOS7-x86_64
creating new profile: CentOS7-x86_64
associating repos
checking for rsync repo(s)
checking for rhn repo(s)
checking for yum repo(s)
starting descent into /var/www/cobbler/ks_mirror/CentOS7-x86_64 for CentOS7-x86_64
processing repo at : /var/www/cobbler/ks_mirror/CentOS7-x86_64
need to process repo/comps: /var/www/cobbler/ks_mirror/CentOS7-x86_64
looking for /var/www/cobbler/ks_mirror/CentOS7-x86_64/repodata/*comps*.xml
Keeping repodata as-is :/var/www/cobbler/ks_mirror/CentOS7-x86_64/repodata
*** TASK COMPLETE ***

Cette action crée une nouvelle distribution et un profile par défaut ayant le même nom.

TODO