Comments (5)
Do you have health check configured in marathon app config? The healthchecks are used for HAProxy check. Details can be found in the reload templates.
On Jul 11, 2016, at 7:18 AM, Gabriel [email protected] wrote:
I'm getting the 503 status code when I'm trying to restart an application in Marathon. I have a question: the event from marathon to ZK is sent before or after the health check being healthy? It seems like the events are sent before the application is healthy. If it is a normal behaviour, I was wondering, is it possible to retry on 503 errors on haproxy?
Thanks in advance!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.
from bamboo.
Yes, I have configured it.
This is my app in marathon:
{
"id": "/hello-java",
"cmd": "java -jar hello-java-all* $HOST $PORT",
"cpus": 0.1,
"mem": 32,
"disk": 20,
"instances": 5,
"executor": "//cmd",
"healthChecks": [
{
"path": "/hello-java/health",
"protocol": "HTTP",
"portIndex": 0,
"gracePeriodSeconds": 50,
"intervalSeconds": 1,
"timeoutSeconds": 1,
"maxConsecutiveFailures": 0,
"ignoreHttp1xx": false
}
],
"portDefinitions": [
{
"port": 10000,
"protocol": "tcp",
"labels": {}
}
],
"uris": [
"https://github.com/gabfssilva/hello/blob/master/build/libs/hello-java-all.jar?raw=true"
],
"container": null,
"env": {}
}
Is there any place else where I need to configure something? It seems that bamboo tries to update the haproxy config on any event, even if the app is not healthy.
from bamboo.
Was app marked healthy on HAProxy health check admin UI?
On Jul 11, 2016, at 7:02 PM, Gabriel [email protected] wrote:
Yes, I have configured it.
This is my app in marathon:
{
"id": "/hello-java",
"cmd": "java -jar hello-java-all* $HOST $PORT",
"cpus": 0.1,
"mem": 32,
"disk": 20,
"instances": 5,
"executor": "//cmd",
"healthChecks": [
{
"path": "/hello-java/health",
"protocol": "HTTP",
"portIndex": 0,
"gracePeriodSeconds": 50,
"intervalSeconds": 1,
"timeoutSeconds": 1,
"maxConsecutiveFailures": 0,
"ignoreHttp1xx": false
}
],
"portDefinitions": [
{
"port": 10000,
"protocol": "tcp",
"labels": {}
}
],
"uris": [
"https://github.com/gabfssilva/hello/blob/master/build/libs/hello-java-all.jar?raw=true"
],
"container": null,
"env": {}
}
Is there any place else where I need to configure something? It seems that bamboo tries to update on any event, even if the app is not healthy.—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.
from bamboo.
I just checked and sometimes on restart all the instances are "INI" and none L7OK/200. When I check marathon I always see at least one healthy instance.
from bamboo.
There is a long standing issue about Bamboo adding tasks too early to HAProxy: #143.
The issue describes a few workarounds. We have come around enabling HAProxy's redispatch option to try a different backend on failure. This is also helpful when a container crashes unexpectedly.
I'd suggest to close this issue in favor of the one I referenced.
from bamboo.
Related Issues (20)
- Support Ip per container HOT 2
- How to support the dynamic ip and port for web container by bamboo HOT 2
- Docker images not building deb packages HOT 3
- Event streaming API messages not handled correctly
- The latest version of mesos and marathon are supported ? HOT 2
- Mesos/Marathon integration test Container
- Document httpclose HOT 1
- 8125 port write: connection refused HOT 2
- Failed to update HAProxy configuration HOT 1
- how can i access my app
- How about metrics? HOT 2
- Enable support for marathon task_killing state HOT 2
- Support systemd in deb package HOT 1
- Question: Per-service HAProxy templates HOT 1
- Event subscription broken when using Marathon version >=1.5.0 HOT 3
- ACL for similar service
- Does Bamboo support zookeeper authentication? HOT 5
- Docker container not reading haproxy template path HOT 1
- Should use portDefinitions instead of servicePorts
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from bamboo.