Description

The contrail-vrouter fails to boot with error, '​vRouter is NOT PRESENT' and reason, 'Exited too quickly (process log may have details)'

Symptoms

The contrail-status on the compute shows the following:

root@compute1:~$ sudo contrail-status -dx
vRouter is NOT PRESENT

== Contrail vRouter ==
supervisor-vrouter:           active
supervisor-vrouter: ['contrail-vrouter-agent        failed      Exited too quickly (process log may have details)', 'contrail-vrouter-nodemgr active    pid 6605, uptime 0:09:32', '']
contrail-vrouter-agent        failed              Exited too quickly (process log may have details)
contrail-vrouter-nodemgr: DEFAULT/S.http_server_port not present
contrail-vrouter-nodemgr      active              pid 6605, uptime 0:09:32

Solution

The vrouter.ko kernel module goes missing when a patch is applied on the vrouter module.

root@compute1:/home/nb888d# lsmod |grep vrouter
root@compute1:/home/nb888d# modinfo vrouter
modinfo: ERROR: Module vrouter not found.
  1. Copy the vrouter.ko file from a working compute running the same version (preferably from the same cluster)
  2. Perform md5sum at the source and destination
  3. Restart supervisor-vrouter
  4. Use 'lsmod|grep vrouter' to check if the vrouter is loaded onto the kernel


Example

root@node7:~# lsmod|grep vrouter
root@node7:~# modinfo vrouter
filename:       /lib/modules/3.13.0-110-generic/extra/net/vrouter/vrouter.ko
modinfo: ERROR: could not get modinfo from 'vrouter': No such file or directory
root@node7:~# 
root@node7:~# 
root@node7:~# 
root@node7:~# 
root@node7:~# scp [email protected]:/lib/modules/3.13.0-110-generic/extra/net/vrouter/vrouter.ko /lib/modules/3.13.0-110-generic/extra/net/vrouter/vrouter.ko          <<<< use the appropriate path
The authenticity of host '10.85.189.6 (10.85.189.6)' can't be established.
ECDSA key fingerprint is f2:83:70:be:01:cd:41:15:13:dc:2c:52:d6:21:44:0c.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '10.85.189.6' (ECDSA) to the list of known hosts.
vrouter.ko                                                                                         100%   12MB  11.6MB/s   00:01    
root@node7:~# 
root@node7:~# 
root@node7:~# 
root@node7:~# 
root@node7:~# ls /lib/modules/3.13.0-110-generic/extra/net/vrouter/vrouter.ko
/lib/modules/3.13.0-110-generic/extra/net/vrouter/vrouter.ko   <-- use the appropriate path
root@node7:~# ls -lrt /lib/modules/3.13.0-110-generic/extra/net/vrouter/vrouter.ko
-rw-r--r-- 1 root root 12113845 Oct  9 12:19 /lib/modules/3.13.0-110-generic/extra/net/vrouter/vrouter.ko
root@node7:~# stat /lib/modules/3.13.0-110-generic/extra/net/vrouter/vrouter.ko  <-- use the appropriate path
  File: ‘/lib/modules/3.13.0-110-generic/extra/net/vrouter/vrouter.ko’
  Size: 12113845        Blocks: 23664      IO Block: 4096   regular file
Device: fc00h/64512d    Inode: 8519865     Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2018-10-09 12:19:31.450520005 -0700
Modify: 2018-10-09 12:19:31.606528266 -0700
Change: 2018-10-09 12:19:31.606528266 -0700
Birth: -
 
root@node7:~# md5sum /lib/modules/3.13.0-110-generic/extra/net/vrouter/vrouter.ko  <-- use the appropriate path
3b55e3cc621fb511c4c33a05bc93c186  /lib/modules/3.13.0-110-generic/extra/net/vrouter/vrouter.ko
root@node7:~# 
root@node7:~# 
root@node7:~# 
root@node7:~# 
root@node7:~# 
root@node7:~# modinfo vrouter
filename:       /lib/modules/3.13.0-110-generic/extra/net/vrouter/vrouter.ko
version:        1.0
license:        GPL
srcversion:     A662715FAE7CF18F821900E
depends:        
vermagic:       3.13.0-110-generic SMP mod_unload modversions 
parm:           vr_flow_entries:uint
parm:           vr_oflow_entries:uint
parm:           vr_bridge_entries:uint
parm:           vr_bridge_oentries:uint
parm:           vr_mpls_labels:uint
parm:           vr_nexthops:uint
parm:           vr_vrfs:uint
parm:           vr_flow_hold_limit:uint
parm:           vr_interfaces:uint
parm:           vrouter_dbg:Set 1 for pkt dumping and 0 to disable, default value is 0 (int)
 
root@node7:~# service supervisor-vrouter restart
supervisor-vrouter stop/waiting
supervisor-vrouter start/running, process 2770
 
root@node7:~# lsmod|grep vrouter
vrouter               403984  1