Puppet-Modul zur Verwaltung von Gruppen funktioniert nicht

Puppet-Modul zur Verwaltung von Gruppen funktioniert nicht

Ich habe ein Modul zum Einrichten einer neuen Gruppe mithilfe der folgenden Dokumentation konfiguriert:https://puppet.com/docs/puppet/latest/types/group.html.

[root@puppetmaster ~]# cat /etc/puppet/modules/change-groups/manifests/init.pp 
class change-groups {

    group { "newgroup":
        gid => 3651,
        members => "user1,user2",
    }

}

Leider erhalte ich eine Fehlermeldung. Was kann das sein?

info: /Group[newgroup]: Provider groupadd does not support features manages_members; not managing attribute members

Antwort1

Basierend aufDokumentation:

Gruppen verwalten. Auf den meisten Plattformen können hiermit nur Gruppen erstellt werden.Die Gruppenmitgliedschaft muss für einzelne Benutzer verwaltet werden.

Auf einigen Plattformen wie OS X wird die Gruppenmitgliedschaft als Attribut der Gruppe und nicht als Benutzerdatensatz verwaltet. Anbieter müssen über die Funktion „manages_members“ verfügen, um die Eigenschaft „members“ eines Gruppendatensatzes verwalten zu können.

Das istnotorischfunktioniert nicht auf Linux-Plattformen, die groupadd/groupmod/groupdel verwenden, um Gruppen zu bearbeiten - sieheUpstream-Problem Nr. 1298.

Da ist einAlternativer Gruppenanbietervon der Portland State University, die die Gruppendatei bearbeiten kann.

Eine andere Möglichkeit besteht darin, Augeas zum Verwalten der Gruppendatei zu verwenden.

Antwort2

Die Standardgruppenanbieter in der Puppet-Distribution enthalten keinen, der Gruppenmitgliedschaften verwalten kann. Jemand an der Portland State University hat jedoch dieselbe Funktionalität benötigt und codierteinige benutzerdefinierte Anbieter. Was Sie hiervon benötigen, ist die Datei ggroupadd.pp, die Sie einfügen möchten /etc/puppet/modules/custom/lib/puppet/provider/group(passen Sie sie entsprechend an, um den Speicherort Ihres benutzerdefinierten Modulverzeichnisses widerzuspiegeln).

Der neue Anbieter „ggroupadd“ verwaltet Gruppen, sodass alles, was Sie in das Mitgliedsattribut eingeben, /etc/groupauch in die Datei gelangt.

Antwort3

Sieht so aus, als hätten die Puppet-Betreuer nie Unterstützung dafür bereitgestellt. Ich schaue mir die Groupadd-Funktionalität in den Ruby-Bibliotheken an und es scheint eine Kombination aus schlampigem Code und/oder unvollständigem Code zu sein.

verwandte Informationen