python 连接elasticsearch时sniff探测的问题

xiaoxiao2021-02-28  45

最近在用python调用elasticsearch,因为之前es都是装在物理机上,所以没出现过问题,最近把es迁移到docker上运行程序突然连接不上客户端了,一阵郁闷,先把问题描述下。

这里是主要的连接代码片

self.es_hosts = es_hosts.split(',') self.es_client = es.Elasticsearch(self.es_hosts, sniff_on_start=True, sniff_on_connection_fail=True, sniffer_timeout=600if __name__ == '__main__': EsTools('10.15.1.30:9200')

然后就是一大片错误,连接超时,其中有一个最主要的:可以看到底下有个ip 172.19.0.4, what?怎么冒出来这个ip,看到这个ip熟悉docker的肯定不陌生,这不是docker的地址么。试着进容器看下:哈哈还真是,这就郁闷了哈。

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 41: eth0@if42: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default link/ether 02:42:ac:13:00:04 brd ff:ff:ff:ff:ff:ff link-netnsid 0 inet 172.19.0.4/16 scope global eth0 valid_lft forever preferred_lft forever inet6 fe80::42:acff:fe13:4/64 scope link valid_lft forever preferred_lft forever

然后在我运行程序的主机上,在python解释器敲入连接的命令:这就尴尬了,同样的命令这就连接上了,然后又是一顿在库里打bug(python的好处就是可以随意在外部库打bug),哪哪都正常啊! 最后抱着试试看的态度将sniff那几个参数去掉 what????????ok了?????,这是怎么回事???? 目前还没找到原因,先记录下,总之就是sniff集群探测的问题了。有机会再看看。

转载请注明原文地址: https://www.6miu.com/read-2632949.html

最新回复(0)