Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 08/09/2016, à 22:48

czar1983

Puppet impossible de joindre le serveur pour Certificat

Bonjour à tous,

Voilà j'essaye d'apprendre à utiliser Puppet pour un futur job et j'ai donc décider de monter un Lab sous Vbox.

Donc j'ai deux machine en bridge

- ubuntu puppet agent 192.168.0.5

- debian server puppet master 192.168.0.14

Donc je ping les deux machines avec les Ip et les hostsmane.

le telnet depuis mon client sur le serveur fonctionne mais quand je veux faire une demande de cert à mon serveur j'ai le message suivant qui apparait

   

Error: Could not request certificate: Failed to open TCP connection to puppet:8140 (getaddrinfo: Name or service not known)

De l'autre coté sur le master ma commande suivante :

   

puppet cert sign -- all

me renvoi ceci :

+ "debianserverpuppet"          (SHA256) 41:70:70:A7:E5:F5:1D:27:FB:7C:1F:FD:64:15:D1:3C:FA:48:5A:74:2D:CF:A1:41:77:AE:83:07:B3:2B:B8:84
+ "rbo-virtualboxopenclassroom" (SHA256) 13:5E:F8:26:A5:A4:90:BC:D9:54:63:A5:74:AF:23:7C:27:B3:C1:57:6A:F3:65:5F:AB:7C:AA:28:A1:6C:89:77

mais quand je veux valider le cert avec le nom de machine j'ai le message suivant qui apparait :

   

root@debianServerPuppet:/etc/puppet# puppet cert sign  rbo-virtualboxopenclassroom
Error: Could not find certificate request for rbo-virtualboxopenclassroom

J'ai tout essayer editer le fichier host ouvrir les ports faire des redirections via iptables rien n'y fait.

Voici mon Iptables :

rbo@rbo-VirtualBoxOpenClassRoom:/etc/puppet$ sudo iptables -L --line-number
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination         
1    ACCEPT     tcp  --  debianserverpuppet   192.168.0.5          state NEW,ESTABLISHED tcp dpt:8140
2    ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:8140 state NEW

Chain FORWARD (policy ACCEPT)
num  target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination         
1    ACCEPT     tcp  --  192.168.0.5          debianserverpuppet   state NEW,ESTABLISHED tcp spt:8140


Merci pour votre aide

Dernière modification par czar1983 (Le 08/09/2016, à 22:52)

Hors ligne

#2 Le 09/09/2016, à 10:48

jlmas

Re : Puppet impossible de joindre le serveur pour Certificat

Sur le client, dans le fichier /etc/puppet/puppet.conf

Tu as bien la directive server

[main]
logdir=/var/log/puppet
vardir=/var/lib/puppet
ssldir=/var/lib/puppet/ssl
rundir=/var/run/puppet
factpath=$vardir/lib/facter
server = debianserverpuppet.example.fr

Par défaut il utilise puppet s'il ne connait pas le nom du puppetmaster


Tu as aussi des infos dans les logs /var/log/syslog

Tu vas, par ailleurs, certainement devoir révoquer ce certificat et le recréér à partir du client

Quelques info sur cette étape

3.3 Problème de certificats sur les Puppet agents
En cas de problèmes de certificats:

3.3.1 Sur le Puppet master
On peut nettoyer certains certificats grâce à la commande puppet cert

puppet cert clean mon_ordi.example.fr

3.3.2 Sur le Puppet agent

On arrête le service puppet

service puppet stop

On détruit les répertoires qui les hébergent

find /var/lib/puppet -type f -print0 |xargs -0r rm

On relance la commande qui va permettre d’inscrire la demande de certificat sur le Puppet master

puppet agent --waitforcert 60 --test

Puis, on redémarre le service puppet

service puppet start

Hors ligne

#3 Le 09/09/2016, à 12:49

czar1983

Re : Puppet impossible de joindre le serveur pour Certificat

Slt , Merci pour ton retour.
J'ai perdu trop de cheveux donc j'ai installé une nouvelle vm et ça fonctionne depuis.
Je vais tester ta config pour comprendre d'ou ça viens.

