samedi, juillet 06, 2013

puppet et etckeeper

cat /etc/debian_version => 6.0.7

C'est reparti avec une squeeze !

J'installe puppet, et je reprends ma conf petit à petit.
Premier problème ... installer etckeeper, mais le plugger sur un svn distant (lequel ?)

anciennement, le svn de etc était sur experience. Est-ce judicieux ? je pense que je vais le mettre sur backup

On est donc parti pour faire un svn sur backup ;)

suivi du tuto http://www.howtoforge.com/debian_subversion_websvn

svn est déjà installlé, et etc déjà en place, oubli du ot de passe,
suivi du tuto http://notes.chpwssn.com/

commande  htpasswd -c -m /var/lib/svn/dav_svn.passwd $user_name


sur ppprod.net, install de git, subversion, git-svn

récupération du script "/usr/local/bin/etckeeper_svn_mkdir.sh", inutile : branche existante


config (on execute le contenu du puppet a la main)backup etcfetchinstall etckeeperrestore etcetckeeper commit

verif du debian_version

Bon, rien n'a marché, le fait de reprendre un svn avec contenu est une erreur. Je recrée un svn sur backup, et je recommence tout.

bon, comme d'hab, ça m'a pris 5 heures.

vous pouvez penser "quelle truffe", j'ai une petite question : pensez vous que mettre sur un svn accessible de l’extérieur votre -passwd est judicieux, pensez vous que vos .objects en gconf est judicieux ?Si vous répondez non a ces questions, vous aurez vite compris que (comme d'hab) le tutorial 'for dummies' ne correspond pas a votre besoin.

si vous voulez avoir un etckeeper sur svn distant, mailez moi ;)

Je m'attaque à puppet.
5 heures de plus : avoir un agent et un master sur la meme machine est impossible. problème de conf et conflit entre les ssl master et agent.
Le problème est que le 'puppet cert' se base sur la conf agent, sauf que la validation est faite par le master.
Encore un truc mal branlé !!!!!

Je passe par genconfig sur master avec modif du default pour la conf.
penser a commenter le genconfig


puppetmaster puppet-master[14719]: 
(/File[/var/puppet/facts]/ensure) change from directory to file failed: Could 
not set 'file on ensure: Is a directory - /var/puppet/facts

Comment out the 'factdest' setting in the [master] section of the config files
produced by the --genconfig option and it will work.

Résultat, je passe a l'agent lancé en cron. 

www:~# puppet agent --onetime --verbose --no-daemonize --ssldir /etc/puppet/ssl --server www.ppprod.net --fqdn localhost

info: Creating a new SSL key for localhost
info: Creating a new SSL certificate request for localhost
info: Certificate Request fingerprint (md5): 7E:7B:1C:93:E6:80:9C:7D:05:8E:BB:73:5C:56:8E:42

Exiting; no certificate found and waitforcert is disabled

www:/etc/puppet# puppetca --config=/etc/puppet/puppetmaster.conf -l
  "localhost" (7E:7B:1C:93:E6:80:9C:7D:05:8E:BB:73:5C:56:8E:42)
www:/etc/puppet# puppetca --config=/etc/puppet/puppetmaster.conf -s localhost
notice: Signed certificate request for localhost
notice: Removing file Puppet::SSL::CertificateRequest localhost at '/var/lib/puppet/ssl/ca/requests/localhost.pem'


www:~# puppet agent --onetime --verbose --no-daemonize --ssldir /etc/puppet/ssl --server www.ppprod.net --fqdn localhost
info: Caching certificate for localhost
info: Caching certificate_revocation_list for ca
info: Caching catalog for localhost
info: Applying configuration version '1373192799'
info: Creating state file /var/lib/puppet/state/state.yaml
notice: Finished catalog run in 0.01 seconds

pour lancer le service, penser a mettre --rundir=/etc/puppet/run dans le default.

Ca marche !

prochaine étape, puppet/manifest en gconf

Aucun commentaire: