compile vdsm and attach it to a engine

Hi, Thank you for your great job on ovirt and vdsm. Now I devote myself to compile vdsm on centos 6.3 host and attach it to a ovirt engine. But when I attach the host which contains a compiled vdsm to a ovirt engine , the status of the host is always ‘Non Responsive’(step 11 below). I reference the links below: http://www.ovirt.org/Vdsm_Developers http://www.ovirt.org/Installing_VDSM_from_rpm The steps( 1-9 ) are executed on centos6.3 host, and the steps(10--11) are executed on ovirt engine. So I would be very grateful if you can give me some clues that if I've missed anything or I done something wrong. The attachment is the same as the bellow which makes it easier for you to read. 1 Deployment platform Centos6.3 Linux bogon 2.6.32-431.20.3.el6.x86_64 #1 SMP Thu Jun 19 21:14:45 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux Ip : 10.1.8.252 CPU supports hardware virtualization extensions: # cat /proc/cpuinfo | egrep 'svm|vmx'| grep nx flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 popcnt tsc_deadline_timer xsave lahf_lm arat epb xsaveopt pln pts dts tpr_shadow vnmi flexpriority ept vpid flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 popcnt tsc_deadline_timer xsave lahf_lm arat epb xsaveopt pln pts dts tpr_shadow vnmi flexpriority ept vpid 2 Apply all updates # yum -y update 3 Installing required packages RHEL 6 users must add EPEL yum repository for installing python-ordereddict and pyton-pthreading. The rpm bellow will install the epel yum repo and required gpg keys. # yum install http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rp... RHEL 6 users must install a newer pep8 version than the one shipped in EPEL6. Older pep8 versions have a bug that's tickled by vdsm. You can use `pip`, or yum install http://danken.fedorapeople.org/python-pep8-1.4.5-2.el6.noarch.rpm oVirt repo: yum install http://resources.ovirt.org/releases/ovirt-release.noarch.rpm RHEL 6 users must add the glusterfs repository, providing newer glusterfs not available on RHEL 6. Optionally install 'wget' if not present rpm -q wget 2> /dev/null || yum install wget wget -O /etc/yum.repos.d/glusterfs-epel.repo *http://download.gluster.org/pub/gluster/glusterfs/LATEST/EPEL.repo/glusterfs... <http://download.gluster.org/pub/gluster/glusterfs/LATEST/EPEL.repo/glusterfs-epel.repo> Fedora and RHEL 6 users must verify the following packages are installed before attempting to build: yum install make autoconf automake pyflakes logrotate gcc python-pep8 libvirt-python python-devel \ python-nose rpm-build sanlock-python genisoimage python-ordereddict python-pthreading libselinux-python\ python-ethtool m2crypto python-dmidecode python-netaddr python-inotify python-argparse git \ python-cpopen bridge-utils libguestfs-tools-c pyparted openssl libnl libtool gettext-devel python-ioprocess libvirt libvirt-client libvirt-lock-sanlock 4 Getting the source cd /root git clone *http://gerrit.ovirt.org/p/vdsm.git* <http://gerrit.ovirt.org/p/vdsm.git> cd vdsm 5 Building a Vdsm RPM ./autogen.sh –system ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libdir=/usr/lib --enable-hooks make rpm NOSE_EXCLUDE=.* 6 Basic installation and start When building from source, you should enable the ovirt-beta repository, to satisfy dependencies that are not available yet in the release repository. # cd ~/rpmbuild/RPMS # yum install --skip-broken --enablerepo=ovirt-master-snapshot-static x86_64/* noarch/vdsm-xml* noarch/vdsm-cli* noarch/vdsm-python-zombiereaper* noarch/vdsm-*jsonrpc* Before starting vdsmd service for the first time vdsm requires some configuration procedures for external services that being used by vdsmd. To ease this process vdsm provides a utility (vdsm-tool). To perform full reconfiguration of external services perform: # vdsm-tool configure --force (for more information read "vdsm-tool --help") 7 Finally start the vdsmd service # service vdsmd start 8 Yum install -y bridge-utils Configuring the bridge Interface as below Disable the network manager service by executing as root: systemctl stop NetworkManager.service systemctl disable NetworkManager.service service network start chkconfig network on Add the following content into a new file named: */etc/sysconfig/network-scripts/ifcfg-ovirtmgmt*: DEVICE=ovirtmgmt TYPE=Bridge ONBOOT=yes DELAY=0 BOOTPROTO=static IPADDR=10.1.8.252 NETMASK=255.255.255.0 GATEWAY=10.1.8.254 Add the following line into the configuration file of your out going interface (usually em1/eth0) the file is located at: */etc/sysconfig/network-scripts/ifcfg-em1* (assuming the device is em1) BRIDGE=ovirtmgmt and remove the IPADDR, NETMASK and BOOTPROTO keys, since the interface should not have an IP address of its own. Full Example DEVICE=em1 ONBOOT=yes BRIDGE=ovirtmgmt Restart the network service by executing: service network restart *Note that if any other bridge (from ovirtmgmt) is present at the time of host installation, the bridge creation operation is skipped and you have to change the bridge settings to correspond to above shown configuration manually.* *9 Configuring VDSM* Add the following content into the file: */etc/vdsm/vdsm.conf* (you may need to create that file): [vars] ssl = false Restart the vdsmd service by executing: service vdsmd restart If Vdsm was started earlier with ssl=true, it would refuse to start and you may need to use the undocumented verb service vdsmd reconfigure service vdsmd start which edits */etc/libvirt/qemu.conf* and changes *spice_tls=1* to *spice_tls=0*. 10 Connect to overt-engine *ref: OVirt_-_connecting_development_vdsm_to_ovirt_engine <http://www.ovirt.org/OVirt_-_connecting_development_vdsm_to_ovirt_engine>.* *su - postgres -c "psql engine -c \"UPDATE vdc_options set option_value = 'true' where option_name = 'InstallVds'\""* *service overt-engine restart* 11 Attach the host to the engine I login the engine Administration Portal , and attach the centos host to a cluster. But it failed.

----- Original Message -----
From: "aaron Beein" <aaronbeein@gmail.com> To: devel@ovirt.org Sent: Thursday, July 3, 2014 5:16:15 AM Subject: [ovirt-devel] compile vdsm and attach it to a engine
Thank you for your great job on ovirt and vdsm. Now I devote myself to compile vdsm on centos 6.3 host and attach it to a ovirt engine. But when I attach the host which contains a compiled vdsm to a ovirt engine , the status of the host is always ‘Non Responsive’(step 11 below).
I think those pages are misleading. 1. First Centos 6.3 is too old, I think that current vdsm requires Centos 6.5. Using old version you may have missing packages. Do you have specific reason to use this version? 2. Why do you want to compile vdsm? Do you plan to modify vdsm or you just need a version that works on your machine? 3. If you want to develop vdsm, first prepare the host: 1. Install on the host one of the supported versions - RHEL 6.5, Centos 6.5 or Fedora 19. Fedora 20 should also work. 2. http://www.ovirt.org/Vdsm_Developers#Installing_required_packages 3. http://www.ovirt.org/Vdsm_Developers#Getting_the_source 4. http://www.ovirt.org/Vdsm_Developers#Building_a_Vdsm_RPM 5. You don't need anything else on that page (but see bellow) 4. Add the host to ovirt engine The best way is to do it from the engine, before you install your vdsm you built from source. This will configure network and certificates and will make your life easier. Do not disable ssl or installation from engine, it will only make it more complex for yourself. So add the host the engine - it will install the lastest stable vdsm version on this host and it should be up in few minuets. 5. Install new vdsm version This is the step you will do again and again when developing vdsm. 1. On the engine side, move the host to maintenance 2. On the host, remove vdsm: yum remove -y vdsm\* This is required because the way we version master builds. A version you build from source will typically have older version number compared with latest stable version. Removing vdsm is quick and solve this versioning mess. 3. And install the rpm packages as described in: http://www.ovirt.org/Vdsm_Developers#Basic_installation Important note: the command to install vdsm in the wiki assume that you have only one version of the rpm in rpmbuild/RPMS/*/. If you have multiple versions your installation will fail with strange errors. The best way to avoid this is to remove the RPMS direcotory before you build new rpm. If you want to keep multiple rpms version move them elsewhere after you build. If you have trouble, please attach engine.log and vdsm.log. We cannot help if all the info we have is "host is non-responsive". Nir
participants (2)
-
aaron Beein
-
Nir Soffer