[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] remote xend - howto connect??



On Tuesday 07 February 2006 04:02, Anthony Liguori wrote:
> Michael Mey wrote:
> > Hi,
> >
> > currently, I am planning to implement a command line based tool to query
> > more than one xends for their running domains at the same time.
> >
> > Unfortunately, I cannot connect to any other xend as the local one. This
> > is what I was trying to do:
> >
> > -------------------------------------------------------------------------
> >--------------------------- #!/usr/bin/env python
> > #  -*- mode: python; -*-
> > import sys
> > import os
> >
> > # add fallback path for non-native python path installs if needed
> > sys.path.append('/usr/lib/python')
> > sys.path.append('/usr/lib64/python')
> >
> > from xen.xend.XendClient import server
>
> from xen.xend.XendClient import getHttpServer
>
> server = getHttpServer(...)
>
> Of course, I'm not sure works all that well either.
>
> I'd recommend using libvir (http://www.libvir.org).  libvir speaks the
> S-Expression/HTTP protocol pretty well.  It also has python bindings.

Thank you, I'll give it a try and otherwise have a look at libvir. :)

Regards,

Michael


> Regards,
>
> Anthony Liguori
>
> > from xen.xend import sxp
> >
> > def parse_doms_info(info):
> >    def get_info(n, t, d):
> >       return t(sxp.child_value(info, n, d))
> >    return {
> >       'dom'      : get_info('domid',        int,   -1),
> >       'name'     : get_info('name',         str,   '??'),
> >       'mem'      : get_info('memory',       int,   0),
> >       'vcpus'    : get_info('online_vcpus', int,   0),
> >       'state'    : get_info('state',        str,   '??'),
> >       'cpu_time' : get_info('cpu_time',     float, 0),
> >       'ssidref'  : get_info('ssidref',      int,   0),
> >    }
> >
> > def xm_brief_list(doms):
> >    print 'Name                              ID Mem(MiB) VCPUs State 
> > Time(s)' for dom in doms:
> >       d = parse_doms_info(dom)
> >       if (d['ssidref'] != 0):
> >           d['ssidstr'] = (" s:%04x/p:%04x" %
> >                           ((d['ssidref'] >> 16) & 0xffff,
> >                           d['ssidref']        & 0xffff))
> >       else:
> >          d['ssidstr'] = ""
> >          print ("%(name)-32s %(dom)3d %(mem)8d %(vcpus)5d %(state)5s
> > %(cpu_time)7.1f%(ssidstr)s" % d)
> >
> >
> > server.bind('192.168.111.18:8000',)
> > xm_brief_list(server.xend_list_domains())
> > -------------------------------------------------------------------------
> >---------------------------
> >
> > I am running this script form my xenhost1 (192.168.111.17) and want to
> > query xenhost2 (192.168.111.18). But I only get the local informations.
> > Even if I manually hack
> >
> > class Xend:
> >     """Client interface to Xend.
> >     """
> >
> >     """Default location of the xend server."""
> >     SRV_DEFAULT = "192.168.111.18:8000"
> >
> > into xen/xend/XendClient.py it's still the same.
> >
> > telnetting to 192.168.111.18 to port 8000 and do a manual
> > GET /xend/domain/?detail=1
> > works nicely.
> >
> > Maybe someone could give me a hint how to query a remote xen host with
> > XendClient.py?
> >
> >
> > Regards, Michael
> >
> >
> > ------------------------------------------------------------------------
> >
> > _______________________________________________
> > Xen-devel mailing list
> > Xen-devel@xxxxxxxxxxxxxxxxxxx
> > http://lists.xensource.com/xen-devel
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-devel

-- 
----------------------------------------------------------------------------------------
Michael Mey                                  
Thinking Objects Software GmbH    |   mailto: michael.mey@xxxxxx 
Lilienthalstrasse 2/1             |   phone: +49 711 88770-147
70825 Stuttgart-Korntal, Germany  |   fax: +49 711 88770-449
----------------------------------------------------------------------------------------

Attachment: pgpetdXKOClOU.pgp
Description: PGP signature

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.