Using different names for services created by the operator

When creating the Elasticsearch resource (using ECK), the http service from where es is accessible is by default named esresourcename-es-http.

Is this configurable?

And in general, are all the options that can be configured in the Elasticsearch resource listed somewhere?

edit: I guess I can look into the CRD itself, just wondering whether there is a more readable way, thanks.

You can also just create your own services that use the labels to expose the nodes

When creating the Elasticsearch resource (using ECK), the http service from where es is accessible is by default named esresourcename-es-http .
Is this configurable?

No, the name of this service is not configurable, it's always <cluster_name>-es-http, but you can define your own service.
This is especially useful if you are operating an Elasticsearch cluster with different node types and want control over which nodes handle which types of traffic. See Traffic Splitting | Elastic Cloud on Kubernetes [master] | Elastic.

And in general, are all the options that can be configured in the Elasticsearch resource listed somewhere?

Yes, we generate the documentation for all the custom resources managed by ECK: API Reference | Elastic Cloud on Kubernetes [1.6] | Elastic.