You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

请求提供PyCharm Python2.7下用Paramiko SSH Cisco C220的健康查询示例

使用Paramiko连接Cisco C220服务器并查询健康状态(Python 2.7)

没问题,我来给你提供一个适配PyCharm Python 2.7环境的示例脚本,帮你快速实现SSH连接Cisco C220服务器并执行健康状态查询的自动化操作。

第一步:环境准备

首先确保你的Python 2.7环境已经安装了适配版本的Paramiko——因为高版本Paramiko不再支持Python 2.7,所以需要指定版本安装:

pip install paramiko==2.4.2

在PyCharm里,你可以直接在终端执行这条命令,或者通过Project Interpreter界面搜索安装对应版本。

第二步:完整示例脚本

下面的脚本会通过SSH连接到指定IP的Cisco C220服务器,执行健康状态查询命令,并返回输出结果:

import paramiko
import traceback

def check_cisco_server_health(server_ip, username, password):
    # 初始化SSH客户端
    ssh_client = paramiko.SSHClient()
    try:
        # 自动添加未知主机的密钥(测试环境可用,生产环境建议手动配置密钥)
        ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
        # 建立SSH连接
        ssh_client.connect(
            hostname=server_ip,
            username=username,
            password=password,
            port=22,
            timeout=10
        )
        print(f"成功连接到服务器 {server_ip}")
        
        # 执行健康状态查询命令(Cisco C220常用的健康查询命令,可根据实际情况替换)
        # 比如使用ipmitool查询传感器状态,或者Cisco专用的ucs-cmc-cli命令
        command = "/opt/cisco/bin/ucs-cmc-cli show system status"
        stdin, stdout, stderr = ssh_client.exec_command(command)
        
        # 获取命令输出和错误信息
        output = stdout.read().decode('utf-8')
        error = stderr.read().decode('utf-8')
        
        if output:
            print("=== 服务器健康状态输出 ===")
            print(output)
        if error:
            print("=== 命令执行错误信息 ===")
            print(error)
            
    except Exception as e:
        print(f"连接或执行命令失败: {str(e)}")
        traceback.print_exc()
    finally:
        # 确保关闭SSH连接
        if ssh_client.get_transport() and ssh_client.get_transport().is_active():
            ssh_client.close()
            print("已关闭SSH连接")

# 替换为你的服务器信息
if __name__ == "__main__":
    SERVER_IP = "x.x.x.x"
    USERNAME = "your_username"
    PASSWORD = "your_password"
    check_cisco_server_health(SERVER_IP, USERNAME, PASSWORD)

关键说明与注意事项

  • 命令替换:脚本中使用的/opt/cisco/bin/ucs-cmc-cli show system status是Cisco C220服务器专用的健康查询命令,如果你需要更详细的硬件状态,也可以替换为ipmitool sensor list(需要服务器已安装ipmitool)。
  • 安全建议:生产环境中不建议直接在脚本里明文写密码,推荐使用SSH密钥认证。如果要切换密钥认证,可以把connect方法改为:
    ssh_client.connect(
        hostname=server_ip,
        username=username,
        key_filename="/path/to/your/private_key",
        port=22,
        timeout=10
    )
    
  • 主机密钥安全:AutoAddPolicy()会自动信任未知主机,生产环境建议提前将服务器主机密钥添加到本地known_hosts文件,避免安全风险。
  • 异常处理:脚本中加入了基础的异常捕获和连接关闭逻辑,确保即使出错也不会残留未关闭的SSH连接。

内容的提问来源于stack exchange,提问作者JACK

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 08:58:04