У меня есть скрипт Python:
from requests_aws4auth import AWS4Auth
from elasticsearch import Elasticsearch, RequestsHttpConnection
session = boto3.session.Session()
credentials = session.get_credentials()
awsauth = AWS4Auth(credentials.access_key,
credentials.secret_key,
session.region_name, 'es',
session_token=credentials.token)
es_client = Elasticsearch(
"vpc-mydomain-elasticsearch-xxxxxxxxx.region.es.amazonaws.com:9200",
http_auth=awsauth,
use_ssl=False,
verify_certs=False,
connection_class=RequestsHttpConnection)
print(es_client.info())
Когда я запускаю скрипт, я получаю эту ошибку:
raise ConnectionTimeout('TIMEOUT', str(e), e)
elasticsearch.exceptions.ConnectionTimeout: ConnectionTimeout caused by - ReadTimeout(HTTPConnectionPool(host='10.0.2.2', port=3128): Read timed out. (read timeout=10))
В группе безопасности кластера порт 9200 открыт для 0.0.0.0/0.
( 10.0.2.2 - это ip-адрес моего бродячего компьютера, порт 3128 - это порт прослушивания cntlm )
Как получить эту работу?
EDIT
Я тоже пробовал это, но это не сработало:
curl -XGET https://vpc-mydomain-elasticsearch-xxxxxxxxx.region.es.amazonaws.com:9200/_cat/indices?v
curl: (56) Received HTTP code 403 from proxy after CONNECT