thecodeteam / mesos-module-dvdi

Mesos Docker Volume Driver Isolator module

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Can't load lib on Ubuntu 16.04

andrewl3wis opened this issue · comments

When I try to add the module to mesos it fails to start and spits out:

Jan 13 03:00:01 ip-10-0-4-73 mesos-slave[29629]: WARNING: Logging before InitGoogleLogging() is written to STDERR
Jan 13 03:00:01 ip-10-0-4-73 mesos-slave[29629]: I0113 03:00:01.719745 29605 main.cpp:243] Build: 2016-11-16 01:30:49 by ubuntu
Jan 13 03:00:01 ip-10-0-4-73 mesos-slave[29629]: I0113 03:00:01.719815 29605 main.cpp:244] Version: 1.1.0
Jan 13 03:00:01 ip-10-0-4-73 mesos-slave[29629]: I0113 03:00:01.719827 29605 main.cpp:247] Git tag: 1.1.0
Jan 13 03:00:01 ip-10-0-4-73 mesos-slave[29629]: I0113 03:00:01.719835 29605 main.cpp:251] Git SHA: a44b077ea0df54b77f05550979e1e97f39b15873
Jan 13 03:00:01 ip-10-0-4-73 mesos-slave[29629]: I0113 03:00:01.723484 29605 logging.cpp:194] INFO level logging started!
Jan 13 03:00:01 ip-10-0-4-73 mesos-slave[29629]: Error loading modules: Error opening library: 'libmesos_dvdi_isolator-1.1.0.so': Could not load library 'libmesos_dvdi_isolator-1.1.0.so': /usr/lib/libmesos_dvdi_isolator-1.1.0.so: undefined symbol: _ZNK6google8protobuf7Message11GetTypeNameEv
Jan 13 03:00:01 ip-10-0-4-73 systemd[1]: mesos-slave.service: Main process exited, code=exited, status=1/FAILURE 

Hi @andrew-t-l

Can you do an ldd on libmesos_dvdi_isolator-1.1.0.so just to verify first?

When you installed mesos, apt-get should have installed all the prerequisite libraries including libprotobuf. Give this a try:

sudo apt-get install libprotobuf-dev

Hey thanks for getting back to me, libprotobuf-dev is/was already installed and here is the output of ldd:

ldd /usr/lib/libmesos_dvdi_isolator-1.1.0.so

linux-vdso.so.1 =>  (0x00007ffdbad1d000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f6ded454000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f6ded08b000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f6dece74000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f6decb6b000)
/lib64/ld-linux-x86-64.so.2 (0x0000558591d53000)

Also for what it's worth, everything seems to run fine on Centos 7.

Thanks for the feedback. Will need to stand up an environment for me to debug. We build the binary on Ubuntu 14.04 and it should be compatible with 16.04, but we don't test or verify on that platform at all.

@andrew-t-l here is one last effort before I stand up an environment. Please give this a try. I number of people on 16.04 have reported these libs dont get installed by default and are the correct ones.

sudo apt-get purge libprotobuf-lite9v5
sudo apt-get install libprotobuf-lite9v5

You may need a reboot after installing the libs.

No dice, same error. Worked fine with CentOS 7, so might be able to use that for now.

@andrew-t-l: Thanks for the info. I will stand up a 16.04 environment and let you know what I find.

Please see:
#132

Will reopen if still have issues.