分享

OpenStack打包方法总结

徐超 发表于 2015-4-28 22:46:27 [显示全部楼层] 只看大图 回帖奖励 阅读模式 关闭右栏 3 39680
本帖最后由 徐超 于 2015-4-28 23:30 编辑
问题导读
1、openstack打包有哪些方法?
2、你怎么打包的?






前提

安装一台CentOS-7-x86_64-Minimal-1503-01.iso最小版的虚拟机,什么软件都不要安装,能上外网就行。

第一种方法

1、配置缓存
  1. # cat /etc/yum.conf
  2. [main]
  3. cachedir=/var/cache/yum/$basearch/$releasever
  4. keepcache=1     #设置为1,启用缓存
复制代码


2、安装源
  1. yum install -y http://mirrors.zju.edu.cn/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
  2. yum install -y https://repos.fedorapeople.org/repos/openstack/openstack-juno/rdo-release-juno-1.noarch.rpm
复制代码


3、下载,并缓存OpenStack包

这里的yum install安装命令,是根据openstack官网安装文档来的。
这里,为了稍微自动化些,我把它写成了Shell脚本文件,这样就不需要手动一条条命令copy、回车执行。
  1. #!/bin/sh
  2. yum install -y createrepo   #这是用来打包用的,生成repodata文件
  3. yum install -y ntp
  4. yum install -y yum-plugin-priorities
  5. yum install -y openstack-selinux
  6. yum install -y mariadb mariadb-server MySQL-python
  7. yum install -y rabbitmq-server
  8. yum install -y openstack-keystone python-keystoneclient
  9. yum -y install openstack-glance python-glanceclient
  10. yum install -y openstack-nova-api openstack-nova-cert openstack-novaconductor \
  11. openstack-nova-console openstack-nova-novncproxy openstack-novascheduler \
  12. python-novaclient
  13. yum install -y openstack-nova-compute sysfsutils
  14. yum install -y openstack-neutron openstack-neutron-ml2 python-neutronclient \
  15. which
  16. yum install -y openstack-neutron openstack-neutron-ml2 openstack-neutronopenvswitch
  17. yum install -y openstack-neutron-ml2 openstack-neutron-openvswitch
  18. yum install -y openstack-nova-network openstack-nova-api
  19. yum install -y openstack-dashboard httpd mod_wsgi memcached pythonmemcached
  20. yum install -y openstack-cinder targetcli python-oslo-db MySQL-python
  21. yum install -y openstack-swift-proxy python-swiftclient python-keystoneauth-token \
  22. python-keystonemiddleware memcached
  23. yum install -y xfsprogs rsync
  24. yum install -y openstack-swift-account openstack-swift-container \
  25. openstack-swift-object
  26. yum install -y openstack-heat-api openstack-heat-api-cfn openstack-heatengine \
  27. python-heatclient
  28. yum install -y mongodb-server mongodb
  29. yum install -y openstack-ceilometer-api openstack-ceilometer-collector \
  30. openstack-ceilometer-notification openstack-ceilometer-central \
  31. openstack-ceilometer-alarm \
  32. python-ceilometerclient
  33. yum install -y openstack-ceilometer-compute python-ceilometerclient pythonpecan
  34. yum install -y openstack-trove python-troveclient
  35. yum install -y openstack-sahara python-saharaclient
复制代码


执行脚本
  1. # chmod +x openstack.sh && ./openstack.sh
复制代码



4、这里,我们将/var/cache/yum/x86_64/7目录下的openstack-juno包文件夹,mv到/root/juno目录中。
  1. # cd /var/cache/yum/x86_64/7
  2. # ls
  3. base  epel  extras  openstack-juno  timedhosts  timedhosts.txt  updates
  4. # mv ./openstack-juno /root
复制代码



5、createrepo打包
  1. # pwd
  2. /root/openstack-juno
  3. # createrepo packages/
  4. Spawning worker 0 with 89 pkgs
  5. Workers Finished
  6. Saving Primary metadata
  7. Saving file lists metadata
  8. Saving other metadata
  9. Generating sqlite DBs
  10. Sqlite DBs complete
复制代码


第一种方法,你得手动解决很多依赖关系。有点笨拙。

6、使用openstack包
我们可以以rdo、手动、devstack、或其它部署方式,来灵活、方便的使用,我们自己做的本地openstack包,明显,安装非常快!


第二种方法
用wget命令,来一劳永逸的下载包,有可能仍需要解决某些依赖关系。
如下:
  1. # wget -c -r -np -k -L -p https://repos.fedorapeople.org/repos/openstack/openstack-juno/epel-7/
复制代码




第三种方法

接着第一种方法的第2步之后,通过rdo在线安装来缓存包。
  1. yum install -y openstack-packstack   # 安装packstack包
  2. packstack --gen-answer-file /root/answer.txt   # 生成一个answer-file文件
复制代码
RDO.png

博客



已有(3)人评论

跳转到指定楼层
道法自然 发表于 2015-4-30 14:06:27
回复

使用道具 举报

marsaber 发表于 2015-5-6 19:10:16
回复

使用道具 举报

chistpest 发表于 2015-11-23 11:12:20
谢谢搂住,学习了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条