Thanks, Yaniv.

1. I was able to succeed partially on the setup front. I am able to run
mesos inside a vagrant box and submit the job inside the box using host
127.0.0.1.  I believe that the right way to use the vagrant box is just for
mesos and not for submitting the jobs.  I would like to submit the job from
the host machine, which I am pretty sure must be possible. There's some
network configuration which I am missing.

a. Either I have a job which doesn't move as an Active framework (always
stick on Inactive framework) or
b. I get a "Transport endpoint is not connected".

I am going to spend some more time on this and will bother you all.
Meanwhile, I am also trying to setup mesos on my host machine so that I
could still use the localhost to submit the jobs.  Was able to do it on
Ubuntu but not on Mac :-(

2. I believe that I have some basic understanding of mesos in the short
time I spent and I am able to traverse through the logs through the UI as
well as the console.  Looking forward to the YARN push. Thanks !!

3. Dev setup - I'll get back to you shortly.

4. External context : Yes, more than happy to be of help. If there's some
design work previously done for this, please let me know. Else, I'll come
up with a draft for a review.

Cheers,
Arun


On Sun, Dec 31, 2017 at 8:29 PM Yaniv Rodenski <ya...@shinto.io> wrote:

> Hi Arun,
>
> Happy new year!
>
> As for your questions:
> 1. this seems to be a new issue with the vagrant image. Java used to be
> installed with the image used in the vagrant script, really annoying but
> I'll fix as per your suggestion and push it asap. BTW I myself had issues
> running Mesos on MacOS but it worked fine on both CentOS and Ubuntu so that
> might be a source of issues.
> 2. The first thing I would look into is the executor logs, the easiest way
> to get those is via the Mesos UI (by default port 5050 of the vagrant
> master) also a really good tool for debugging Amaterasu jobs on Mesos, as a
> side note, YARN is really around the corner, so you will get the same logs
> via the YARN ResourceManager UI.
> 3. Not sure, I haven't tried that but I'm happy to have a look and help you
> try, can you push that to a branch on your own fork? I'll try to have a
> look
> 4.  Supporting multiple repositories is planned for version 0.3.0
>
> https://issues.apache.org/jira/projects/AMATERASU/issues/AMATERASU-9?filter=allopenissues
> and also support for binaries from external repositories
>
> https://issues.apache.org/jira/projects/AMATERASU/issues/AMATERASU-8?filter=allopenissues
> which seems to be what you are after. If you are interested in helping out
> with any of them it would be much appreciated :)
> One thing that you should note is that AmaContext is created outside of the
> Spark job and injected by Amaterasu, so you can just access it in your job,
> For pyspark jobs, it will be ama_context and same for SparkSQL.
>
> Hope that helps,
> Yaniv
>
> On Sun, Dec 31, 2017 at 4:35 PM, Arun Manivannan <a...@arunma.com> wrote:
>
> > Hi,
> >
> > Very Good morning and Wish you all a wonderful New Year ahead.
> >
> > Sorry to bother you on New Year's eve but I really appreciate any hints.
> >
> > *1. Setting up and running the basic setup (on MacOS High Sierra)
> > (Solution found): *
> >
> > I remember having done this successfully before but it was strange this
> > time.
> >
> > a. Cloned amaterasu and amaterasu-vagrant repos.
> > b. Built amaterasu using ./gradlew buildHomeDir test (and later tried
> with
> > buildDistribution)
> > c. Have a vagrant box up and running (have modified the location of the
> > sync folder to point to amaterasu's build/amaterasu directory)
> > d. Have installed mesos locally using brew and set the
> > MESOS_NATIVE_JAVA_LIBRARY to point to /usr/local/lib/libmesos.dylib
> > e. Did a
> >
> > ama-start.sh --repo="
> https://github.com/shintoio/amaterasu-job-sample.git"; --branch="master"
> --env="test" --report="code"
> >
> >
> > I found from mesos that zookeeper wasn't running and from zookeeper logs
> > that java wasn't installed.  I manually installed java (sudo yum install
> > java-1.7.0-openjdk-devel) and then started zookeeper (service
> > zookeeper-server start). Mesos came up.
> >
> > *Question 1 : Is it okay if I add the java installation as part of the
> > provision.sh or did I miss anything earlier in order to bump into this
> > issue?*
> >
> > 2. Upon submitting the job, I saw that the job didn't run fine.
> >
> >
> > *Client logs (./ama-start.sh)*
> >
> > I1231 13:24:01.548068 193015808 sched.cpp:232] Version: 1.3.0
> > I1231 13:24:01.554518 226975744 sched.cpp:336] New master detected at
> > master@192.168.33.11:5050
> > I1231 13:24:01.554733 226975744 sched.cpp:352] No credentials provided.
> > Attempting to register without authentication
> > I1231 13:24:01.558101 226975744 sched.cpp:759] Framework registered with
> > 70566146-bf07-4515-aa0c-ed7fd597efe3-0019
> > ===> moving to err action null
> > 2017-12-31 13:24:08.884:INFO:oejs.ServerConnector:Thread-22: Stopped
> > ServerConnector@424e1977{HTTP/1.1}{0.0.0.0:8000}
> > 2017-12-31 13:24:08.886:INFO:oejsh.ContextHandler:Thread-22: Stopped
> > o.e.j.s.ServletContextHandler@7bedc48a{/,file:/Users/arun/
> > IdeaProjects/amaterasu/build/amaterasu/dist/,UNAVAILABLE}
> > 2017-12-31 13:24:08.886:INFO:oejsh.ContextHandler:Thread-22: Stopped
> > o.e.j.s.h.ContextHandler@4802796d{/,null,UNAVAILABLE}
> > I1231 13:24:08.887260 229122048 sched.cpp:2021] Asked to stop the driver
> > I1231 13:24:08.887711 229122048 sched.cpp:1203] Stopping framework
> > 70566146-bf07-4515-aa0c-ed7fd597efe3-0019
> >
> > *(MESOS LOGS as ATTACHMENT MesosMaster-INFO.log)*
> >
> > *Question 2 :  Hints please*
> >
> > *2. Dev setup*
> > I would like to debug the program to understand how the flow of code
> > within Amaterasu. I have attempted the following and that gives the same
> > result as above. Created a main program that invokes the job launcher
> with
> > the following parameters (this class is in test directory primarily to
> > bring in the "provided" libraries. Not sure if that makes sense).
> >
> > *Program arguments : *
> > -Djava.library.path=/usr/lib
> > *Environment variables : (not sure why System.setProperty doesn't picked
> > up)*
> > AMA_NODE = MacBook-Pro.local
> > MESOS_NATIVE_JAVA_LIBRARY = /usr/local/lib/libmesos.dylib
> >
> > object JobLauncherDebug extends App {
> >   JobLauncher.main(Array(
> >     "--home", "/Users/arun/IdeaProjects/amaterasu/build/amaterasu",
> >     "--repo", "https://github.com/shintoio/amaterasu-job-sample.git";,
> >     "--branch", "master",
> >     "--env", "test",
> >     "--report", "code"
> >   ))
> > }
> >
> > *Question 3 : Would this be a good idea to go about debugging into the
> > code?*
> >
> > *3. Pipelining two Spark jobs*
> >
> > My ultimate goal would be to run the following use-case using Amaterasu.
> > This is very similar to what I do at work.
> >
> > a. Create a bunch of Hive tables (and hdfs directories) using a Spark job
> > (that will be used as a deployment script - one time setup but no harm in
> > running it again since it has the "if not exists" clause) (
> > https://github.com/arunma/ama_schemapreparer)
> > b. Run another Spark job that populates the data (this job runs on
> regular
> > intervals throughout the day) (
> https://github.com/arunma/ama_datapopulator)
> >
> > c. Run a different Spark job that reconciles the populated data.
> >
> > I am yet to create the "job" project for this one which I intend to do
> > once I have the default testcase running.
> >
> > *Question 4 :*
> > A couple of hurdles that I believe I would have is that Amaterasu, at the
> > moment,
> >
> > a. Expects the Spark jobs to be in the same repository.
> > b. The file that instantiates the Spark session, context etc has to be
> > explicitly given as a ".scala" file (we then use the IMain interpreter to
> > inject the AmaContext?)
> >
> > Now, with two repositories in play and only the binaries/repository name
> > given for the repo, would it be a good idea to achieve the AmaContext
> > insertion using a compiler plugin?  I am pretty sure this has been
> > discussed before and it would be great if you could share your views on
> > this. I can come up with a POC PR of sorts if I get some ideas.
> >
> > Best Regards,
> > Arun
> >
> >
>
>
> --
> Yaniv Rodenski
>

Reply via email to