mesos-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Yashwanth Nannapaneni <yashwanth...@gmail.com>
Subject Suggestions After Building and Running Mesos for the First Time
Date Fri, 09 Aug 2013 22:04:21 GMT
Hi,

I am Yashwanth, an intern working with Bill at Twitter. I set up mesos on
my computer, running Ubuntu 13.04, from scratch using the instruction on
the website http://mesos.apache.org/gettingstarted/ and I found a few
errors in the instructions.  I will be submitting a review for things in
the repository, but couldn’t find the sources for the website to modify
them directly.

The Errors with the Initial Build:Building mesos from Ubuntu 13.04

Following http://mesos.apache.org/gettingstarted/

Nice-to-have: instructions for Debian-based distributions (apt-get rather
than yum).

Satisfying prerequisites in Ubuntupython26-devel

$ sudo apt-get python2.6-dev

libz for libcurl

Error:

We need libz for libcurl; you can avoid this with --without-curl, but it
will mean executor and task resources cannot be downloaded over http.

Fix:

$ sudo apt-get install libcurl3 libcurl3-gnutls libcurl4-openssl-dev

libcppunit

$ sudo apt-get install libcppunit-dev


Downloading MesosCloning from repository

Error:

The git clone command returns:

Fatal: Could not read from remote repository.

Please make sure you have the correct access rights

Fix:

$ git clone git://git.apache.org/mesos.git

Running tar.gz
http://apache.mirrors.pair.com/incubator/mesos/mesos-0.12.0-incubating/
Running make

Error:

src/base/linuxthreads.cc: In function ‘void ListerThread(ListerParams*)’:

src/base/linuxthreads.cc:312:24: error: invalid conversion from ‘void
(*)(int, siginfo_t*, void*)’ to ‘void (*)(int, siginfo*, void*)’
[-fpermissive]

No Fix
Running From git repository git://git.apache.org/mesos.gitRunning
./bootstrap

Error:

Autoreconf may not be installed.

Fix:

$ sudo apt-get install autoconf

Error:

Makefile.am:27: Libtool library used but `LIBTOOL' is undefined

Makefile.am:27:   The usual way to define `LIBTOOL' is to add `LT_INIT'

Makefile.am:27:   to `configure.ac' and run `aclocal' and `autoconf' again.

Makefile.am:27:   If `LT_INIT' is in `configure.ac', make sure

Makefile.am:27:   its definition is in aclocal's search path.

autoreconf: automake failed with exit status: 1

Fix

$ sudo apt-get update && sudo apt-get install autotools-dev libltdl-dev
libtool autoconf autopoint

Fix found at
https://answers.launchpad.net/ubuntu/+source/autoconf/+question/213854

Running Example Frameworks and Testing BuildLaunching a slave

Suggestion:

$ bin/mesos-slave.sh --master=192.168.0.1:5050

The above command assumes the local IP is 191.168.0.1.  ‘localhost’ is more
generally-applicable.
Running C++ Test Framework

Error:

Command  $ src/test-framework 192.168.0.1:5050

doesn’t work

*** Error only for C++ example. Java and Python examples work fine.

Fix:

Change command to

$ src/test-framework --master=localhost:5050

Bill also had me create a framework from scratch using the documentation
provided and I have a few suggestions that would help make understanding
mesos easier.
Suggestions: Suggestion 1

As I was going through the API and the examples none of the Objects were
clearly explained. A link or a path to the meso.proto file and an
explanation detailing how it works would make understanding the mesos code
a lot easier.
Suggestion 2

Understanding the examples was difficult at first, since it was the first
time I was looking at how mesos worked. An explanation after every few
chunks of code would make the learning process a lot easier.

Other than that I felt like the documentation was really well done, and I
learned a lot from it.

Finally I have some suggestions for the website.
Website SuggestionsSuggestion 1

The contribution guidelines link on
http://mesos.apache.org/community/points to the guidelines markdown
page in the incubator repository, and at
a specific SHA.  It would be best to use the non-incubator page at master:

https://github.com/apache/mesos/blob/master/docs/Mesos-developers-guide.md
Suggestion 2

The contribution guidelines describe a manual ReviewBoard creation, but the
developers actually use support/post-reviews.py.  Updating the guidelines
to match the developer workflow would be nice.

Overall it was a nice experience learning about mesos. Thank You.


~Yashwanth Nannapaneni

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message