绊脚石乃是进身之阶。

go-mysql-elasticsearch和es在同一个docker时,同步mysql数据报错

Elasticsearch | 作者 王社英 | 发布于2019年03月08日 | 阅读数:1974

基本情况
docker的ip是172.17.0.14
宿主机的ip是10.12.25.42
es的配置文件中的参数network.host是172.17.0.14,9200端口映射到宿主机上了0.0.0.0:9200->9200/tcp
 
mysql是单独的一个docker
es和go-mysql-elasticsearch是一个docker,
以前es和go-mysql-elasticsearch是单独的docker时服务都是正常的,端口都映射到宿主机上,
但是现在需要把es和es和go-mysql-elasticsearch这两个服务封装到一个docker中,出现了问题,不知道怎么二解决
第一种尝试:
在go-mysql-elasticsearch的配置文件river.toml中的es_addr写成docker的ip 172.17.0.14报错如下:
[2019/03/08 14:24:24] [error] sync.go:480 sync docs err Post http://172.17.0.14:9200/_bulk: dial tcp 172.17.0.14:9200: connect: connection refused after binlog (mysql-bin.000003, 493388)
[2019/03/08 14:24:24] [error] sync.go:162 do ES bulk err Post http://172.17.0.14:9200/_bulk: dial tcp 172.17.0.14:9200: connect: connection refused, close sync

第二种尝试:
在go-mysql-elasticsearch的配置文件river.toml中的es_addr写成docker的ip 127.0.0.1报错如下:
[2019/03/08 14:35:07] [error] sync.go:480 sync docs err Post http://127.0.0.1:9200/_bulk: dial tcp 127.0.0.1:9200: connect: connection refused after binlog (mysql-bin.000003, 494061)
[2019/03/08 14:35:07] [error] sync.go:162 do ES bulk err Post http://127.0.0.1:9200/_bulk: dial tcp 127.0.0.1:9200: connect: connection refused, close sync

第三种尝试:
在go-mysql-elasticsearch的配置文件river.toml中的es_addr写成宿主机的ip 10.12.25.42报错如下:
[2019/03/08 14:44:50] [error] sync.go:480 sync docs err Post http://10.12.25.42:9200/_bulk: read tcp 172.17.0.14:33950->10.12.25.42:9200: read: connection reset by peer after binlog (mysql-bin.000003, 495407)
[2019/03/08 14:44:50] [error] sync.go:162 do ES bulk err Post http://10.12.25.42:9200/_bulk: read tcp 172.17.0.14:33950->10.12.25.42:9200: read: connection reset by peer, close sync
已邀请:

要回复问题请先登录注册