Comment documenter la configuration du serveur Linux?

12

J'ai environ 20 serveurs Linux dont je dois documenter la configuration. Je ne parle pas de la configuration détaillée des services, mais plutôt des comptes d'utilisateurs, des bases de données, des comptes de bases de données, des adresses IP, de l'emplacement physique, du port SSH, etc. etc. Je sais que toutes ces données sont stockées dans des fichiers de configuration, mais je veux tout centraliser . J'envisage simplement de créer une feuille de calcul pour enregistrer ces données, mais je me demandais s'il y avait quelque chose de mieux (peut-être une petite application php / mysql) qui serait plus structuré et complet qu'une feuille de calcul piratée ensemble.

Qu'est ce que tu utilises?

Michelle
la source
Je n'y avais pas trop réfléchi auparavant mais ce serait utile. L'approche par tableur n'est probablement pas idéale. Il est facile de le mettre à jour. L'automatisation doit être la voie à suivre.
Matt

Réponses:

9

Je suppose qu'il s'agit d'un effort de documentation à long terme, pas seulement d'essayer de capturer un instantané de la configuration actuelle.

Le wiki fonctionne maintenant et peut vous garder sain d'esprit pendant un certain temps, mais si votre environnement change rapidement, vous aurez un grave problème. Vous devrez toujours vous assurer que les tâches cron sont correctement écrites, exécutées en temps opportun, écrites pour de nouveaux services, sont compatibles avec les nouvelles versions du logiciel, etc.

Pensez à utiliser un outil de gestion de configuration comme Puppet ou Cfengine . Mettez au moins toutes les données que vous collectez sous contrôle de version (comme Mercurial, git ou Subversion).

Vos données de configuration arrivent de partout au lieu d'être centralisées. Un wiki retardera toujours l'état actuel de vos machines. Vous devez centraliser les données de configuration; faites-le couler du centre vers les bords. Mais il est vrai que parfois vous devez sortir et capturer des données de configuration. Cfengine peut faire des audits, Puppet pourrait. Regardez cet article Wikipedia répertoriant les autres gestionnaires de configuration.

Allen
la source
+1 J'utilise également cfengine2 (et mediawiki pour plus de documentation)
ThorstenS
ok mais comment faire un rapport des données en marionnette?
Tom H
4

Vous voudrez peut-être essayer cfg2html , qui sauvegarde votre configuration dans un fichier HTML, que vous pouvez ensuite récupérer à intervalles réguliers et servir à partir d'un serveur central.

wzzrd
la source
Merci mais cfg2html est exagéré pour mes besoins. Grand script cependant!
Michelle
4

La prochaine fois que vous modifiez une machine, vous devez d'abord installer etckeeper dessus. De cette façon, vous garderez un journal des modifications de configuration.

Quelle distro utilisez-vous? Il existe des outils assez pratiques pour gérer et auditer les conffiles, et ils dépendent généralement du gestionnaire de packages.

Tobu
la source
2

Ma suggestion serait simplement de construire un wiki pour centraliser les informations et obtenir un script pour éditer les pages afin que les fichiers de configuration soient mis à jour sur le wiki automatiquement via un travail cron.

Si vous utilisez moin, vous devez vérifier http://moinmo.in/ScriptMarket/PutPageScript .

De cette façon, vous obtenez:

  1. Documentation centralisée.

  2. Configuration du système à jour.

  3. Historique des modifications de configuration.

jneves
la source
J'aime cette solution, très flexible. Ce serait bien s'il y avait déjà des scripts disponibles pour mettre à jour le wiki.
Michelle
1

Une feuille de calcul est essentiellement une grille à deux dimensions. Je considère que ce n'est pas la meilleure structure de données pour de telles choses. Je préfère les arbres, donc j'utilise des contours pour gérer les arbres.

Mon préféré est Leo . Si vous voulez quelque chose qui fonctionnerait sur un serveur qui n'a pas de X, jetez un œil à htb (semble être abandonné) ou au plugin VOoM vim.

Tous ces outils utilisent des fichiers texte brut ou XML comme backend. Associés à un certain contrôle de version, ils forment une combinaison puissante.

Une autre alternative serait fossile . Il s'agit d'un outil de contrôle de version distribué avec wiki intégré et suivi des tickets. C'est un seul binaire qui peut également fonctionner comme CGI et servir une interface Web, le rendant ainsi disponible sur le réseau. fossile comme mini-CMS pour un site web est très puissant.

halp
la source
0

Nous avons 4 centres de données dans 3 pays. Nous avons plus de 500 serveurs de production. Comme certains ppl l'ont dit ci-dessus, nous utilisons wiki et attachons des fichiers de feuille de calcul sur wiki. La bonne chose à ce sujet est que lorsque vous mettez à jour votre feuille de calcul et la rattachez à votre wiki, elle conserve l'historique de cela. Comme qui a mis à jour le fichier et quand.

Mais nous verrouillons également notre wiki, les utilisateurs ne peuvent voir presque aucune page à moins qu'ils ne soient connectés. En outre, la page où le fichier de feuille de calcul est installé est contrôlée à l'aide de balises qui utilisent des extensions accesscontrol.

-N

Nikolas Sakic
la source