support for `readiness-health-check-*`
Opened this issue · 10 comments
<module>.parameters.health-check-*
are already supported, as described here.
readiness-health-check-*
should also be supported.
Hi sjvans,
The 'readiness-health-check-' and 'health-check-' parameters are part of the MTA deployment descriptor. You can configure these settings in the mta.yaml file for MTA development. However, for these features to be utilized, the BTP deployment service must support them. Therefore, it is essential to submit this requirement to the BTP deployment service team for their consideration and support.
Thanks
Yutao
hi @yutaoj
thanks for the info, i'll check again. if they are supported, then they should probably be added to https://help.sap.com/docs/SAP_HANA_PLATFORM/cf8b4c5847374960a68b55cb86eae013/4050fee4c469498ebc31b10f2ae15ff2.html?version=2.0.07#parameters
best,
sebastian
hi @yutaoj
i checked again and the following mta does not produce a readiness check:
---
_schema-version: 3.3.0
ID: foobar
version: 1.0.0
modules:
- name: foobar
path: ./
type: nodejs
parameters:
buildpacks:
- nodejs_buildpack
health-check-type: http
health-check-http-endpoint: /healthy
readiness-health-check-type: http
readiness-health-check-http-endpoint: /ready
readiness-health-check-interval: 10
further, via cf create-app-manifest foobar
, i get a manifest with:
processes:
- type: web
instances: 1
memory: 1024M
disk_quota: 1024M
log-rate-limit-per-second: -1
health-check-type: http
health-check-http-endpoint: "/healthy"
readiness-health-check-type: process
so something get's lost.
if i need to reach out to somebody else, please point me there.
thanks and best,
sebastian
Hi sjvans,
you used cf command but mbt command .
the MBT(MTA Build Tools) command usage: run "mbt build" in in your prjoect, you can get a mtar file under mta_achives folder. you may unzip it, and you will find the "reeadiness-health-check*" parameters in the mtad.yaml under META-INF.
Regards
Yutao
hi @yutaoj
good to know that mbt build
preserves the config. but obviously cf does not understand that it shall perform readiness checks. otherwise it would be in the manifest that cf generates for the app (cf. create-app-manifest). who is responsible for the deployment of the build result?
best,
sebastian
Hello @sjvans
Currently readiness health check is not supported via MTA deployment.
You can refer to:
https://help.sap.com/docs/btp/sap-business-technology-platform/multitarget-applications-in-cloud-foundry-environment#prerequisites-and-restrictions -> Unsupported Cloud Foundry Features
I saw that you have opened internal ticket as well. We can provide further details there.
Best Regards,
Boyan
Hi @boyan-velinov I am the original requester
Currently readiness health check is not supported via MTA deployment.
Why can't the CF in the BTP provide this function? What is SAP's workaround for this? If the function is not there, we need not wonder why we sometimes have such outliers.
You can refer to: https://help.sap.com/docs/btp/sap-business-technology-platform/multitarget-applications-in-cloud-foundry-environment#prerequisites-and-restrictions -> Unsupported Cloud Foundry Features
I am in opinion of SAP consolidating the documentation, the CAP documentation mentions the readiness checks and even generates them. In the BTP CF documentation there are 2 places where non-existent features are mentioned. Very confusing for a developer.
I saw that you have opened internal ticket as well. We can provide further details there.
Why are the reasons not communicated to the customers, e.g. in the documentary or in this issue? After all, they are the ones who use and pay for the service. If it is explicitly not desired, we also have a case open: 1145217/2024
Best regards
Andre
Hi @qby-ankul
Thanks for the honest opinion!
I will try to answer of all points:
- Boyan: Currently readiness health check is not supported via MTA deployment
Andre: Why can't the CF in the BTP provide this function? What is SAP's workaround for this? If the function is not there, we need not wonder why we sometimes have such outliers.
Boyan: SAP BTP CF provides the functionality since it follows the standard CAPI releases. You can configure readiness health check, if you are using CF native approach with "cf push". It is not possible with MTA deployment only. MTA deployment in CF steps into the OSS project multiapps-controller, part of CFF. The project is maintained and developed by our team. The project relies on OSS CF Java client to orchestrates CF API calls. We have opened PR to OSS CF Java client in the beginning of the year but it is still not accepted: Add readiness health check support in client cloudfoundry/cf-java-client#1213
We did not expect that the change would take so much time to be accepted and released by repository maintaneners. We have contacted them many times since the beginning of the year and based on the CF community setup only maintaners can accept the PRs.
Recently SAP colleague receives maintaner permissions to that repo and hope the situation would be improved. - Boyan: You can refer to: https://help.sap.com/docs/btp/sap-business-technology-platform/multitarget-applications-in-cloud-foundry-environment#prerequisites-and-restrictions -> Unsupported Cloud Foundry Features
Andre: I am in opinion of SAP consolidating the documentation, the CAP documentation mentions the readiness checks and even generates them. In the BTP CF documentation there are 2 places where non-existent features are mentioned. Very confusing for a developer.
Boyan: I agree that this is confusing for developers. Will approach User Assistance collageagues who are reponsible for setup and content of the documentation, if it is possible to made up more coherent user experience. - Boyan: I saw that you have opened internal ticket as well. We can provide further details there.
Andre: Why are the reasons not communicated to the customers, e.g. in the documentary or in this issue? After all, they are the ones who use and pay for the service. If it is explicitly not desired, we also have a case open: 1145217/2024
Boyan: I do not see any reason why technical details not to be communicated to end customers, that is why I explain it above. Note that new features provided by CF API will not be available automatically via MTA deployment. I guess this is one common miunderstanding. There is a certain process and activity around enabling new CF API features in MTA deployment.
I was talking about the internal issue because there we can refer some internal information, like platform timelines. Such information is not suitable for external users.
Hope I manage to answer to your questions.
Best Regards, Boyan
Hi @boyan-velinov thank you for the honest and transparent answer. We hope that it will be approved as soon as possible. And that it is then also integrated into the deploy process.
cf push is difficult to implement if the ctms service is used, right?
@sjvans Please correct the CAP templates by removing readiness health check and fix the CAP documentation.
I found these places:
https://cap.cloud.sap/docs/guides/deployment/health-checks#health-checks
https://cap.cloud.sap/docs/releases/archive/2024/mar24#liveness-readiness-checks