基于devstack和pycharm的openstack DEBUG环境安装

综述:本文使用官方devstack工具安装最新的openstack环境,借助pycharm工具来查看openstack源码,并使用pycharm工具进行远程调试。

 


 

主要内容(ubuntu系统):


 

1.openstack环境安装(devstack工具)

  借助官方的devstack工具安装openstack环境是比较简单的,devstack使用指南网址:https://docs.openstack.org/developer/devstack/


 

2.配置pycharm远程调试源码

2.1 同步远程代码

选择如下图中的Tools->Deployment->Configure,配置远程同步文件:

 

具体配置如下:

设置ip及用户名密码,建立连接的信息;

设置本地和远程文件的映射关系,如图将/opt/venv/nova/lib/python2.7/site-packages映射到本地/home/hrp/openstack;

点击Download from nova_controller,将远端代码同步到本地;

2.2 配置debug环境

点击pycharm中:Run->Edit Configurations,出现如下配置窗口,主要填写好本地机器的ip,和本地机器的监听端口。

将如下语句:

import pydevd
pydevd.settrace('192.168.72.184', port=12345, stdoutToServer=True, stderrToServer=True) #ip和port根据上文设置修改

嵌入到需要debug的源码处,如下:

def main():
    import pydevd
    pydevd.settrace('192.168.72.184', port=12345, stdoutToServer=True, stderrToServer=True)
    config.parse_args(sys.argv)
    logging.setup(CONF, "nova")

之后。将本地修改后的代码同步到远端机器,操作如下:

右键插入断点代码的py文件,执行Upload操作。这样就完成了向远程代码中添加断点信息。

之后,我们在本地pycharm中添加好断点,并执行Run->Debug后,便可以看到控制台打印如下信息:

Starting debug server at port 12345
Use the following code to connect to the debugger:
import pydevd
pydevd.settrace('192.168.72.184', port=12345, stdoutToServer=True, stderrToServer=True)
Waiting for process connection...

表明pycahrm在等待远程机器运行到插入debug代码处,触发远程debug的连接。

 

posted on 2018-02-01 10:26  carrot_hrp  阅读(799)  评论(0编辑  收藏  举报

导航