xcp-xapi needs polishing/proper documentation

Bug #1197314 reported by Vangelis Tasoulas
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
xen-api (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

The last days I tried to install xcp-xapi on Ubuntu but not with the absolutely common way which means use eth0, a /24 network and bridged network.

Instead I have an eth1 management interface (eth0 is reserved for later use), /23 network and I wanted to use openvswitch.

Here is a series of problems I encountered. Most of them are just polishing issues in my opinion, which is hard to find documentation and solutions.

1. When using openvswitch, if you do not issue the "xe pif-reconfigure-ip" command, you lose network connectivity and there is no way to reach the machine if you do not have physical access.

2. When I fixed the network with the following two commands, still I could not access the network. Due to bug https://bugs.launchpad.net/ubuntu/+source/xen-api/+bug/1195821
the xe pif-reconfigure-ip command would set a /24 subnet mask, so the xcp ubuntu server could not reach the gateway which is the topmost IP in my /23 network.

PIF_UUID=`xe pif-list device=eth1 --minimal`
xe pif-reconfigure-ip uuid=$PIF_UUID mode=static IP=10.0.0.5 netmask=255.255.254.0 gateway=10.0.1.254 DNS=10.0.1.254

3. After I applied a patch (compiled using apt-get source) to fix issue No2 I faced the situation where I could not connect to my XCP server using OpenXenManager because it would only listen to 127.0.0.1:80 (I could connect using ssh to 10.0.0.5). The only existing configuration file after the installation is /etc/xcp/xapi.conf and it doesn't contain anything (not even some examples or a pointer to some documentation). It just says that it is "intentionally left blank". An online search trying to find directives accepted by this configuration file was not fruitful, neither some questions I asked in forums.

# cat xapi.conf
# The xapi config file
# (intentionally left blank)

4. I coincidentally found the solution when after some times I ran "service xcp-xapi restart" a file /etc/xcp/inventory appeared in the configuration directory (the inventory file is not there right after the installation). This file contains a "MANAGEMENT_INTERFACE" directive which is set by default to xenbr0.
xenbr0 in my case has no IP address. When I changed this directive to xenbr1 which is the interface with the assigned IP address, then I had to restart xcp-xapi service for one more time and two more files appeared. /etc/xcp/xapi-ssl.conf and /etc/xcp/xapi-ssl.pem. Eventually after this the service was configured automatically to listen to the external IP address.

# cat inventory
BUILD_NUMBER='0'
CONTROL_DOMAIN_UUID='31629484-98c1-86eb-ad99-19acd80887fb'
INSTALLATION_UUID='5416184d-c45e-6389-4db9-b60f5e85c5aa'
MANAGEMENT_INTERFACE='xenbr1'

# cat xapi-ssl.conf
; Autogenerated by init.d/xapissl
pid = /var/run/xapissl.pid
socket = r:TCP_NODELAY=1
socket = a:TCP_NODELAY=1
socket = l:TCP_NODELAY=1
compression = zlib

[localhost-xapi]
accept = 127.0.0.1:443
connect = 80
cert = /etc/xcp/xapi-ssl.pem
ciphers = !SSLv2:RSA+AES256-SHA:RSA+AES128-SHA:RSA+RC4-SHA:RSA+RC4-MD5:RSA+DES-CBC3-SHA

[xapi]
accept = 10.0.0.5:443
connect = 80
cert = /etc/xcp/xapi-ssl.pem
ciphers = !SSLv2:RSA+AES256-SHA:RSA+AES128-SHA:RSA+RC4-SHA:RSA+RC4-MD5:RSA+DES-CBC3-SHA
TIMEOUTclose = 0

Some suggestions:
1. During the installation ask the user which is their primary network interface and set the corresponding xenbr device in the /etc/xcp/inventory file.

2. During the installation, you are asked to choose either bridged or openvswitch networking. When choosing openvswitch, the network configuration should be prepared from the installer (the xe pif-reconfigure-ip command) based on the management interface chosen in suggestion 1. It should also give a warning to the user that their network is now managed by "xe" and /etc/network/interfaces is not really needed. If they lose connectivity, what they need to do to fix this situation (provide a link to documentation).

3. Provide some sample configuration and a link to some documentation with accepted configuration directives in /etc/xcp/xapi.conf file which is there by default. The "(intentionally left blank)" is not much of use.

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in xen-api (Ubuntu):
status: New → Confirmed
Revision history for this message
Thomas Goirand (thomas-goirand) wrote :

Hi. While all of the above is truth, some of it is clearly well documented (like the xe pif-reconfigure-ip), and isn't a problem in the package, but in upstream software, so there's nothing one can do about it at the distribution level.

As for doing things automatically for the network config, it would be not Debian policy compliant to do so, so I don't think it's possible to do it.

The only way I see to "fix" the above problem is documenting the issues.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.