2
votes

I am building a mesos cluster from scratch (using Vagrant, which is not relevant for this issue). OS: Ubuntu 16.04 (trusty) Setup:

  • Master -> Runs ZooKeeper, Mesos-master, Marathon and Chronos
  • Slave -> Runs Mesos-slave

This is my provisioning script for the master node https://github.com/zeitgeist2018/infrastructure/blob/fix-marathon/provision/scripts/install-master.sh.

I have managed to register de slave into Mesos, install Marathon and Chronos frameworks, and run scheduled jobs in Chronos (both with docker and shell commands), but I can't get Marathon to work properly. The UI gets stuck in "Loading applications" as soon as I open it, and when I try to call the API, the request hangs forever with no response. In the API I tried to get simple marathon information and do deployments, both with the same hanging result. I've been checking Marathon logs but I don't see anything error there. Just a couple of logs that may (or not) be a hint:

[2020-03-08 10:33:21,819] INFO  Prompting Mesos for a heartbeat via explicit task reconciliation (mesosphere.marathon.core.heartbeat.MesosHeartbeatMonitor$$anon$1:marathon-akka.actor.default-dispatcher-6)
[2020-03-08 10:33:21,822] INFO  Received fake heartbeat task-status update (mesosphere.marathon.core.heartbeat.MesosHeartbeatMonitor:Thread-87)
[2020-03-08 10:33:25,957] INFO  Found no roles suitable for revive repetition. (mesosphere.marathon.core.launchqueue.impl.ReviveOffersStreamLogic$ReviveRepeaterLogic:marathon-akka.actor.default-dispatcher-7)

enter image description here

3
Can you share more logs and output from /v2/app and /info?janisz
I already fixed the issue, you can see it in my answer belowCristian
Downgrading is not a fix. You may miss important updates in the futurejanisz
I agree, but since this cluster I'm building is just for fun and downgrading makes it work, I consider it a fix. Anyway, what do you have in mind in order to fix the actual issue?Cristian
Check /v2/apps endpoint if you can see your app there then inspect UI in browser and check network tab, I think something is blocking UI from getting responses from server.janisz

3 Answers

1
votes

Installing jdk11 and choosing it as default fixed this issue for me without downgrading the Marathon to any other version.

in ubuntu 20.04:

sudo apt install openjdk-11-jre-headless
update-alternatives --config java
1
votes

I increased the number of cpus, virtual machine in which the marathon was installed to 3 and the problem was solved.

0
votes

I have managed to make it work. It was as simple as downgrading Marathon to v1.7.189. After that, it starts properly, and the API responds to requests.