Zentific-poll 1.0-beta Please visit http://zentific.com for news and updates --------------------------------------------------------------------- -----------------------------Overview-------------------------------- --------------------------------------------------------------------- This program is a monitoring daemon for xen virtual machines and the physical machine upon which they reside. It collects cpu, disk, network, and load statistics for processing by the backend to the Zentific xen web interface. This program is not intended to be a xentop replacement; it is rather intended to be a non-interactive daemon executing for the express purpose of updating the Zentific backend with statistics about virtual machines and the physical host. If interest exists, zentific-poll may be extended to behave more like xentop to either augment the existing xentop project or provide similar function via zentific utilities. -Please break it and report bugs :) -bugs are *expected* but it is hoped that the negative ones are no longer present -Please send comments, requests, bug, patches to: steve@zentific.com -No nice makefile or autoconf bits at the moment. -Compile using the makeme script -No need to install; just run the binary in the source directory for testing purposes -Example output indicating the types of statistics collected can be found at the end of this document -For purposes of assisting our project, please consider omitting the "-n" flag when testing so that we can obtain statistics about xen versions most in use, kernel types, etc *Privacy will of course be respected, and no IPs will be logged. Some potential problems: -Under 3.0.3 derivatives, xenstore entries may follow the practices of 3.0.3, 3.0.4, 3.0.4-1, or 3.1+ -statistics reporting may be affected as a result -crashes are possible depending upon 3.0.3 version this will be fixed soon -On gentoo 3.2.0 and 3.2.1 a crash occurs; conditions causing it have been duplicated and work is under way to fix the issue. -One report of minor issues on 3.1, but functional otherwise. -Xenstore occasionally hangs (in perpetuity) on a FUTEX_WAIT without a timeout -only solution is a kill -this does not appear to be an issue when operating in non-interactive mode -I believe this is a xenstore/xend bug that I cannot only circumvent, rather than fix --------------------------------------------------------------------- ------Instructions for compilation (real packages coming soon)------- --------------------------------------------------------------------- -Dependencies -system headers -libssl headers -libxenstat (included) -other libraries (e.g. libxc, libxenstore, etc) should already be installed with any base xen packages -Instructions tar xf zentific-poll-1.0-beta.tar.gz cd ./zentific-poll-1.0-beta.tar.gz mkdir -p /var/log/zentific cp -a ./etc/zentific /etc vim /etc/zentific/node.conf cat ./README #this file cat ./COPYING ./makeme ./zentific-poll --help Suggested defaults: ./zentific-poll -V -d2 BE AWARE: edit node.conf and include "-n" as an argument to avoid sending the updates to our test server AGAIN: For purposes of assisting our project, please consider omitting the "-n" (nosend) flag when testing so that we can obtain statistics about xen versions most in use, kernel types, etc. -Such data will focus and greatly aid our development. **Privacy will of course be respected, and no IPs will be logged. --------------------------------------------------------------------- --------------------SAMPLE DEBUG/VERBOSE OUTPUT:--------------------- --------------------------------------------------------------------- ---------------config variables----------------- HOST VALUE: www.domain.com. PORT VALUE: 80. XMLRPC_PATH VALUE: /rpc. USE_SSL VALUE: 0. DELAY VALUE: 2. LOG_TYPE VALUE: local,lsyslog. PID_FILE VALUE: /var/run/zentific-poll.pid. ------------------------------------------------ STATUS: Collecting statistics about the physical node. -------------------dom0 stats------------------- Memory: total 1024, used 1002, free 21, shared 0, buffered 51 Swap: total 1953, used 1, free 1951 num processes 222 interrupts/s=263, context switches/s=250 uptime: 160 days, 4 hours, 5 minutes 1 0.00 5 0.00 15 0.00 iowait% = 0.33 ------------------------------------------------ Registering node with the Zentific management backend.. ------------------------------------------------ examplevm 131 b uuid e22a8188-9bad-bfc8-2a53-f7f9f6d9d7aa vcpus 1 cpupct 0.0 vnc-port 5907 type pvm cputime 2128 os Unknown numnets 1 mem 2048 maxmem 4096 vncpass somepassword numvbds 2 bw in 43 mb bw out 52 mb Disk 0: Type: file Path: /mnt/scratch/examplevm/vmswap.img Device: hda2 Mode: w Reads: 20, Writes: 0, Out of: 0 Disk 1: Type: file Path: /mnt/scratch/examplevm/examplevm.root.img Device: hda1 Mode: w Reads: 4478, Writes: 460336, Out of: 0 Vif 0: Type: netfront Bridge: xenbr1 MAC: 00:16:3E:3b:69:a3 Script: /etc/xen/scripts/vif-bridge Name: vif131.0 RX -- pkts: 355398, bytes: 45649111, drop: 189, err: 0 TX -- pkts: 365614, bytes: 55262358, drop: 0, err: 0 LEGAL STUFF Copyright 2007, 2008 Steven Maresca, Justin Demaris, and Zentific LLC All rights reserved. Use is subject to license terms. Copyright of submitted patches will be assigned to the above listed developers of Zentific. /* zentific-poll: statistics collection daemon for Zentific * Copyright (C) 2007, 2008 * Steven Maresca, Justin Demaris, * and Zentific LLC * * All rights reserved. * Use is subject to license terms. * * Please visit http://zentific.com for news and updates * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. */