From fee2ed820bedb4613871aa9747b40121e3ae7879 Mon Sep 17 00:00:00 2001 From: Mark Schouten Date: Fri, 28 Aug 2015 10:49:19 +0200 Subject: [PATCH] Add proxmox-agent --- agent-local/proxmox | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100755 agent-local/proxmox diff --git a/agent-local/proxmox b/agent-local/proxmox new file mode 100755 index 0000000..5c7b40b --- /dev/null +++ b/agent-local/proxmox @@ -0,0 +1,37 @@ +#!/usr/bin/perl -w + +use constant { + TIMEZONE => 'Europe/Amsterdam' +}; + +use strict; +use PVE::API2Client; +use PVE::AccessControl; +use PVE::INotify; +use Data::Dumper; + +my $hostname = PVE::INotify::read_file("hostname"); + +my $ticket = PVE::AccessControl::assemble_ticket('root@pam'); +my $csrftoken = PVE::AccessControl::assemble_csrf_prevention_token('root@pam'); + +my $conn = PVE::API2Client->new( + ticket => $ticket, + csrftoken => $csrftoken, +); + +my $clustername = $conn->get("/api2/json/cluster/ha/config")->{'data'}->{'children'}[0]{'name'}; +if (!defined($clustername)) { + $clustername = $hostname; +} + + +print "<<>>\n"; + +print "$clustername\n"; + +foreach my $vm (@{$conn->get("/api2/json/nodes/$hostname/netstat")->{'data'}}) { + my $vmid = $vm->{'vmid'}; + my $vmname = $conn->get("/api2/json/nodes/$hostname/qemu/$vmid/config")->{'data'}->{'name'}; + print "$vmid/$vm->{'dev'}/$vm->{'in'}/$vm->{'out'}/$vmname\n"; +};