Tag: elasticsearch

Elasticsearch超时index.exists / HEAD请求

在集群模式的Docker容器中,ES 5.6.5出现了一个奇怪的问题。 这里是有问题的代码: from elasticsearch import Elasticsearch from settings import ES_HOSTS db = Elasticsearch(hosts=ES_HOSTS) db.indices.exists(index=product_id) 它在后台执行HTTP HEAD请求,并且请求超时,永远不会得到响应。 我通过使用curl( curl -X HEAD http://elasticsearch:9200/85a9b708-e89d-11e7-887a-02420aff0008 )执行相同的HEAD请求来确认,并且确实超时。 其他请求工作得很好。 例如,如果我对上述URL执行GET请求,则会收到预期的错误,指出索引不存在。 当我在我的机器上的独立docker容器上运行相同的ES映像时,configuration完全相同的方式,并使用相同的代码进行调用,它的工作没有问题。 这里是相关的swarmconfiguration部分: elasticsearch: image: "docker.elastic.co/elasticsearch/elasticsearch:5.6.5" environment: – cluster.name=raul_elasticsearch – xpack.security.enabled=false – discovery.type=single-node – "ES_JAVA_OPTS=-Xms512m -Xmx512m" volumes: – esdata:/usr/share/elasticsearch/data ports: – "9200:9200" – "9300:9300" deploy: resources: limits: memory: 6G reservations: memory: […]

无法访问在端口5601上的Docker容器中运行的Kibana

我用下面的Docker文件构build了一个docker镜像。 # gunicorn-flask FROM devdb/kibana MAINTAINER John Doe <user.name@gmail.com> ENV DEBIAN_FRONTEND noninteractive RUN apt-get update RUN apt-get install -y python python-pip python-virtualenv gunicorn # Setup flask application RUN mkdir -p /deploy/app COPY gunicorn_config.py /deploy/gunicorn_config.py COPY app /deploy/app RUN pip install -r /deploy/app/requirements.txt WORKDIR /deploy/app EXPOSE 5000 5601 9200 # Start gunicorn CMD ["/usr/bin/gunicorn", "–config", "/deploy/gunicorn_config.py", […]

扫描和滚动不起作用从外部放置ElasticSearch群集的Docker

目前我使用Docker和ElasticSearch集群,它位于容器外部。 从我的docker我pipe理创build一个映射(所以我的IP很好),我设法启动简单的请求在Python语言。 def getBodyOfRoot(self, id): res = self.es.get(index=self.ES_Index, doc_type=self.ES_Type, id=id) return res['_source'] 这个例子在我的主机和Docker中运行良好。 但是当我从Docker启动我的扫描和滚动时,我没有得到回应,但是从我的本地操作系统,我得到一个响应。 如果你已经遇到这个问题,你是如何解决这个问题的? 提前致谢。

在Docker中从configuration文件加载Elasticsearch

嗨,我是新来elasticsearch和docker工人,所以原谅我,如果这个问题有点基本。 我想在主机上加载一个elasticsearch容器(使用dockerhub上的官方弹性search图像)和一个configuration文件 目前我所做的是 docker run -d elasticsearch elasticsearch -Des.cluster.name="testcluster1" -Des.node.name="node1" 等等。 有没有一种方法来加载容器使用confi文件,即从我的主机elasticsearch.yml文件? 主机运行centos(不知道是否相关,但认为我会添加它只是incase) 谢谢

Docker中的Elasticsearch 2.0.0群集禅宗发现

我试图以docker方式在google计算引擎的两个不同节点上运行elasticsearch集群。 使用1.7.1,单播工作,但2.0.0,它没有工作,2个节点不能连接在一起 。 下面是Dockerfile , run command和Dockerfile 。 谢谢 Dockerfile FROM java:8 #ENV ES_PKG_NAME elasticsearch-2.0.0 ENV ES_PKG_NAME elasticsearch-1.7.1 RUN \ cd / && \ #wget https://download.elasticsearch.org/elasticsearch/release/org/elasticsearch/distribution/tar/elasticsearch/2.0.0/$ES_PKG_NAME.tar.gz && \ wget https://download.elasticsearch.org/elasticsearch/elasticsearch/$ES_PKG_NAME.tar.gz && \ tar xvzf $ES_PKG_NAME.tar.gz && \ rm -f $ES_PKG_NAME.tar.gz && \ mv /$ES_PKG_NAME /elasticsearch RUN mkdir -p /data/mnt RUN chmod 777 -R /data/mnt RUN […]

Docker – ELK堆栈 – “Elasticsearch似乎无法访问或失败”

所以我使用docker-compose来启动ELK堆栈,它将由filebeats填充…我的configuration是这样的: elasticsearch: image: elasticsearch:latest command: elasticsearch -Des.network.host=_non_loopback_ ports: – "9200:9200" – "9300:9300" logstash: image: logstash:latest command: logstash -f /etc/logstash/conf.d/logstash.conf -b 10000 -w 1 volumes: – ./logstash/config:/etc/logstash/conf.d ports: – "5044:5044" links: – elasticsearch environment: – LS_HEAP_SIZE=2048m kibana: build: kibana/ volumes: – ./kibana/config/:/opt/kibana/config/ ports: – "5601:5601" links: – elasticsearch 我的logstash.conf文件看起来像这样: input { beats { port => 5044 […]

将APIMAN连接到外部ElasticSearch数据库以获取指标

我试图使用Docker-compose将APIMAN连接到外部弹性search数据库。 我遇到了一些问题(请参阅下面的日志输出)。 这里是configuration: -apiman.properties apiman.es.protocol=http apiman.es.host=MY_MACHINE_HOST apiman.es.port=9200 apiman.es.username=elasticsearch apiman.es.password= apiman.es.timeout=10000 apiman-manager.metrics.type=es apiman-manager.metrics.es.client-factory= apiman-manager.metrics.es.protocol=${apiman.es.protocol} apiman-manager.metrics.es.host=${apiman.es.host} apiman-manager.metrics.es.port=${apiman.es.port} apiman-manager.metrics.es.username=${apiman.es.username} apiman-manager.metrics.es.password=${apiman.es.password} apiman-manager.metrics.es.timeout=${apiman.es.timeout} ETC… 和日志 ERROR [io.undertow.request] (default task-28) UT005023: Exception handling request to /apiman/organizations/test/apis/test/versions/1.0/metrics/planUsage: org.jboss.resteasy.spi.UnhandledException: java.lang.RuntimeException: java.lang.IllegalArgumentException: name is empty at org.jboss.resteasy.core.ExceptionHandler.handleApplicationException(ExceptionHandler.java:76) at org.jboss.resteasy.core.ExceptionHandler.handleException(ExceptionHandler.java:212) at org.jboss.resteasy.core.SynchronousDispatcher.writeException(SynchronousDispatcher.java:168) at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:411) ETC… Caused by: java.lang.RuntimeException: java.lang.IllegalArgumentException: name is empty at io.apiman.manager.api.war.WarCdiFactory.provideMetricsESClientFactory(WarCdiFactory.java:255) at […]

已停止的泊坞窗容器中的磁盘pipe理(清理)

我正在虚拟机上运行一个elasticsearch docker容器,最近elasticsearch失败,容器刚刚停止。 原因 – 我的SSD缺less空间。 我可以很容易地清理我的索引,但真正的问题在于,我实际上无法启动docker工作。 容器在启动后立即停止,无法通过Web UI或bash清理空间。 我怎样才能清理我的磁盘在一个停止的容器,我无法启动?

在达到限制时限制elasticsearch索引的大小和翻转

我有一个运行elasticsearch的docker容器,最近我遇到了容器因为空间不足而停下来的情况。 现在我无法启动(立即停止)并清理磁盘。 我知道我可以在一些时间基础上(日常)将日志写入不同的索引(然后我已经这样做了),然后清理它们,但即使采用这种方法,当我的容器生成如此多的日志时,我的清理工作开始之前,空间不足,将被打破。 我今后如何通过elasticsearch来防止这种情况,以确保我的索引不超过我定义的限制? 是否有更好的方法来pipe理elasticsearch日志占用的磁盘空间?

使用dockerconfigurationElasticsearch和Kibana

我正在与docker工人第一次。 我在Docker上成功安装了elasticsearch和kibana,但是当我试图用弹性连接kibana时,出现以下错误: UI设置Elasticsearch插件是红色的 插件:elasticsearch@5.1.1身份validation例外 我不知道,但我认为这个问题是kibana没有通过弹性x-packauthentication。 现在,我试图通过弹性yml文件禁用此身份validation,根据这里的说明。 但我无法find任何地方的XML文件(我search/ usr /共享/ elasticsearch,但我找不到任何config目录或elasticsearch.yml文件)。 如何configurationdocker的弹性? PS我正在与Ubuntu 16.04