Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I'm starting a new project and considering using Ansible or Salt for deployment automation and, perhaps, more sophisticated orchestration (server management and federation).

With Salt I'm wondering if there's any integration between it and Graphite or Zenoss or Ganglia ... using the Salt 0mq connections to relay the data from the Salt "minions" to the monitoring/graphing database/collectors.

Has anyone else looked at this?

share|improve this question
    
Can you explain what you're looking to do in greater detail, please? What type of interrogation do you need? –  jamieb Mar 7 '13 at 7:04
3  
There's a new project called Salmon that aims to be a full-blown monitoring system using Salt as its data collection mechanism and message transport. It does use Whisper as its database, so you could conceivably integrate it into Graphite if you really wanted to. –  jgoldschrafe Jun 17 '13 at 12:16
add comment

4 Answers

i used salt-stack for over 6 Month now to manage 40+ nodes.

in My current setup i use:

  • Icinga as Monitoring Server
  • NRPE for executing the checks on the Nodes
  • graphite collects the data from the collectd nodes
  • collectd for collecting and pushing metrics to graphite
  • gdash for a nice Dashboard to visualize the grahite metrics
  • salt-stack and finally salt-stack to roll out the configs for NRPE / Collectd on each node

als this runs under CentOS 6.x

my expierience so far is that salt-stack is good to enroll everything. But as long term runing Daemon on the nodes, its not stable.

i have often problems with not reaching the master or memory bloating of on the salt-minions. This can be fixed with and easy workaround that you restart every 24hours/onceaweek the salt-minions.

but this problem in salt-minion makes it not usable to collect data over the 0mq Framework.

my current setup runs safe. I can enroll changes pretty quick with salt-stack and collectd on the nodes does the trick.

share|improve this answer
    
I did not want to upvote this, but honesty and decency forced me to do it. They are certainly aware of the awesome possibility of providing a generalized transport for metrics. I already do some of this via salt-mine. –  Dan Garthwaite Oct 23 '13 at 18:58
    
Why collectd over [py]statsd? –  Dan Garthwaite Oct 23 '13 at 19:00
add comment

I think Salt or Ansible are not created for that task and I think they cannot be used to that purpose.

I am using Salt for several months and I didn't noticed of options of functions you want (in configs nor documentation). But I think you can "add" your requirements as Salt is written in python - if it is an option.

The easiest way is to order salt to install collectd which can collect data about the system (and has connectors to graphite)

EDIT: I found a project which implements monitoring using salt - salmon - take a look.

share|improve this answer
    
collectd was also my first thought. –  J Adams Mar 12 '13 at 18:02
    
salt-monitor is not maintained github.com/thatch45/salt-monitor –  Itai Frenkel May 28 '13 at 11:23
add comment

You may want to take a look at Sensu, it's a monitoring solution pluggable with a lots of community plugins, including graphite among others.

However Sensu uses another messaging queue to deliver messages, RabbitMQ. Maybe some coding work is needed, but you can try to replace one of the two messaging queue, since both of them should be using the AMQ protocol to exchange messages.

share|improve this answer
add comment

I recommend you look into two things: Salt Mine - http://docs.saltstack.com/topics/mine/ Salt Events - http://docs.saltstack.com/topics/event/index.html

If you combine these with your own returner configuration setup to store results in graphite, or any of the others you listed. You could conceivably use Salt to handle top down 'probing' and bottom up 'eventing'. I wouldn't be able to comment on the effectiveness of such a system, but in principle there appears to be the possibility.

share|improve this answer
    
The as-yet unrealized feature of salt is that it is a secure star topology event bus. I use salt mine to run and store check_mk_agent, and a check_mk on the nagios server pulls it from the mine. –  Dan Garthwaite yesterday
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.