从Scrapy Crawler访问AWS Elasticsearch Service

时间:2018-06-03 19:50:31

标签: amazon-web-services docker elasticsearch scrapy

我想将scrapy项目的结果添加到AWS Elasticsearch(ES)域。

我希望使用Sc {的Elasticsearch-Pipline来访问我的ES域。 我的scrapy项目在docker容器中运行。 不幸的是我只收到这个错误:

 不正确的配置(“证书缺少根证书” NotperlyConfigured:证书验证缺少根证书。使用ca_certs参数传递它们或安装certifi以自动使用它。

如何正确访问ES域?

Elasticsearch-Sline for Srapy提供以下设置:

 ELASTICSEARCH_CA - optional settings to if es servers require custom CA files.
 Example:
 ELASTICSEARCH_CA = {
      'CA_CERT': '/path/to/cacert.pem',
      'CLIENT_CERT': '/path/to/client_cert.pem',
      'CLIENT_KEY': '/path/to/client_key.pem'
}

我刚刚习惯了AWS及其安全机制。我可以使用这些设置访问我的ES域吗? (以及如何)

ES域只能访问某些IP地址(包括我的主机IP地址)。我也尝试了 0.0.0.0/0

目前我在自己的机器上尝试使用Docker for Windows进行描述。我希望在AWS EC2实例上运行容器。

提前致谢

编辑:

我的scrapy项目的当前设置:

ITEM_PIPELINES = {
  'scrapyelasticsearch.scrapyelasticsearch.ElasticSearchPipeline' : 300
}

ELASTICSEARCH_SERVERS = ['https://mysearchdomain.us-east-2.es.amazonaws.com:443'] 
ELASTICSEARCH_INDEX = 'testindex'
ELASTICSEARCH_TYPE = 'testtype'

0 个答案:

没有答案