tidb2.1.14执行info_collecting.py脚本报错

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。

  • 【TiDB 版本】:tidb2.1.14
  • 【问题描述】:tidb2.1.14执行info_collecting.py脚本报错

[tidb@10-0-0-15 tidb-ansible-release-2.1]$ python info_collecting.py
{‘tidb_log_dir’: ‘{{ deploy_dir }}/log’, ‘dummy’: None, ‘tidb_port’: 4000, ‘tidb_status_port’: 10080, ‘tidb_cert_dir’: ‘{{ deploy_dir }}/conf/ssl’}
{‘tidb_log_dir’: ‘{{ deploy_dir }}/log’, ‘dummy’: None, ‘tidb_port’: 4000, ‘tidb_status_port’: 10080, ‘tidb_cert_dir’: ‘{{ deploy_dir }}/conf/ssl’}

系统信息
+------------+-----------------------+
|    Host    |        Release        |
+------------+-----------------------+
| 10-0-0-114 | 3.10.0-693.el7.x86_64 |
| 10-0-0-115 | 3.10.0-693.el7.x86_64 |
| 10-0-0-127 | 3.10.0-693.el7.x86_64 |
| 10-0-0-131 | 3.10.0-693.el7.x86_64 |
| 10-0-0-59  | 3.10.0-693.el7.x86_64 |
| 10-0-0-72  | 3.10.0-693.el7.x86_64 |
| 10-0-0-91  | 3.10.0-693.el7.x86_64 |
+------------+-----------------------+
TiDB 集群信息
Traceback (most recent call last):
  File "info_collecting.py", line 262, in <module>
    table = execute(item, pro_url, tbl)
  File "info_collecting.py", line 253, in execute
    raise e
urllib2.URLError: <urlopen error [Errno -2] Name or service not known>

这个报错看起来和防火墙有关系,您可以检查下ip或者端口是否都放通了

https://stackoom.com/question/klR4/SUDS是否受防火墙影响

[tidb@10-0-0-15 tidb-ansible-release-2.1]$
[tidb@10-0-0-15 tidb-ansible-release-2.1]$ python info_collecting.py
{‘tidb_log_dir’: ‘{{ deploy_dir }}/log’, ‘dummy’: None, ‘tidb_port’: 4000, ‘tidb_status_port’: 10080, ‘tidb_cert_dir’: ‘{{ deploy_dir }}/conf/ssl’}
{‘tidb_log_dir’: ‘{{ deploy_dir }}/log’, ‘dummy’: None, ‘tidb_port’: 4000, ‘tidb_status_port’: 10080, ‘tidb_cert_dir’: ‘{{ deploy_dir }}/conf/ssl’}
http://10.0.0.59:9090/api/v1/query?query=

系统信息
+------------+-----------------------+
|    Host    |        Release        |
+------------+-----------------------+
| 10-0-0-114 | 3.10.0-693.el7.x86_64 |
| 10-0-0-115 | 3.10.0-693.el7.x86_64 |
| 10-0-0-127 | 3.10.0-693.el7.x86_64 |
| 10-0-0-131 | 3.10.0-693.el7.x86_64 |
| 10-0-0-59  | 3.10.0-693.el7.x86_64 |
| 10-0-0-72  | 3.10.0-693.el7.x86_64 |
| 10-0-0-91  | 3.10.0-693.el7.x86_64 |
+------------+-----------------------+
TiDB 集群信息
Traceback (most recent call last):
  File "info_collecting.py", line 263, in <module>
    table = execute(item, pro_url, tbl)
  File "info_collecting.py", line 254, in execute
    raise e
urllib2.URLError: <urlopen error [Errno -2] Name or service not known>
[tidb@10-0-0-15 tidb-ansible-release-2.1]$ 
[tidb@10-0-0-15 tidb-ansible-release-2.1]$ telnet 10.0.0.59 9090
Trying 10.0.0.59...
Connected to 10.0.0.59.
Escape character is '^]'.


我在python脚本里print了pro_url,对应值如下
http://10.0.0.59:9090/api/v1/query?query=

然后telnet访问没有问题

systemctl status firewallf 看下结果

ps: 目前 ansible 环境和 2.x 版本至已经不在提供维护,请尽快升级到更新的版本中

[root@10-0-0-15 ~]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: inactive (dead)
Docs: man:firewalld(1)

[root@10-0-0-59 ~]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: inactive (dead)
Docs: man:firewalld(1)
[root@10-0-0-59 ~]#

两台服务器防火墙都是关着的

感谢反馈,这边确认了一下,此脚本主要针对 3.x 将其以上版本,2.x 的版本可以自己调试下。

好的,了解了。感谢

感谢理解,有集群方面的问题可以开帖我们继续讨论下