webentwicklung-frage-antwort-db.com.de

Puppet - wie wird das Modul auf den Puppet-Client-Knoten angewendet?

ich fange gerade mit Puppet an, wirklich neu auf dieser Welt. 

Ich habe

  • CentOS 6 Puppenmeister
  • CentOS 6 Puppet Client

Im Master haben Sie ein Modul:

 puppet module list
/etc/puppet/modules
âââ mstanislav-yum (v1.0.0)

Also möchte ich dasselbe Modul auf meinen Puppenkunden anwenden, aber ich weiß nicht warum

[email protected]: puppet agent --test
Info: Retrieving plugin
Info: Caching catalog for puppetclient
Info: Applying configuration version '1355737643'
Finished catalog run in 0.10 seconds

es gibt jedoch keine Änderungen am Client: - /

Irgendeine Idee?

15
Rubendob

Sie haben das Modul noch nicht deklariert (dem Knoten zugewiesen) ...

Fügen Sie dies zu site.pp hinzu:

node 'fqdn of client' {
  include yum
} 

Dann können Sie puppet agent -t ausführen, um es in Aktion zu sehen.

12
Ger Apeldoorn

sie können den folgenden Befehl verwenden, um die Detailausgabe anzuzeigen

marionettenagent --test --spur

4
meet patel

Versuchen Sie, Hiera- und Yaml-Dateien zu verwenden. Ich denke, es ist viel flexibler und besser organisiert.

Bearbeiten Sie die Site.pp-Datei:

node "default" {
    hiera_include('classes')
}

Danach können Sie die Klassen in jeder spezifischen node.yaml-Datei mit einfachem Aufruf aufrufen:

classes:
  -class1
  -class2

Ich benutze es auf Ubuntu, funktioniert gut.

2
quant

Sie können den --noop-Modus (Trockenlaufmodus) ausprobieren.

puppet agent --server=YOUR_PUPPET_SERVER_NAME --onetime --no-daemonize --verbose --noop

Dies würde die Änderungen zeigen, die es hätte tun sollen, aber physisch ändert es nichts. Wenn Sie --noop entfernen, werden alle diese Änderungen vorgenommen.

In dem Dokument finden Sie Erklärungen zu anderen Optionen im obigen Befehl . http://docs.puppetlabs.com/man/agent.html .

1
iamauser

Wenn Sie die Knotendeklaration an einem anderen Ort als "site.pp" hinzugefügt haben (was empfohlen wird), müssen Sie die "import" -Konfiguration zu "site.pp" hinzufügen, die auf das Knotenmanifest verweist.

So sieht meine Config aus. Hauptmanifest-DIR mit Knoten DIR- und site.pp-Datei:

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

Dies ist die Knotendeklaration in meinem Knoten DIR:

node 'fqdn of client' {
  include yum
} 

Schließlich würde site.pp im Hauptmanifest DIR den Knoten wie folgt importieren:

import 'nodes/*.pp'

node default { }
1
Innocent Anigbo

Sie können ein Modul auf einen Knoten anwenden, indem Sie eine der folgenden Optionen zu site.pp hinzufügen.

node 'node <certname> (normally the fqdn)' {
    require <module name>
}

oder

node 'node's <certname>' {
    include <module name>
}

Führen Sie dann den Knoten puppet agent --test aus.

require ist wie include, erstellt jedoch Abhängigkeitsbeziehungen und ermöglicht, dass dieselben Klassen mehr als einmal deklariert werden. Dies ist gut, wenn sich Rollenklassen überlappen möchten.

1
nettux
  1. Installieren Sie zuerst das Modul aus der Marionettenschmiede
  2. Öffnen Sie site.pp und fügen Sie die folgenden Zeilen hinzu
node default {
       # include module_name
         include Apache
}

Dann führe folgendes auf deinem Marionettenagenten aus.

Sudo-Marionettenagent - Test

1
neerajdngl

Sie müssen eine Knotendefinition erstellen, die ein "Include" der Klasse enthält, die Sie anwenden möchten.

0

Lauf

puppet apply -e "include mstanislav-yum"

wenn Sie das Modul eigenständig ausführen möchten, ist es üblicher, eine Knotendefinition in das site.pp-Manifest aufzunehmen.

0
Ian Ellis

Live-Beispiel aus meiner Produktion:

node 'client.io' {

class { '::selinux':
mode => 'disabled',
type => 'targeted',
}

class { 'zabbix::agent':
server => '192.168.245.11',
serveractive => '192.168.245.11',
}

include firewall
include mysql::server

}
0
piasxp