AWS has you covered for first 2 points with healthchecks on load balancer .
This might not cover edge cases when your host machine and application container (it might be Tomcat or any other supported application containers) are running, but CloverETL server is not.
There are multiple ways how to check health or "liveness" (if thats even a word).
Use HTTP API call
CloverETL server supports HTTP api for multiple operations, you are interested in 'cluster_status' .
Please ignore name, same operation will work on cluster or even on single installation.
You can use health check functionality of load balancer to ping that endpoint to get status.
Disadvantage of this approach is that by default HTTP API is protected by HTTP Basic authentication , what might be a problem for some health check services.
Calling accessibility page
CloverETL server has page that could be used without any authentication.
Its address is http://<host>:<port>/clover/accessibilityTest.jsp
Calling this page will result in one of 3 states:
This way you can use any health check application or service to learn if your CloverETL is living.