Code Monkey home page Code Monkey logo

Comments (12)

j1n6 avatar j1n6 commented on July 19, 2024

Does Marathon allow you to specify health checks on multiple ports?

from bamboo.

mbabineau avatar mbabineau commented on July 19, 2024

Yep: you can define multiple health checks, each with its own portIndex:
https://mesosphere.github.io/marathon/docs/health-checks.html

from bamboo.

j1n6 avatar j1n6 commented on July 19, 2024

This might also related to running multiple port apps in single Marathon task (e.g. via docker)
Ideally each healthcheck and each app port will be generated in the template.

I can confirm your request is in the roadmap - it's slightly tricky to implement it in the correct way. I will start writing some basic requirements related to this feature and implementation plan somewhere.

from bamboo.

mbabineau avatar mbabineau commented on July 19, 2024

Thanks, let me know if I can provide any more info!

from bamboo.

timoreimann avatar timoreimann commented on July 19, 2024

@activars: I see you added the waiting for response label. Is there anything we can provide to help move forward with this issue?

We are also interested in Bamboo support for health-checking a different port. Let us know if there's anything we can do to assist you folks.

Thanks!

from bamboo.

j1n6 avatar j1n6 commented on July 19, 2024

To support this, I would like to support multiple healthchecks per backend server. For example, a Marathon app may have checks for TCP port 3000 and HTTP port 4000. Both check should be reflected to HAproxy routing logic.

This means, Bamboo needs to be refactored to support array of healthchecks:

  • support HTTP
  • support TCP
  • possible command check (as Marathon support this)

I wonder if there is an workaround. So, instead of actually checking them (reinvent the wheel), it would be great just let HAProxy validate the application status from Marathons API, thus a single check will reflect the status of the service.

from bamboo.

timoreimann avatar timoreimann commented on July 19, 2024

@activars Sounds promising. Marathon does publish health check changes through its event bus, so Bamboo could tap into that. I agree that doubling the check seems unnecessary for backends that already take care of service healthiness.

Need help implementing? I could take a stab.

from bamboo.

j1n6 avatar j1n6 commented on July 19, 2024

Hi, I'm open to PRs and any contributions.

On 13 Mar 2015, at 19:20, Timo Reimann [email protected] wrote:

@activars https://github.com/activars Sounds promising. Marathon does publish
health check changes through its event bus
https://mesosphere.github.io/marathon/docs/event-bus.html, so Bamboo
could tap into that. I agree that doubling the check seems unnecessary for
backends that already take care of service healthiness.

Need help implementing? I could take a stab.


Reply to this email directly or view it on GitHub
#62 (comment).

from bamboo.

timoreimann avatar timoreimann commented on July 19, 2024

Did you implement this?

from bamboo.

j1n6 avatar j1n6 commented on July 19, 2024

No, I'm merging this issue with the healthcheck improvements. Duplicate #57
I think this also relates to multiple service ports, api and ui improvements. I need to think about refactoring and not breaking existing APIs.

from bamboo.

timoreimann avatar timoreimann commented on July 19, 2024

Okay, makes sense. It's just that #57 does not explicitly mention the idea of supporting multiple ports, which I think was the original intention for this issue.

(Although I'm more interested in the "just reuse health checks from Marathon" idea by know because that seems to be the right approach.)

from bamboo.

j1n6 avatar j1n6 commented on July 19, 2024

I agree with your suggestion. I don't want to reimplement the robust featured healthcheck that marathon provides.

from bamboo.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.