Opencontrail CentOS66编译全过程

来源:互联网 发布:python 迭代 编辑:程序博客网 时间:2024/06/16 00:44

(一)VNC
1 下载如下包 git clone
https://github.com/Juniper/contrail-test
https://github.com/Juniper/contrail-provisioning
https://github.com/Juniper/contrail-fabric-utils
https://github.com/Juniper/contrail-controller
https://github.com/Juniper/contrail-server-manager
https://github.com/Juniper/contrail-packaging
https://github.com/Juniper/contrail-web-controller
https://github.com/Juniper/contrail-sandesh
https://github.com/Juniper/contrail-web-core
https://github.com/Juniper/contrail-generateDS
https://github.com/Juniper/contrail-puppet
https://github.com/Juniper/contrail-web-server-manager
https://github.com/Juniper/contrail-neutron-plugin

https://github.com/Juniper/contrail-packages

https://github.com/Juniper/contrail-build

https://github.com/Juniper/contrail-heat/releases

https://github.com/Juniper/contrail-third-party

https://github.com/Juniper/contrail-nova-vif-driver

https://github.com/Juniper/contrail-distro-third-party

https://github.com/Juniper/contrail-webui-third-party

https://github.com/Juniper/contrail-web-storage


2 升级git (自己做的git rpm)
3 升级repo
4 升级scons (官网下载的)
5
yum install -y scons git python-lxml wget gcc patch make unzip flex bison gcc-c++ openssl-devel autoconf automake vim python-devel python-setuptools protobuf protobuf-devel protobuf-compiler net-snmp-python libtool kernel-devel libpcap-devel boost

7 升级autoconf
8 安装libipfix
yum install -y libpcap-devel
编译libipfix
./configure --prefix=/usr
make
sudo make install

9 安装python工具
easy_install pip
pip install lxml setuptools sphinx

10
yum install boost

11
安装protobuf, protobuf-devel

12
将third_party/package.xml中文件google地址改为192.168.40.234,将下载的第三方依赖包放在那里。

13

analytics依赖于kafka

编译librdkafka

14
编译
scons

15
打包
rpmbuild -bb contrail.spec

(二)工具
16
下载fabric-utils库
mv ../../../../contrail-fabric-utils/ ../../../../third_party/fabric-utils
在/home/z/cpl/ctrl/tools/packaging/common/rpm
make fabric-utils
编译
17
在/home/z/cpl/ctrl/tools/packaging/common/rpm
make contrail-nodemgr
编译contrail-nodemgr

18
在/home/z/cpl/ctrl/tools/packaging/common/rpm
make
编译contrail-setup

make contrail-vrouter-init
make contrail-database
make contrail-openstack-all
make contrail-vrouter-common
make neutron-plugin-contrail

19
未编译contrail-test,因编译也是打成tar包
未编译
${CONTRAIL_HEAT} ${CEILOMETER_PLUGIN}
这两个暂时不需要,只有高于Havana的版本才有

未编译CONTRAIL_NOVA_NETWORKAPI,这个只有Juno版本用




(三)WEB
20 编译contrail-web-core
 下载第三方web软件到web-third-party

 修改rpm中的Makefile,不必fetch package了

 修改web-core的Makefile,也不必去fetch了。



手工fetch所有需要的文件

 在rpm下make contrail-web-core
21 编译contrail-web-controller
在rpm下make contrail-web-controller

(四)server manager
22 这部分是服务器集群管理部分的代码,在contrail的install packages发布版本里目前还没有包括。
但已经打了对应的标签。这部分暂时没编译。

23
汇总的本地打包编译结果
make all

(五)补丁后的工具(24--27可以忽略,使用contrail-third-party-packages来编译)

24
/home/z/cpl/ctrl/tools/packaging/third_party
[root@ck third_party]# rpmbuild -bb python-geventhttpclient.spec

25
[root@ck bottle-0.11.6]# pwd
/home/z/another/ctrl/third_party/bottle-0.11.6

python setup.py bdist_rpm

26
[root@ck ifmap-python-client]# pwd
/home/z/cpl/ctrl/third_party/ifmap-python-client
[root@ck ifmap-python-client]# python setup.py bdist_rpm

27
[root@ck bitarray-0.8.1]# pwd
/home/z/cpl/ctrl/distro/third_party/bitarray-0.8.1
[root@ck bitarray-0.8.1]# python setup.py bdist_rpm

28
/home/z/cpl/ctrl/distro/third_party/xmltodict-0.7.0
python setup.py bdist_rpm --release="0.7.0-1contrail"

27
大部分列入的补丁工具在2.20后已经不再是补丁文件了。
早期的补丁工具很多,如下
https://github.com/Juniper/contrail-packaging/tree/a47aac336774af5e725b89a41c1cd70906e85de2/third_party

目前只有一小部分还在用。已经移动到另一个库contrail-third-party-packages中。


28
第三方软件编译参考
https://github.com/Juniper/contrail-third-party-packages/wiki/Third-party-packages-in-centos

29
wget http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -ivh epel-release-6-8.noarch.rpm
yum install mock
make all





0 0
原创粉丝点击