How to monitor Elasticsearch?

you mean the HTTP used by elasticsearch? If plain HTTP is used, it can be monitored by packetbeat. But you will need logstash to parse the URL and json content. Somewhat related to REST interfaces support: https://github.com/elastic/beats/issues/404