现在的位置: 首页 > 综合 > 正文

Fedora 16上源码建立pydev + eclipse的OpenStack开发环境笔记草稿 ( by quqi99 )

2013年05月10日 ⁄ 综合 ⁄ 共 4802字 ⁄ 字号 评论关闭

                                                                 Fedora 16上源码建立pydev + eclipse的OpenStack开发环境笔记草稿  ( by quqi99 )

作者:张华  发表于:2012-3-30
版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明

( http://blog.csdn.net/quqi99 )

        

1网络桥接配置

首先,fedora16对网卡使用了新的命名方式,第一块网卡不叫eth0,我的T420上叫em1。它为什么做,有兴趣可参考文献:

Fedora15的新的网卡命名方式http://www.20ju.com/content/V168885.htm

总之,我不喜欢这种叫法,现在将网卡名称从em1改回eth0,具体做法请参考文献,(修改fedora16的网络接口名,使其变回eth0http://www.bitbi.biz/fedora-2/%E4%BF%AE%E6%94%B9fedora-16-%E7%9A%84%E7%BD%91%E7%BB%9C%E6%8E%A5%E5%8F%A3%E5%90%8D%EF%BC%8C%E4%BD%BF%E5%85%B6%E5%8F%98%E5%9B%9E-eth0-2685

最后配置桥接(参考文献:http://blog.bodhizazen.net/linux/fedora-15-virt-manager-bridged-networking/):

sudoyuminstallbridge-utils

sudovi/etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0

TYPE=Ethernet

#changethehardwareaddresstomatchthehardwareaddressyourNICuses

HWADDR=00:21:CC:60:D6:1A

ONBOOT=yes

#BOOTPROTO=dhcp

#MODE=Managed

BRIDGE=br100

NM_CONTROLLED=no

sudovi/etc/sysconfig/network-scripts/ifcfg-br100

DEVICE=br100

TYPE=Bridge

BOOTPROTO=dhcp

#BOOTPROTO=static

#IPADDR=192.168.99.100

#NETWORK=192.168.99.0

#NETMASK=255.255.255.0

#GATEWAY=192.168.99.1

#DNS1=202.106.195.30

ONBOOT=yes

NM_CONTROLLED=no

最后重启网络服务,sudoservicenetworkrestart需要注意的是,fedora默认使用NetworkManager来管理网卡,而briage不支持NetworkManager,所以需要关闭NetworkManager服务(sudoserviceNetworkManagerstop&sudoserviceNetworkManager
disable)
。不然会报下列错(tail-f/var/log/message)

http://forums.fedoraforum.org/showthread.php?t=262356

Bringingupinterfaceeth0:Error:Connectionactivationfailed:DevicenotmanagedbyNetworkManagerorunavailable
[FAILED]
RTNETLINK
answers:Fileexists

不过,我没有使用上述方法,因为你关闭NetworkManager服务的话,你的无线网卡也不能用NetworkManager管理了,所以我在上述的配置中加了NM_CONTROLLED=no实现了同样的目的。

我机器的其他条件是:

1)你得确保安装了libvirtd(yuminstalllibvirtd&servicelibvirtdstart),可用virsh-cqemu:///systemlist命令测试

2)安装gcc,这个在安装pythonmodules时会用到

3mysqlroot用户应该有密码,可用echo"showdatabases"|mysql-uroot-ppassword

4)在命令行中先切换到root用户,然后再启动eclipse

2通过git下载源码

1) 安装javaeclipse,略

2)为eclipse安装pydev插件(help->installnewsoftwae...,http://pydev.org/updates),然后再"window->preferences":菜单中的Pydev->InterpreterPython选项卡中点击AutoConfig按钮配置python

3) eclipse安装egit插件(http://download.eclipse.org/egit/updates)

4)eclipse安装django插件:

installdjangopluginforpython,firstdownloadhttp://www.djangoproject.com/download/1.3.1/tarball/

sudopythonsetup.pyinstallexportPATH=/usr/lib/python2.7/site-packages/django/bin:$PATH

django-admin.pyversion

django-admin.pystartprojectmyFirstDjango

cdmyFirstDjango

sudochmod777*

./manage.pyrunserver

http://127.0.0.1:8000/

5)eclipse中通过git插件clone下列组件的master分支(cloneagitrepository),注意,有的组件会下载失败,只需要将https协议换成git协议即可。我的代码下载在/bak/openstack目录下。

#computeservice

NOVA_REPO=https://github.com/openstack/nova.git

#storageservice

SWIFT_REPO=https://github.com/openstack/swift.git

#imagecatalogservice

GLANCE_REPO=https://github.com/openstack/glance.git

#unifiedauthsystem(managesaccounts/tokens)

KEYSTONE_REPO=https://github.com/openstack/keystone.git

#awebsockets/html5orflashpoweredVNCconsoleforvminstances

NOVNC_REPO=https://github.com/cloudbuilders/noVNC.git

#djangopoweredwebcontrolpanelforopenstack

HORIZON_REPO=https://github.com/openstack/horizon.git

#pythonclientlibrarytonovathathorizon(andothers)use

NOVACLIENT_REPO=https://github.com/openstack/python-novaclient.git

#pythonkeystoneclientlibrarytonovathathorizonuses

KEYSTONECLIENT_REPO=https://github.com/openstack/python-keystoneclient

#quantumservice

QUANTUM_REPO=https://github.com/openstack/quantum

#quantumclient

QUANTUM=https://github.com/openstack/python-quantumclient

#Tempesttestsuite

https://github.com/openstack/tempest.git

#melangeservice

https://github.com/openstack/melange.git

#pythonmelangeclientlibrary

https://github.com/openstack/python-melangeclient.git

#swiftclient

https://github.com/chmouel/python-swiftclient.git

3eclipse中导入工程

1)"GitRepositories"视图上上步clone下来的每一个工程的"WorkingDirector"目录上右键点击选"importprojects"导入工程,再选importasgeneralproject",直接见下图吧。

2)依次做完上步之后,然后可以进入java视图,在每个工程上点右键选"Pydev->setasPydevproject",即使是horizon工程也不例外,设置的是pydevproject,而不是django工程

3安装一些依赖包

  1. install
    python-pip,nowpipisareplacementfor`easy_install`

sudo yumsearchpython-pip

sudo yuminstallpython-pip.noarch

sudo yuminfopython-pip.noarch

  1. sudo yuminstallgcc;

sudo yuminstallpython-devel

sudo yuminstallpython-greenlet

sudo yuminstallMySQL-python

sudo yuminstalleuca2ools

sudo yuminstalldnsmasq

sudo yuminstallscsi-target-utils

  1. install
    MQ

rabbitmqconfiguration

sudoyuminstallrabbitmq-server

sudoservicerabbitmq-serverstart

sudochkconfigrabbitmq-serveron

changetherabbitpasswordsincethedefaultis"guest"

sudorabbitmqctlchange_passwordguestpassword

sudorabbitmqctlstatus

  1. install
    mysql

sudoyuminstallmysql-serverphp-mysql

sudoservicemysqldstart

sudochkconfigmysqldon

mysql-uroot-ppasswordSETPASSWORDFOR'root'@'localhost'=PASSWORD('password');

sudomysql-uroot-ppassword-h127.0.0.1-e"GRANTALLPRIVILEGESON*.*TO'root'@'%'identifiedby'password';"

sudocp/usr/share/mysql/my-small.cnf/etc/my.cnf

sudosed-i

抱歉!评论已关闭.