Comments (12)
I'll look at updating my Jira and Confluence charts to use tcpSocket
for liveness.
from helm-charts.
Thanks for opening this issue @ppuiseux, this is a result of Jira not having K8s compatible status endpoint(s). The ideal solution would be for Jira to provided a /live
and a /ready
endpoint and only returned the 503 on /ready
. In the meanwhile you can either customise the httpGet
probe to wait longer or you can set httpGet: {}
and provide a tcpSocket
probe instead from the chart values. You should only have to do this for liveness as a failing readiness check will not cause a pod restart.
If you can test the tcpSocket
behaviour for the liveness check I will consider adding it as default to the chart.
from helm-charts.
Thank you @stevehipwell .
I totally agree with you about the endpoints.
I set my livenessProbe like that:
livenessProbe:
failureThreshold: 10
initialDelaySeconds: 360
periodSeconds: 30
successThreshold: 1
httpGet: null
tcpSocket:
port: http
timeoutSeconds: 1
and it works.
However, during re-indexation I have an nginx error and not the Jira Error page but for final user it is the same, he doesn't have application access.
from helm-charts.
@ppuiseux that's because the pod isn't ready during this period. The actual issue is that Jira doesn't have a K8s compatible principal of ready, it's either conservative ready (/status
is 200
) or it's always ready (tcpSocket
available). For me conservative ready is the most correct of the two, but it sounds like I could switch to use tcpSocket
for liveness checks.
I'm pretty sure that with Nginx you could use a custom backend when the pod isn't ready to show a maintenance page.
from helm-charts.
Thank you @stevehipwell .
I raised a ticket on Atlassian Support and I am trying to find the right channel to transmit your solution of /live
and /ready
endpoints which are the most appropriate ways to solve this problem in my opinion too.
I close the issue here but I keep the link of this page to give it to the appropriate person..
from helm-charts.
Thank you @ppuiseux. What are your thoughts on using tcpSocket
for liveness so at least the container doesn't restart while running maintenance?
from helm-charts.
Sorry @stevehipwell I believed I had answer that in this message.
It works well, the application stays alive while running re-indexation.
The configuration I used is in the same message.
from helm-charts.
@ppuiseux did you also test any other http paths for liveness such as /
?
from helm-charts.
No.
I've just tested it and I've got a 302 on /
I try this edit and I come back to you.
from helm-charts.
@ppuiseux codes from 200 to 399 are considered a success for http probes.
from helm-charts.
I launched two re-index and both failed at the same moment (9%) with liveness on /
.
I have a third running right now with liveness on tcpSocket
and is reaches 25% and it continues.
I have a clue. When I run wget http://localhost:80800/
I get a 302 which redirects me to a 503.
I think that Kubernetes follows redirect and keep 503 and not 302.
from helm-charts.
I opened a ticket on https://jira.atlassian.com/browse/JRASERVER-72508 to ask for these two new endpoints.
from helm-charts.
Related Issues (20)
- [nexus3] Allow user credentials specified by kubernetes secret HOT 11
- FR: thoughts about adding tar to the nexus container HOT 2
- Update PlantUML PodDisruptionBudget API HOT 1
- Problem using rootPassword and persistence HOT 5
- [thanos] Unable to update to 1.13.0 - YAML parsing error HOT 3
- [Thanos] StatefulSet PVC Retention Policy HOT 1
- Aggregator Not Sending Logs to outputs After Running for a Few Hours HOT 6
- bug(confluence-server): No template "postgresql.primary.fullname" HOT 2
- More info regarding blob store configuration for Nexus HOT 4
- Allow overriding repository for init containers in Nexus helm chart HOT 2
- [thanos] How to implement authentication HOT 3
- Would you add `resources.extra` field so that I can add my gpu value into the resource? HOT 1
- [Nexus3] Deployment doesn't scale more than one HOT 7
- [nexus] Ldap password escaping \ breaks other passwords that have sed special characters (&) HOT 3
- [thanos] support prometheus sidecar method of deployment HOT 2
- [nexus3] Setting rootPassword.key has no effect HOT 2
- thanos-recever-router ingress creation issue HOT 1
- [nexus3] Question: Requirement for groovy script files in helm chart? HOT 2
- Missing Permissions for ippools in tigera-operator ClusterRole v2.10.0
- softQuota option in blobStore chart section HOT 3
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 helm-charts.