错误信息:

panic: no active connection found: no Elasticsearch node available

在docker中运行es时,默认启动sniffing 模式,es自动查找节点, 要确保Elasticsearch返回可从容器外部访问的IP地址。

解决方式为关闭sniffing或者配置es返回的主机地址,参考 https://github.com/olivere/elastic/wiki/Docker

1. 配置elasticsearch

- 将network.publish_host和network.bind_host配置为可从容器外部访问的地址

- 配置network.host (不用再单独配置network.bind_host 和 network.publish_host

2. 禁用 sniffing

elastic.SetSniff(false)

# 查看节点信息,详细返回参数:Nodes Info
curl -XGET '0.0.0.0:9200/_nodes/http?pretty'
{
"_nodes" : {
"total" : ,
"successful" : ,
"failed" :
},
"cluster_name" : "escluster",
"nodes" : {
"nodename" : {
"name" : "name",
"transport_address" : "xxxx:9300",
"host" : "xxxx",
"ip" : "xxxx",
"version" : "6.4.1",
"build_flavor" : "default",
"build_type" : "tar",
"build_hash" : "e36acdb",
"roles" : [
"master",
"data",
"ingest"
],
"attributes" : {
"ml.machine_memory" : "",
"xpack.installed" : "true",
"ml.max_open_jobs" : "",
"ml.enabled" : "true"
},
"http" : {
"bound_address" : [
"0.0.0.0:9200" //http服务绑定的主机地址,配置为可从容器外部访问的地址
],
"publish_address" : "xxxx:9200", //http客户端发布的主机地址,配置为可从容器外部访问的地址
"max_content_length_in_bytes" :
}
}
}
}

在docker中运行elasticsearch时go程序无法连接到节点的更多相关文章

  1. Docker 中运行 ElasticSearch 和 Kibana

    ElasticSearch 是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口:Kibana 是一个开源的分析和可视化平台,可以搜索,查看. ...

  2. 在docker中运行ASP.NET Core Web API应用程序

    本文是一篇指导快速演练的文章,将介绍在docker中运行一个ASP.NET Core Web API应用程序的基本步骤,在介绍的过程中,也会对docker的使用进行一些简单的描述.对于.NET Cor ...

  3. 如何让传统ASP.NET网站在Docker中运行

    本文主要描述如何让传统ASP.NET网站在Docker中运行,侧重Docker image 搭建. 使用条件: Docker for windows 用户切换到Windows 容器模式 Windows ...

  4. k3d入门指南:在Docker中运行K3s

    在本文中,我们将简单了解k3d,这是一款可让您在安装了Docker的任何地方运行一次性Kubernetes集群的工具,此外在本文中我们还将探讨在使用k3d中可能会出现的一切问题. 什么是k3d? k3 ...

  5. docker中运行ASP.NET Core Web API

    在docker中运行ASP.NET Core Web API应用程序 本文是一篇指导快速演练的文章,将介绍在docker中运行一个ASP.NET Core Web API应用程序的基本步骤,在介绍的过 ...

  6. 在Docker中运行torch版的neural style

    相关的代码都在Github上,请参见我的Github,https://github.com/lijingpeng/deep-learning-notes 敬请多多关注哈~~~ 在Docker中运行to ...

  7. LoadRunner中运行场景时提示"You do not have a license for this Vuser type."

    LoadRunner中运行场景时提示"You do not have a license for this Vuser type." 2012-06-15 17:09:07|  分 ...

  8. 记一个在docker中运行多线程event_loop.run_forever()的bug

    问题简介 我写爬虫,用到了asyncio相关的事件循环,新建了一个线程去run_forever(),在docker中运行.后来程序有异常,主线程挂了,但是竟然不报错.查了很久,才找出来. 如果你新建一 ...

  9. docker 运行jenkins及vue项目与springboot项目(五.jenkins打包springboot服务且在docker中运行)

    docker 运行jenkins及vue项目与springboot项目: 一.安装docker 二.docker运行jenkins为自动打包运行做准备 三.jenkins的使用及自动打包vue项目 四 ...

随机推荐

  1. linux下安装rar以及rar相关命令参数详解

    Linux平台默认是不支持RAR文件的解压,需要安装Linux版本的RAR压缩软件,下载地址:http://www.rarlab.com/download.htm 下载之后进行解压之后,进入rar目录 ...

  2. Hdfs&MapReduce测试

    Hdfs&MapReduce测试 测试 上传文件到hdfs 随意打开一个文件夹传一个文件试试(把javafx-src.zip传到hdfs的/根目录下):hadoop fs -put javaf ...

  3. Shortest Paths

    最短路径 APIs 带权有向图中的最短路径,这节讨论从源点(s)到图中其它点的最短路径(single source). Weighted Directed Edge API 需要新的数据类型来表示带权 ...

  4. Vim 编辑器及其基本操作

    实验楼某些课程有用 Vim 编辑器来写代码,因此有了这篇博客,据说是上古神器,当然主要目的是基本操作. Vim 编辑器 Vim(Vi IMprove) 是 Linux 系统上的最著名的文本/代码编辑器 ...

  5. TP,TN,FP,FN

    一张图搞定~~~ [转]https://blog.csdn.net/u011956147/article/details/78967145

  6. 20155203 2016-2017-4 《Java程序设计》第9周学习总结

    20155203 2016-2017-4 <Java程序设计>第9周学习总结 教材学习内容总结 课堂内容 两个类如果有公共的部分要放在父类中,多次复用.当我们用父类或接口去声明对象的引用生 ...

  7. 软件分享:将应用一键打包成dmg文件

    简介 苹果软件开发完成后,都要打包成dmg文件.通常的做法也许是到系统自带的磁盘工具里制作dmg文件,但这样做比较繁琐,尤其是要打包多个应用时,每次只能制作一个dmg文件很麻烦.分享一个很好用很方便的 ...

  8. sqoop2启动job报错

    set option --name verbose --value true   #打开报错详情输出 Exception has occurred during processing command  ...

  9. windows系统安装erlang

    1.什么是erlang erlang是一种通用的面向并发的编程语言,它由瑞典电信设备制造商爱立信所辖的CS-Lab开发,目的是创造一种可以应对大规模并发活动的编程语言和运行环境.Erlang是一个结构 ...

  10. Java Calendar and SimpleDateFormat 时间模块

    package UtilTest; import java.util.Calendar; import java.text.SimpleDateFormat; import org.apache.co ...