设为首页 收藏本站
查看: 1377|回复: 0

[Cloudstack] CloudStack学习笔记-源代码构建

[复制链接]

尚未签到

发表于 2015-10-13 13:35:17 | 显示全部楼层 |阅读模式
CloudStack是基于Java语言编写的Apache顶级开源项目,这是Java程序员莫大的福音。本文介绍最新版本CloudStack-4.1.1的源代码构建过程。
管理节点所支持的操作系统

  • CentOS 6.3
  • Red Hat Enterprise Linux 6.3
  • Ubuntu 12.04 LTS

支持的Hypervisor家族

  • CentOS 6.2 with KVM
  • Red Hat Enterprise Linux 6.2 with KVM
  • XenServer 6.0.2 (with Hotfix)
  • XenServer 6.1
  • VMware vSphere/Vcenter 5.1

支持的浏览器

  • Internet Explorer 8
  • Firefox 10+
  • Chrome
  • Safari

支持的外部设备

  • F5: 10.1.10 (Build 3341.1084)
  • SRX model srx100b: Must be 10.3 or higher -10.4R7.5
  • Netscaler VPX 9.3, 10.0(Build 54.7.nc and 54.161)
  • Netscaler MPX 10
  • Netscaler SDX 10

代码下载

  • http://cloudstack.apache.org/downloads.html
  • git clonehttps://git-wip-us.apache.org/repos/asf/cloudstack.git

构建必要条件

  • Maven (version 3)
  • Java (OpenJDK 1.6 or Java 7/OpenJDK 1.7)
  • Apache Web Services Common Utilities (ws-commons-util)
  • MySQL
  • MySQLdb (provides Python database API)
  • Tomcat 6 (not 6.0.35)
  • genisoimage
  • rpmbuild or dpkg-dev

设置用户环境变量修改~/.bashrc和~/.bash_profileexport M2_HOME=/home/lishuyi/apps/apache-maven-3.0.4export JAVA_HOME=/usr/lib/jvm/jre-1.6.0-openjdk.x86_64exportCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarexport CATALINA_HOME=/usr/share/tomcat6exportCLOUDSTACK_HOME=/home/lishuyi/apps/apache-cloudstack-4.1.1-srcPATH=$PATH:$HOME/bin:$JAVA_HOME/bin:$M2_HOME/binexport PATH
安装编译环境必备工具及软件切换至root用户# yum groupinstall "Development Tools"# yum install java-1.6.0-openjdk-devel.x86_64 genisoimagemysql mysql-server ws-commons-util MySQL-python tomcat6createrepo
构建源代码切换为应用用户将Release包解压缩到用户当前目录的apps目录下,以当前用户名为lishuyi为例:$ mv/home/lishuyi/Download/apache-cloudstack-4.1.1.src.tar.bz2 /home/lishuyi/apps$ cd /home/lishuyi/apps$ tar -jxvf apache-cloudstack-4.1.1.src.tar.bz2$ cd $CLOUDSTACK_HOME/packaging/centos63$ ./package.sh
如果一切顺利,则在$CLOUDSTACK_HOME/dist/rpmbuild/RPMS/x86_64的目录下为生成如下六个安装包:cloudstack-agent-4.1.1-0.el6.x86_64.rpmcloudstack-awsapi-4.1.1-0.el6.x86_64.rpmcloudstack-cli-4.1.1-0.el6.x86_64.rpmcloudstack-common-4.1.1-0.el6.x86_64.rpmcloudstack-management-4.1.1-0.el6.x86_64.rpmcloudstack-usage-4.1.1-0.el6.x86_64.rpm
特别说明由于CloudStack目前是基于Maven构建,因此除了源代码和Maven的构建文件外,所有的依赖包都需要到网络下载,因此请注意以下三点:

  • 保证源代码构建服务器的网络连通性,尤其是WiFi情况下,经常出现构建失败,可多尝试几次./package.sh碰碰运气
  • 如果构建由于缺失依赖包导致失败,可检查Maven主仓储库是否维护了该依赖包,如果没有可以在第三方仓储库进行查找,并修改Maven的相关配置
  • 如果构建由于缺失依赖包导致失败,而且连第三方仓储库也没有维护,那么必须到浩瀚的互联网进行Download到本地,并且手工安装到Maven主仓储库,这里以jasypt为例说明安装命令:
$ mvn install:install-file -DgroupId=org.jasypt-DartifactId=jasypt -Dversion=1.8 -Dpackaging=jar-Dfile=/home/lishuyi/Download/jasypt-1.8.jar
搭建YUM仓库Apache服务器(root用户)
#vim /etc/httpd/conf/httpd.conf
约在356行,注释UserDir disable,取消UserDir public_html注释,并修改为UserDir/var/www/users/
将约在371行开始,取消Directory注释,如下:
<Directory /var/www/users/*>
   AllowOverride FileInfo AuthConfig Limit
    OptionsMultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
   <Limit GET POST OPTIONS>
       Order allow,deny
       Allow from all
   </Limit>
   <LimitExcept GET POST OPTIONS>
       Order deny,allow
       Deny from all
   </LimitExcept>
</Directory>
重启Apache
# service httpd restart
详细参考
http://pandaql.blog.iyunv.com/465488/327664
http://httpd.apache.org/docs/2.2/urlmapping.html

创建YUM本地仓库(root用户)# mkdir -p /var/www/users/cloudstack/tmp/repo# cp$CLOUDSTACK_HOME/dist/rpmbuild/RPMS/x86_64/*rpm /var/www/users/cloudstack/tmp/repo# createrepo /var/www/users/cloudstack/tmp/repo/
# touch /etc/yum.repos.d/cloudstack.repo# vim /etc/yum.repos.d/cloudstack.repo[apache-cloudstack]name=Apache CloudStackbaseurl=http://mgmt1.cloudstack.org/~cloudstack/tmp/repo/enabled=1gpgcheck=0
重启Apache
# service httpd restart
测试一下http://mgmt1.cloudstack.org/~cloudstack/tmp/repo/能否打开
刷新验证一下仓库
# yum clean all
# yum list
安装非开源组件CloudStack支持很多商业组件,例如VMware, NetApp, F5, NetScaler,SRX。这些组件由于license问题并没有打包到CloudStack发布包中,必须自己下载以后再进行安装,详细安装过程可参考http://cloudstack.apache.org/docs/en-US/Apache_CloudStack/4.1.1/html/Installation_Guide/sect-source-nonoss.html             版权声明:本文为博主原创文章,未经博主允许不得转载。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-126331-1-1.html 上篇帖子: cloudstack packag error: Macro %_ver has empty body 下篇帖子: CloudStack学习笔记-安装AllInOne
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表