Overview
EYK is allowing deployment of a broken app resulting in the "Error 503 Service Temporarily Unavailable" error when end users attempt to open the application URL from a browser.
Depending on the deployment strategy adopted, customers may prefer to configure EYK to replace pods from the previous release only when the pods from a new release report a healthy status i.e. by returning HTTP/2 200.
Solution
Follow these steps to ensure a broken app is not deployed to replace a working release thereby avoiding users getting 503 errors:
- Update your app Healthchecks such that deployment should fail when attempting to deploy an application that returns anything > 399.
-
Update the Success Threshold to a higher value while decreasing the Period between checks by executing this command:
eyk healthchecks:set readiness httpGet 3000 -p /signup --type web
--period-seconds=<period in seconds>
--success-threshold=<success threshhold in seconds> -a <app name>Example:
eyk healthchecks:set readiness httpGet 3000 -p /signup --type web
--period-seconds=3 --success-threshold=3 -a single-staging
Note: Refer to the Setting healthchecks for an application article for more information on the allowed arguments and options for theeyk healthchecks:set
command.
Priyanka Bhotika
Comments