2009-03-31 5 views
0

Existe-t-il un moyen de formater la sortie des commandes shell vers un format de données structuré comme JSON ou XML pour être traité par une autre application?Formatage de la sortie du shell en données structurées?

Cas d'utilisation: Groupe de serveurs CentOS sur un réseau. Je voudrais me connecter par programme via SSH, exécuter des commandes pour obtenir les statistiques du système et éventuellement exécuter les commandes de maintenance de base. Au lieu d'analyser moi-même tout le texte, je me demande s'il y a quelque chose qui m'aidera à retourner les données dans un format structuré? Même si seulement quelques commandes shell étaient supportées, ce serait un bon début.

+0

Je pense qu'il faut plus que snmp pour installer un logiciel via yum par exemple. Y a-t-il quelque chose entre la surveillance snmp, les scripts shell et la gestion de configuration complète comme marionnette/cfengine? –

Répondre

1

Cela ressemble à la tâche pour SNMP.

0

Découvrez Nagios (http://www.nagios.org/) pour la surveillance du système à distance. Ce que vous cherchez peut déjà exister là-bas.

+0

Nagios répondrait à la partie surveillance mais que se passe-t-il si je voulais installer un logiciel en utilisant Yum ou Apt-Get? Vraiment à la recherche d'un système de script shell automatisé ou d'une gestion de configuration légère sans avoir à descendre tout le long de la route des marionnettes ... –

1

Il est possible d'utiliser la marionnette assez légèrement. Vous pouvez le configurer pour exécuter ses vérifications uniquement sur ce que vous voulez vérifier.

Votre config toute marionnette pourrait consister en:

exec { "yum install foo": 
    unless => "some-check for software", 
} 

qui irait à yum install foo mais seulement si some-check for software a échoué. Cela dit il ya beaucoup d'avantages si vous gérez plus de deux serveurs pour obtenir autant de votre config et construire dans des manifestes de marionnettes (ou cfengine, bcfg2, ou similaire) que possible.

Questions connexes