Bug #2409

Updated by Tino Vázquez over 7 years ago

Find attached a patch for 3.8.5 to enable new parameters to increase the number of xmlrpc sockets. To compile it follow the steps:

* Install libcurl development libraries

* Download a newer xmlrpmc-c library:

$ svn checkout http://svn.code.sf.net/p/xmlrpc-c/code/stable xmlrpc-c

* Set CXXFLAGS so it compiles for x86_64:

$ export CXXFLAGS=-fPIC

* Configure, make, make install with a prefix:

$ ./configure --prefix=$PWD/install
$ make
$ make install

* Delete dynamic libraries from xmlrpc dir:

$ rm <xmlrpc dir>/lib/*.so <xmlrpc dir>/lib/*.so.*

* Set path to point to xmlrpc bin dir:

$ export PATH=<xmlrpc dir>/bin:$PATH

* Compile OpenNebula after applying the patch

$ git clone git://git.opennebula.org/one.git
$ cd one
$ git checkout release-3.8.5
$ git apply xmlprc.patch
$ scons -j2 mysql=yes

Once this OpenNebula is installed, you can control the xmlrpc server parameters through oned.conf configuration:

#-------------------------------------------------------------------------------
# These are configuration parameters for oned's xmlrpc-c server
#
# MAX_CONN: Maximum number of simultaneous TCP connections the server
# will maintain
#
# MAX_CONN_BACKLOG: Maximum number of TCP connections the operating system
# will accept on the server's behalf without the server accepting them from
# the operating system
#
# KEEPALIVE_TIMEOUT: Maximum time in seconds that the server allows a
# connection to be open between RPCs
#
# KEEPALIVE_MAX_CONN: Maximum number of RPCs that the server will execute on
# a single connection
#
# TIMEOUT: Maximum time in seconds the server will wait for the client to
# do anything while processing an RPC


#*******************************************************************************

#MAX_CONN = 15
#MAX_CONN_BACKLOG = 15
#KEEPALIVE_TIMEOUT = 15
#KEEPALIVE_MAX_CONN = 30
#TIMEOUT = 15

Back