je commence juste avec Puppet, vraiment nouveau dans ce monde.
J'ai
En Master avoir un module:
puppet module list
/etc/puppet/modules
âââ mstanislav-yum (v1.0.0)
Donc je veux appliquer le même module à mon client marionnette mais je ne peux pas ou je ne sais pas pourquoi
root@puppetclient: puppet agent --test
Info: Retrieving plugin
Info: Caching catalog for puppetclient
Info: Applying configuration version '1355737643'
Finished catalog run in 0.10 seconds
mais il n'y a aucun changement sur le client: - /
Une idée?
Vous n'avez pas encore déclaré le module (affecté à votre noeud) ...
Ajoutez ceci à site.pp:
node 'fqdn of client' {
include yum
}
Ensuite, vous pouvez exécuter puppet agent -t
pour le voir en action.
vous pouvez utiliser la commande suivante pour afficher la sortie des détails
agent de marionnettes --test --trace
Essayez d’utiliser les fichiers Hiera et Yaml, je pense que c’est beaucoup plus flexible et mieux organisé.
Editez le fichier site.pp:
node "default" {
hiera_include('classes')
}
Après cela, vous pouvez appeler les classes de chaque fichier node.yaml spécifique avec les éléments suivants:
classes:
-class1
-class2
Je l'utilise sur Ubuntu, fonctionne bien.
Vous pouvez essayer le mode --noop (mode de fonctionnement à sec).
puppet agent --server=YOUR_PUPPET_SERVER_NAME --onetime --no-daemonize --verbose --noop
Cela montrerait les changements qu'il aurait dû faire, mais physiquement, cela ne changera rien. Supprimer --noop fera tous ces changements.
Consultez la documentation pour connaître les autres options de la commande ci-dessus . http://docs.puppetlabs.com/man/agent.html
Si vous avez ajouté la déclaration de noeud à un autre emplacement que site.pp (ce qui est recommandé), n'oubliez pas d'ajouter la configuration "import" à site.pp qui référencerait le manifeste de noeud.
Voici à quoi ressemble ma configuration. DIR du manifeste principal avec les nœuds DIR et le fichier site.pp:
drwxr-xr-x. 3 root root 4096 May 19 07:23 nodes
-rw-r--r--. 1 root root 62 Jun 4 16:31 site.pp
Voici la déclaration du nœud dans mes nœuds DIR:
node 'fqdn of client' {
include yum
}
Enfin, site.pp dans le répertoire principal du manifeste principal importerait le nœud comme suit:
import 'nodes/*.pp'
node default { }
Les deux méthodes principales pour appliquer un module à un nœud sont d’ajouter l’un des éléments suivants à site.pp
node 'node <certname> (normally the fqdn)' {
require <module name>
}
ou
node 'node's <certname>' {
include <module name>
}
Puis exécutez dans le noeud puppet agent --test
require
est semblable à include, mais il crée des relations de dépendance et permet aux mêmes classes d'être déclarées plus d'une fois, ce qui est bien si vous souhaitez que les classes de rôles se chevauchent.
node default { # include module_name include Apache }
Ensuite, lancez ce qui suit sur votre agent de marionnettes.
Agent de marionnettes Sudo --test
Vous devez créer une définition de nœud contenant un "include" de la classe que vous souhaitez appliquer.
Courir
puppet apply -e "include mstanislav-yum"
si vous souhaitez exécuter le module lui-même, il est toutefois plus courant d'inclure une définition de nœud dans votre manifeste site.pp.