“仿OpenStack开发云计算管理软件”第一周实验报告
一、开发环境搭建
-
Virtualenv:创建独立的 Python 开发环境
python-libvirt 是 Python 版本的 Libvirt API。 Libvirt API 是一套用于多种虚拟化平台统一管理的接口 1、安装虚拟化组件 2、启动 libvirt-bin 服务 3、查看 libvirt-bin 服务状态
sudo apt-get install python-virtualenv sudo apt-get install qemu libvirt-bin python-libvirt sudo service libvirt-bin start sudo service libvirt-bin status sudo virsh list
1
2
3
4
5 -
MySQL 相关组件
sudo apt-get install mysql-server
1 -
创建必要的代码目录
根据需求创建Flask框架架构
-
提交代码
熟悉git相关操作
-
安装 Python 模块
提前安装所需模块,避免开发中的各种麻烦以致影响开发进度
-
添加 .gitignore
提交代码时排除无需提交venv 目录包含所有依赖的软件包
二、最小的可运行代码
- loucloud/config.py 初始化Flask 应用的配置信息
- loucloud/extension.py 初始化flask-sqlalchmey,flask-login及flask-cache三个插件
- loucloud/app.py loucloud/init.py 用于部署Flask 应用; loucloud/init.py将app创建函数提供出来,供外部引用。
- loucloud/user/ user模块将用来实现用户管理功能,不是本周的任务,本周只实现一个简单的测试页面即可。
- manage.py 使用 Flask-Script 实现基本的运行命令。
三、 运行代码
cd /home/shiyanlou/Code/shiyanlou_cs354
source venv/bin/activate
python manage.py run
2
3
之后使用浏览器访问http://localhost:5000 即可
四、提交代码
-
提交最终代码
cd /home/shiyanlou/Code/shiyanlou_cs354 # 查看当前文件修改的列表 git status # commit git add * git commit -m 'first commit of loucloud' # push到git.shiyanlou.com远程仓库 git push origin master
1
2
3
4
5
6
7
8 -
版本做个标记v0.1
cd /home/shiyanlou/Code/shiyanlou_cs354 git tag git tag -a v0.1 -m "LouCloud v0.1" git push origin –-tags
1
2
3
4
五、遇到问题
-
Flask 框架问题
由于没提前学习基础导致Flask框架中的部分代码实现的功能看不懂。(自身原因)
-
python相关模板安装问题 在安装paramiko时第一次出现未找到pyCrypto的问题,安装后出现了新问题,具体的忘了(也忘记截图了,好像有个东西没找到或者是null) 第二次出现未找到ecdsa的问题(这次未出现“未找到pyCrypto的问题”),安装后解决问题。
六、总结
熟悉了git提交等基本命令、了解了用于创建独立的 Python 开发环境的Virtualenv,虽然初窥了Flask框架,但仍需要学习实验楼的Flask框架基础课程。 Liux中安装Python模板,可先将模板名称统一放置一txt文件(以requirement.txt为例)中,每个模板名称独占一行。之后运行
pip install -r requirement.txt
第二页附pyCrypto+paramiko+ecdsa安装 Python中使用SSH需要用到OpenSSH,而OpenSSH依赖于paramiko模块,而paramiko模块又依赖于pycrypto模块,因此要在Python中使用SSH,则需要先安装模块顺序是:pycrypto -> ecdsa -> paramiko
1、安装pyCrypto
安装这个比较麻烦,需要本地编译,要装vs或gcc还有一堆配置,还不一定能编译成功。(网上能搜到安装步骤) 建议直接下载已编译版: http://www.voidspace.org.uk/python/modules.shtml#pycrypto 直接下载并安装既可。 (注:crypto有java和C++版)
2、安装ecdsa
看很多博客没有提到这个库,但我执行paramiko时,提示找不到ecdsa模块。 下载:https://pypi.python.org/pypi/ecdsa/0.9 ,解压到一个目录,目录中有一个setup.py。 安装比较简单,windows下直接在刚才解压后的目录执行:python setup.py install
3.安装paramiko
与安装ecdsa类型,只是打开下载页面很慢。。。 下载: https://github.com/paramiko/paramiko#, 安装步骤同ecdsa
注
1、所有另外安装的第三方库,如果不特指定安装后库目录的话,将默认保存到 %PYTHON_HOME%Libsite-packages下。 2、python大小写敏感,对模块名也是。 3、Crypto可以提供常见的加解密算法,如:RSA、RC4、DSA、DES
参考资料
除特别注明外,本站所有文章均为 windcoder 原创,转载请注明出处来自: fang-openstack-kai-fa-yun-ji-suan-guan-li-ruan-jian-di-yi-zhou-shi-yan-bao-gao

加油。好好折腾,弄点成绩出来,推广;挣钱了,休息。再思考,再一次折腾。
回复 @wys.me: 哈哈,谢谢