61 lines
1.9 KiB
Ruby
61 lines
1.9 KiB
Ruby
#
|
|
# Cookbook Name:: nova
|
|
# Recipe:: libvirt-monitoring
|
|
#
|
|
# Copyright 2009, Rackspace Hosting, Inc.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
#
|
|
|
|
########################################
|
|
# BEGIN COLLECTD SECTION
|
|
# Allow for enable/disable of collectd
|
|
if get_settings_by_role("collectd-server", "roles") and node["roles"].include?("collectd-client")
|
|
include_recipe "collectd-graphite::collectd-client"
|
|
|
|
# Figure out which connection type to use for libvirt
|
|
nova = get_settings_by_role("single-compute", "nova")
|
|
if nova["libvirt"]["virt_type"] == "qemu"
|
|
virt_conn = "qemu:///system"
|
|
else
|
|
# TODO(shep): Not sure this is the right one
|
|
virt_conn = "kvm:///"
|
|
end
|
|
|
|
collectd_plugin "libvirt" do
|
|
template "collectd-plugin-libvirt.conf.erb"
|
|
cookbook "nova"
|
|
options(
|
|
"Connection"=>virt_conn,
|
|
"HostnameFormat"=>"name",
|
|
"RefreshInterval"=>60
|
|
)
|
|
end
|
|
end
|
|
########################################
|
|
|
|
########################################
|
|
# BEGIN MONIT SECTION
|
|
# Allow for enable/disable of monit
|
|
if node["enable_monit"]
|
|
include_recipe "monit::server"
|
|
platform_options = node["nova"]["platform"]
|
|
|
|
monit_procmon "libvirt-bin" do
|
|
process_name "libvirtd"
|
|
start_cmd "/usr/sbin/service " + platform_options["libvirt_service"] + " start"
|
|
stop_cmd "/usr/sbin/service " + platform_options["libvirt_service"] + " stop"
|
|
end
|
|
end
|
|
########################################
|