Having a seamlessly managed Elasticsearch cluster still proved quite appealing even without the built in VPC support. As a holdover until VPC support is available, I recently pushed a package to pypi for communication with an AWS Elasticsearch cluster via AWS IAM and the python requests library. It’s possible to inject the aforementioned tool directly into the elasticsearch-py native client as well.
Check out the source or just get going with
pip install aws-requests-auth.