Peut-tu m'expliquer pourquoi mes packages ne s'installe pas stp ?
Corrige moi mais tt ce qui est dans manifest est déployé sur les noeuds ? comment déploies t-il les composants sachant que je ne lui fournis rien ? il envoie un apt-get sur les noeuds ?

Voici ma config
Master :

root@debianServerPuppet:/home/rbo# cd /etc/puppet/manifests/
root@debianServerPuppet:/etc/puppet/manifests# cat site.pp docker.pp
package {
        'apache2' :
                ensure => installed
}
service {
        'apache2' :
                ensure => true,
                enable=>true,
                require=>Package['apache2']
}
package {
                'docker' :
                        ensure => installed
}

service {
                'docker' :
                        ensure => true,
                        enable => true,
                        require => Package['docker']
}

et mon Agent

root@debianagentpuppet:/home/rbo# puppet agent --test
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Caching catalog for debianagentpuppet
Info: Applying configuration version '1473383946'
Error: Execution of '/usr/bin/apt-get -q -y -o DPkg::Options::=--force-confold install apache2' returned 100: Reading package lists...
Building dependency tree...
Reading state information...
The following extra packages will be installed:
  apache2-data apache2-utils
Suggested packages:
  apache2-doc apache2-suexec-pristine apache2-suexec-custom
The following NEW packages will be installed:
  apache2 apache2-data apache2-utils
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Need to get 563 kB of archives.
After this operation, 1629 kB of additional disk space will be used.
WARNING: The following packages cannot be authenticated!
  apache2-utils apache2-data apache2
E: There are problems and -y was used without --force-yes
Error: /Stage[main]/Main/Package[apache2]/ensure: change from purged to present failed: Execution of '/usr/bin/apt-get -q -y -o DPkg::Options::=--force-confold install apache2' returned 100: Reading package lists...
Building dependency tree...
Reading state information...
The following extra packages will be installed:
  apache2-data apache2-utils
Suggested packages:
  apache2-doc apache2-suexec-pristine apache2-suexec-custom
The following NEW packages will be installed:
  apache2 apache2-data apache2-utils
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Need to get 563 kB of archives.
After this operation, 1629 kB of additional disk space will be used.
WARNING: The following packages cannot be authenticated!
  apache2-utils apache2-data apache2
E: There are problems and -y was used without --force-yes
Notice: /Stage[main]/Main/Service[apache2]: Dependency Package[apache2] has failures: true
Warning: /Stage[main]/Main/Service[apache2]: Skipping because of failed dependencies
Notice: Finished catalog run in 0.32 seconds

Merci beaucoup pour ton aide et ta patience

Hors ligne

#4 Le 09/09/2016, à 13:45

jlmas

Re : Puppet impossible de joindre le serveur pour Certificat

Je ne suis trop sur du vocabulaire spécifique de puppet
Puppet utilise des facts qui collectent pleins d'informations sur le système client. Avec la commande:

facter

sur ton client puppet, tu auras la liste de tous les facts que puppet remonte au puppetmaster


A partir de là, il utilise pour la ressource puppet package un provider. Il sait grâce aux facts que tu utilises Linux Ubuntu telle version telle architecture, et en fonction de ça le provider pour installer un paquet, lancera la commande apt-get

Sur une Centos, une Redhat ou une Fedora, il aurait lancé grâce aux facts et au provider, la commande yum et sur Windows un msiexec. La liste des providers se trouve ici et elle est extrêmement complète. https://docs.puppet.com/puppet/latest/r … -providers


A mon avis, l'erreur est indépendante de puppet. Si tu lance la commande à la main sur ton client puppet, elle ne devrait pas plus fonctionner.

sudo /usr/bin/apt-get -q -y -o DPkg::Options::=--force-confold install apache2

Essaye avec un apt-get update avant, il y a peut être des clefs pgp a mettre à jour

Sans doute y-at'il des spécificités due au sudo dans puppet que j'ignore, puisque je l'utilise sur Debian (avec un compte root actif, donc)

Hors ligne

#5 Le 09/09/2016, à 14:16

czar1983

Re : Puppet impossible de joindre le serveur pour Certificat

Je te cache pas que je suis aussi sur Débian

J'ai fait un apt-get update comme tu m'as dis et plus aucune erreur, comme quoi les choses sont parfois simple ( parfois )

Merci pour ton aide

Hors ligne