【问题标题】:Python pyghmi (IPMI) unable to connect to serverPython pyghmi(IPMI)无法连接到服务器
【发布时间】:2017-05-23 12:50:27
【问题描述】:

我一直在尝试让 SaltStack 与 IPMI 一起工作,查看源代码我看到 ipmi 模块使用 pythons pyghmi,无论我尝试什么,我总是收到以下错误:

Insufficient resources to create new session (wait for existing sessions to timeout)

但是,从命令行使用 ipmitool(使用相同的用户名和密码)工作正常,我能够连接和执行命令。

我也尝试了一个简单的 python 脚本:

from pyghmi.ipmi.private import session


def _onlogon(response):
    if 'error' in response:
        raise Exception(response['error'])

s = session.Session(bmc='10.0.0.100',
                    userid='USER',
                    password='PASS',
                    onlogon=_onlogon)

但这会失败并出现同样的错误(使用 python 2.7 和 3.5 尝试过):

Traceback (most recent call last):
  File "/tmp/pycharm_project_858/main.py", line 15, in <module>
    s.wait_for_rsp(timeout=1)
  File "/usr/local/lib/python2.7/dist-packages/pyghmi/ipmi/private/session.py", line 1103, in wait_for_rsp
    relsession.process_pktqueue()
  File "/usr/local/lib/python2.7/dist-packages/pyghmi/ipmi/private/session.py", line 1194, in process_pktqueue
    self._handle_ipmi_packet(pkt[0], sockaddr=pkt[1], qent=pkt)
  File "/usr/local/lib/python2.7/dist-packages/pyghmi/ipmi/private/session.py", line 1261, in _handle_ipmi_packet
    self._handle_ipmi2_packet(data)
  File "/usr/local/lib/python2.7/dist-packages/pyghmi/ipmi/private/session.py", line 1283, in _handle_ipmi2_packet
    return self._got_rmcp_response(data[16:])
  File "/usr/local/lib/python2.7/dist-packages/pyghmi/ipmi/private/session.py", line 1363, in _got_rmcp_response
    self.onlogon({'error': errstr})
  File "/usr/local/lib/python2.7/dist-packages/pyghmi/ipmi/private/session.py", line 537, in onlogon
    waiter(parameter)
  File "/tmp/pycharm_project_858/main.py", line 6, in _onlogon
    raise Exception(response['error'])
Exception: Insufficient resources to create new session (wait for existing sessions to timeout)

欢迎任何见解,不幸的是我找不到任何关于 pyghmi 的文档。

【问题讨论】:

  • 您是否有 ipmi 的配置设置,或者您是否将设置传递给模块? docs.saltstack.com/en/latest/ref/modules/all/…
  • 我将设置传递给模块salt-call ipmi.fast_connect_test api_host="10.0.0.100" api_user="USER" api_password="PASS"

标签: python salt-stack ipmi


【解决方案1】:

从文档看来您应该使用

https://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.ipmi.html#salt.modules.ipmi.fast_connect_test

api_host=127.0.0.1
api_user=admin
api_pass=example
api_port=623
api_kg=None

所以api_pass 而不是api_password

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-06-19
  • 2018-05-24
  • 2023-02-08
  • 2019-12-22
  • 2014-10-16
  • 1970-01-01
  • 2020-09-13
相关资源
最近更新 更多