Ian Norton-Badrul wrote: > Hm, it looks like the xmlrpc server itself is working. > > Are you connecting with xenman remotely? or locally? > Well I try connect with xenman remotely (as I want to get a centralised management station)
> Ian > > On Thu, Mar 22, 2007 at 08:18:24AM +0100, Alexandre Chapellon wrote: > >> Hello there, >> >> this is what I get: >> >> ~# ./xml-rpc-api2html [1]http://localhost:8005 >> <html> >> <head><title>XML API for [2]http://localhost:8005</title> >> </head> >> <body> >> <h1>XML-RPC API for [3]http://localhost:8005</h1> >> >> See [4]http://www.linuxdoc.org/HOWTO/XML-RPC-HOWTO/index.html for >> instructions >> on using XML-RPC with Perl, Python, Java, C, C++, PHP, etc. >> <h2>Methods</h2> >> <hr> >> >> <h3>system.listMethods</h3> >> system.listMethods() => ['add', 'subtract', 'multiple'] Returns a list >> of the methods supported by the server.<hr> >> >> <h3>system.methodHelp</h3> >> system.methodHelp('add') => "Adds two integers together" Returns a >> string containing documentation for the specified method.<hr> >> >> <h3>system.methodSignature</h3> >> system.methodSignature('add') => [double, int, int] Returns a list >> describing the signature of the method. In the above example, the add >> method takes two integers as arguments and returns a double result. >> This >> server does NOT support system.methodSignature.<hr> >> >> <h3>xend.domain</h3> >> <hr> >> >> <h3>xend.domain.configure</h3> >> Configure an existing domain. <br><b>param: </b> vmconfig: vm >> configuration<hr> >> >> <h3>xend.domain.cpu_sedf_get</h3> >> Get Simple EDF scheduler parameters for a domain.<hr> >> >> <h3>xend.domain.cpu_sedf_set</h3> >> Set Simple EDF scheduler parameters for a domain.<hr> >> >> <h3>xend.domain.create</h3> >> <hr> >> >> <h3>xend.domain.destroy</h3> >> Terminate domain immediately.<hr> >> >> <h3>xend.domain.destroyDevice</h3> >> <hr> >> >> <h3>xend.domain.device_configure</h3> >> <hr> >> >> <h3>xend.domain.device_create</h3> >> <hr> >> >> <h3>xend.domain.dump</h3> >> Dump domain core.<hr> >> >> <h3>xend.domain.getDeviceSxprs</h3> >> <hr> >> >> <h3>xend.domain.getRestartCount</h3> >> <hr> >> >> <h3>xend.domain.getVCPUInfo</h3> >> <hr> >> >> <h3>xend.domain.ioport_range_disable</h3> >> Disable access to a range of IO ports for a domain <br><b>param: </b> >> first: first IO port <br><b>param: </b> last: last IO port >> <br><b>returns: </b>: 0 on success, -1 on error<hr> >> >> <h3>xend.domain.ioport_range_enable</h3> >> Enable access to a range of IO ports for a domain <br><b>param: </b> >> first: first IO port <br><b>param: </b> last: last IO port >> <br><b>returns: </b>: 0 on success, -1 on error<hr> >> >> <h3>xend.domain.lookup</h3> >> <hr> >> >> <h3>xend.domain.lookup_by_name_nr</h3> >> <hr> >> >> <h3>xend.domain.lookup_by_name_or_id</h3> >> <hr> >> >> <h3>xend.domain.lookup_by_name_or_id_nr</h3> >> <hr> >> >> <h3>xend.domain.lookup_nr</h3> >> <hr> >> >> <h3>xend.domain.maxmem_set</h3> >> Set the memory limit for a domain. <br><b>param: </b> mem: memory limit >> (in MiB) <br><b>returns: </b>: 0 on success, -1 on error<hr> >> >> <h3>xend.domain.migrate</h3> >> Start domain migration.<hr> >> >> <h3>xend.domain.pause</h3> >> Pause domain execution.<hr> >> >> <h3>xend.domain.pincpu</h3> >> Set which cpus vcpu can use <br><b>param: </b> cpumap: string repr of >> list of usable cpus<hr> >> >> <h3>xend.domain.restore</h3> >> <hr> >> >> <h3>xend.domain.restore_fd</h3> >> Restore a domain from the given file descriptor.<hr> >> >> <h3>xend.domain.save</h3> >> Start saving a domain to file. <br><b>param: </b> dst: destination >> file<hr> >> >> <h3>xend.domain.sched_credit_get</h3> >> Get credit scheduler parameters for a domain.<hr> >> >> <h3>xend.domain.sched_credit_set</h3> >> Set credit scheduler parameters for a domain.<hr> >> >> <h3>xend.domain.send_sysrq</h3> >> <hr> >> >> <h3>xend.domain.setMemoryTarget</h3> >> <hr> >> >> <h3>xend.domain.setName</h3> >> <hr> >> >> <h3>xend.domain.setVCpuCount</h3> >> <hr> >> >> <h3>xend.domain.shadow_control</h3> >> Shadow page control.<hr> >> >> <h3>xend.domain.shadow_mem_get</h3> >> Get shadow pagetable memory allocation.<hr> >> >> <h3>xend.domain.shadow_mem_set</h3> >> Set shadow pagetable memory allocation.<hr> >> >> <h3>xend.domain.shutdown</h3> >> <hr> >> >> <h3>xend.domain.unpause</h3> >> Unpause domain execution.<hr> >> >> <h3>xend.domain.waitForDevices</h3> >> <hr> >> >> <h3>xend.domains</h3> >> <hr> >> >> <h3>xend.node.dmesg.clear</h3> >> <hr> >> >> <h3>xend.node.dmesg.info</h3> >> <hr> >> >> <h3>xend.node.info</h3> >> <hr> >> >> <h3>xend.node.log</h3> >> <hr> >> >> Ian Norton-Badrul wrote: >> >> Ah, I forgot it was broken, >> >> here use my modified version: (attached) >> >> Ian >> >> On Wed, Mar 21, 2007 at 05:58:44PM +0100, Alexandre Chapellon wrote: >> >> >> Here is what I get >> >> ~# xml-rpc-api2txt [1][5]http://localhost:8005 >> XML-RPC API for [2][6]http://localhost:8005 >> >> See [3][7]http://www.linuxdoc.org/HOWTO/XML-RPC-HOWTO/index.html for >> instructions >> on using XML-RPC with Perl, Python, Java, C, C++, PHP, etc. >> >> Can't use string ("signatures not supported") as an ARRAY ref while >> "strict refs" in use at /usr/bin/xml-rpc-api2txt line 118. >> >> doesn't seem very good, does it? >> >> Ian Norton-Badrul wrote: >> >> On Wed, Mar 21, 2007 at 04:03:55PM +0100, Alexandre Chapellon wrote: >> >> >> Ian Norton-Badrul wrote: >> >> >> Hi Alex, >> >> I belive the xmlrpc server listens on port 8006 >> >> >> >> Apparently not as if I comment the line "(xend-tcp-xmlrpc-server yes)" >> there is no more 8005 port listening according to netstat, in addition >> xenman specify a port in the dialog box when you add a new node which >> is 8005 by default >> >> Any other Idea? >> >> Do you (or anyone else) have it working with debian and xen 3.0.3? >> >> >> My xen 3.0.3 (27th sept 2006) is also listening on 8005 ( ubuntu dapper >> server ) >> My 3.0.4 machine ( ubuntu dapper desktop ) is listening on 8006. >> >> Can you install xml-rpc-api2txt (apt-get install) and point it at >> [4][8]http://localhost:8005 >> >> Regards >> >> Ian >> >> >> >> Ian >> >> On Wed, Mar 21, 2007 at 03:01:17PM +0100, Alexandre Chapellon wrote: >> >> >> >> Ian Norton-Badrul wrote: >> >> Hi Alex, >> >> >> >> Hi and first thanks for this fast answer >> >> What version of xen are you running on your remote system? And are you >> sure that machine has the xml rpc server running? >> >> >> I'm running Xen 3.0.3-1 (debian package) >> And I have activated xml rpc as show below: >> (xend-tcp-xmlrpc-server yes) >> >> By the way netstat shows its listenning on lo:8005... as you can see >> >> ~#netstat -tan >> Connexions Internet actives (serveurs et etablies) >> Proto Recv-Q Send-Q Adresse locale Adresse distante Etat >> tcp 0 0 0.0.0.0:8000 0.0.0.0:* >> LISTEN >> tcp 0 0 0.0.0.0:8002 0.0.0.0:* >> LISTEN >> tcp 0 0 127.0.0.1:8005 0.0.0.0:* >> LISTEN >> tcp 0 0 0.0.0.0:9102 0.0.0.0:* >> LISTEN >> tcp6 0 0 :::22 :::* >> LISTEN >> tcp6 0 128 ::ffff:172.20.255.60:22 ::ffff:172.30.0.1:37519 >> ESTABLISHED >> >> Am I right? >> >> Ian >> >> On Wed, Mar 21, 2007 at 01:59:49PM +0100, Alexandre Chapellon wrote: >> >> >> Hy all! >> >> I'm interresting in using xenman to manage my Domain0 and and domU upon >> several machines. >> Unfortunatly, when I try to connect to a remote node I get a Domain0 not >> found in the gui and the following error in the console where I launch >> xemna (using sudo xenman): >> >> got expat error no element found: line 1, column 0 >> >> The localhost seems to be working but not the remote ones... >> >> I have configured ssh so that It uses login/pass to connect and tcpdump >> shows traffic on the loopback interface when I connect: >> >> 16:02:06.662754 IP 127.0.0.1.1134 > 127.0.0.1.8005: . ack 53 win 4099 >> <nop,nop,timestamp 106887986 106887986>16:02:06.662853 IP 127.0.0.1.8005 >> > 127.0.0.1.1134: P 53:90(37) ack 298 win 4096 <nop,nop,timestamp >> 106887986 106887986> >> 16:02:06.662860 IP 127.0.0.1.1134 > 127.0.0.1.8005: . ack 90 win 4099 >> <nop,nop,timestamp 106887986 106887986>16:02:06.662920 IP 127.0.0.1.8005 >> > 127.0.0.1.1134: P 90:114(24) ack 298 win 4096 <nop,nop,timestamp >> 106887986 106887986> >> 16:02:06.662926 IP 127.0.0.1.1134 > 127.0.0.1.8005: . ack 114 win 4099 >> <nop,nop,timestamp 106887986 106887986> >> 16:02:06.662984 IP 127.0.0.1.8005 > 127.0.0.1.1134: P 114:136(22) ack >> 298 win 4096 <nop,nop,timestamp 106887986 106887986> >> 16:02:06.662991 IP 127.0.0.1.1134 > 127.0.0.1.8005: . ack 136 win 4099 >> <nop,nop,timestamp 106887986 106887986> >> 16:02:06.663036 IP 127.0.0.1.8005 > 127.0.0.1.1134: P 136:138(2) ack 298 >> win 4096 <nop,nop,timestamp 106887986 106887986> >> 16:02:06.663042 IP 127.0.0.1.1134 > 127.0.0.1.8005: . ack 138 win 4099 >> <nop,nop,timestamp 106887986 106887986> >> 16:02:06.663083 IP 127.0.0.1.8005 > 127.0.0.1.1134: P 138:2339(2201) ack >> 298 win 4096 <nop,nop,timestamp 106887986 106887986> >> 16:02:06.663089 IP 127.0.0.1.1134 > 127.0.0.1.8005: . ack 2339 win 4650 >> <nop,nop,timestamp 106887986 106887986> >> >> >> What did I miss? >> >> ------------------------------------------------------------------------- >> Take Surveys. Earn Cash. Influence the Future of IT >> Join SourceForge.net's Techsay panel and you'll get the chance to share >> your >> opinions on IT & business topics through brief surveys-and earn cash >> >> [1][5][9]http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV >> _______________________________________________ >> XenMan-Users mailing list >> [EMAIL PROTECTED] >> [3][7][11]https://lists.sourceforge.net/lists/listinfo/xenman-users >> >> >> References >> >> Visible links >> 1. >> [8][12]http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV >> 2. [9][13]mailto:XenMan-Users@lists.sourceforge.net >> 3. [10][14]https://lists.sourceforge.net/lists/listinfo/xenman-users >> >> >> References >> >> Visible links >> 1. [15]http://localhost:8005/ >> 2. [16]http://localhost:8005/ >> 3. [17]http://www.linuxdoc.org/HOWTO/XML-RPC-HOWTO/index.html >> 4. [18]http://localhost:8005/ >> 5. >> [19]http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV >> 6. [20]mail[21]mailto:[EMAIL PROTECTED] >> 7. [22]https://lists.sourceforge.net/lists/listinfo/xenman-users >> 8. >> [23]http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV >> 9. [24]mailto:XenMan-Users@lists.sourceforge.net >> 10. [25]https://lists.sourceforge.net/lists/listinfo/xenman-users >> >> >> >> ------------------------------------------------------------------ >> >> #!/usr/bin/perl -w >> # >> # A handy little script for printing out an XML-RPC API as a >> # nicely-formatted text file. (I wrote this in Perl because of all the >> # spiffy report-generation features.) >> # >> # You'll need to get Ken MacLeod's Frontier::RPC2 module from CPAN to use >> # this. >> # >> # Eric Kidd [26]<[EMAIL PROTECTED]> >> # >> # This script is part of xmlrpc-c, and may be used and distributed under >> # the same terms as the rest of the package. >> >> use strict; >> >> # One global variable for use with Perl's format routines, and one for >> # use inside an 'exec' block. >> use vars qw/$helptext $method_list/; >> >> # Try to load our Perl XML-RPC bindings, but fail gracefully. >> eval { >> require Frontier::Client; >> }; >> if ($@) { >> print STDERR <<"EOD"; >> This script requires Ken MacLeod\'s Frontier::RPC2 module. You can get this >> from CPAN or from his website at [27]http://bitsko.slc.ut.us/~ken/xml-rpc/ . >> >> For installation instructions, see the XML-RPC HOWTO at: >> [28]http://www.linuxdoc.org/HOWTO/XML-RPC-HOWTO/index.html >> >> EOD >> exit 1; >> } >> >> # Parse our command-line arguments. >> if (@ARGV != 1 || $ARGV[0] eq "--help") { >> print STDERR "Usage: xml-rpc-api2txt serverURL\n"; >> exit 1; >> } >> >> my $server = Frontier::Client->new(url => $ARGV[0]); >> >> # Try (very carefully) to get our a list of methods from the server. >> local $method_list; >> eval { >> $method_list = $server->call('system.listMethods'); >> }; >> if ($@) { >> print STDERR <<"EOD"; >> An error occurred while trying to talk to the XML-RPC server: >> >> $@ >> >> This may have been caused by several things--the server might not support >> introspection, it might not be an XML-RPC server, or your network might be >> down. Try the following: >> >> xml-rpc-api2txt [29]http://xmlrpc-c.sourceforge.net/api/sample.php >> >> EOD >> exit 1; >> } >> >> # Enter the methods into a hashtable. >> my @methods = sort @$method_list; >> my %method_table; >> foreach my $method (@methods) { >> $method_table{$method} = {}; >> } >> >> # Get more information for the hash table. Since we need to make lots and >> # lots of very small XML-RPC calls, we'd like to use system.multicall to >> # reduce the latency. >> if (defined $method_table{'system.multicall'}) { >> >> # This is messy but fast. Everybody hates HTTP round-trip lag, right? >> my @call; >> foreach my $method (@methods) { >> push @call, {methodName => 'system.methodSignature', >> params => [$method]}; >> push @call, {methodName => 'system.methodHelp', >> params => [$method]}; >> } >> my @result = @{$server->call('system.multicall', [EMAIL PROTECTED])}; >> for (my $i = 0; $i < @methods; $i++) { >> my $method = $methods[$i]; >> $method_table{$method}->{'signatures'} = $result[2*$i]->[0]; >> $method_table{$method}->{'help'} = $result[2*$i+1]->[0]; >> } >> } else { >> >> # This is easy but slow (especially over backbone links). >> foreach my $method (@methods) { >> my $signature = $server->call('system.methodSignature', $method); >> my $help = $server->call('system.methodHelp', $method); >> $method_table{$method}->{'signatures'} = $signature; >> $method_table{$method}->{'help'} = $help; >> } >> } >> >> # Now, we need to dump the API. >> print <<"EOD"; >> <html> >> <head><title>XML API for $ARGV[0]</title> >> </head> >> <body> >> <h1>XML-RPC API for $ARGV[0]</h1> >> >> See [30]http://www.linuxdoc.org/HOWTO/XML-RPC-HOWTO/index.html for >> instructions >> on using XML-RPC with Perl, Python, Java, C, C++, PHP, etc. >> EOD >> >> print qq|<h2>Methods</h2> >> <hr> >> |; >> >> foreach my $method (@methods) { >> print "\n<h3>$method</h3>\n"; >> my $methodinfo = ""; >> # Print a synopsis of the function. >> if ($method_table{$method}->{'signatures'} eq 'undef') { >> # No documentation. Bad server. No biscuit. >> $methodinfo = "unknown $method (...)\n"; >> } else { >> if ( $method_table{$method}->{'signatures'} =~ /^ARRAY/ ){ >> for my $signature >> (@{$method_table{$method}->{'signatures'}}) { >> if ( $signature =~ /^ARRAY/ ){ >> my $return_type = shift @$signature; >> my $arguments = join(", ", @$signature); >> $methodinfo .= "\n<tt>$return_type >> $method ($arguments)</tt>\n"; >> } >> } >> } >> } >> if ( $methodinfo ne "" ){ >> print "$methodinfo\n"; >> } >> >> my $help = $method_table{$method}->{'help'}; >> if ($help =~ /\n/) { >> # Text has already been broken into lines by the server, so just >> # indent it by two spaces and hope for the best. >> my @lines = split(/\n/, $help); >> my $help = " " . join("\n ", @lines); >> if ( $help =~ /[a-zA-Z0-9]/ ){ >> print "$help\n"; >> } >> } else { >> # Print our help text in a nicely-wrapped fashion using Perl's >> # formatting routines. >> $helptext = $method_table{$method}->{'help'}; >> $helptext =~ s/\\n/\n/g; >> $helptext =~ s/\\'/'/g; >> >> $helptext =~ s/[EMAIL PROTECTED]/<br><b>param: <\/b>/g; >> $helptext =~ s/[EMAIL PROTECTED]/<br><b>returns: <\/b>/g; >> $helptext =~ s/[EMAIL PROTECTED]/<br><b>return type: <\/b>/g; >> >> $helptext .= "<hr>"; >> >> write; >> } >> } >> >> format STDOUT = >> >> ^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<~~ >> $helptext >> . >> >> >> References >> >> Visible links >> 1. http://localhost:8005/ >> 2. http://localhost:8005/ >> 3. http://localhost:8005/ >> 4. http://www.linuxdoc.org/HOWTO/XML-RPC-HOWTO/index.html >> 5. http://localhost:8005/ >> 6. http://localhost:8005/ >> 7. http://www.linuxdoc.org/HOWTO/XML-RPC-HOWTO/index.html >> 8. http://localhost:8005/ >> 9. >> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV >> 10. mailto:[EMAIL PROTECTED] >> 11. https://lists.sourceforge.net/lists/listinfo/xenman-users >> 12. >> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV >> 13. mailto:XenMan-Users@lists.sourceforge.net >> 14. https://lists.sourceforge.net/lists/listinfo/xenman-users >> 15. http://localhost:8005/ >> 16. http://localhost:8005/ >> 17. http://www.linuxdoc.org/HOWTO/XML-RPC-HOWTO/index.html >> 18. http://localhost:8005/ >> 19. >> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV >> 20. mailto:2 >> 21. mailto:mailto:[EMAIL PROTECTED] >> 22. https://lists.sourceforge.net/lists/listinfo/xenman-users >> 23. >> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV >> 24. mailto:XenMan-Users@lists.sourceforge.net >> 25. https://lists.sourceforge.net/lists/listinfo/xenman-users >> 26. mailto:[EMAIL PROTECTED] >> 27. http://bitsko.slc.ut.us/~ken/xml-rpc/ >> 28. http://www.linuxdoc.org/HOWTO/XML-RPC-HOWTO/index.html >> 29. http://xmlrpc-c.sourceforge.net/api/sample.php >> 30. http://www.linuxdoc.org/HOWTO/XML-RPC-HOWTO/index.html >> ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ XenMan-Users mailing list XenMan-Users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/xenman-users