热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

关于openstack镜像制作的经验分享

折腾了好几天,把自定义ubuntu、windowsxp镜像网络问题解决了:kvm启动镜像没法联网,glance上传到云后,创建出的实例却可以。一、过程之前制作CentOS镜像的时候没有遇到这个问题,参考文档:http://os.51cto.com/art/201202/314888.htm制作ubuntu、windo

    折腾了好几天,把自定义ubuntu、windows xp镜像网络问题解决了:kvm启动镜像没法联网,glance上传到云后,创建出的实例却可以。

 

 一、过程

    之前制作CentOS镜像的时候没有遇到这个问题,参考文档:http://os.51cto.com/art/201202/314888.htm

制作ubuntu、windowns xp镜像参考文档:

(1)http://www.vpsee.com/2011/06/create-ubuntu-kvm-image-for-openstack-nova/ 

(2)http://quake.iteye.com/blog/1266277

(3)http://blog.csdn.net/jb80400812/article/details/7000092

(4)http://www.linuxde.net/2011/11/2050.html

    大概的思路就4步:

1、创建镜像文件

2、用nova-compute自带的kvm,启动.iso文件,用vncviewer完成OS的安装过程

3、OS安装完毕,停止虚拟机,kvm重启镜像,安装必要的软件

4、后续:上传镜像到云中

 

二、centos.img制作:

(1)kvm-img create -f raw centos.img 10G

(2)kvm -m 512 -cdrom CentOS-6.3-x86_64-minimal.iso \
-drive file=centos.img -boot d -net nic -net tap -nographic -vnc :0

(3)kvm -m 512 -drive file=centos.img -boot c -net nic -net tap \
-nographic -vnc :0

(4)glance发布到云中
glance add name="CentOS 6.3 x86_64" is_public=true container_format=ovf \
disk_format=raw

 

三、ubuntu.img制作:

(1)kvm-img create -f raw ubuntu.img 10G
(2)kvm -m 512 -cdrom ubuntu-11.10-server-amd64.iso \
-drive file=ubuntu.img -boot d -nographic -vnc :0
(3)kvm -m 512 -drive file=ubuntu.img -boot c -net nic -net tap

-nographic -vnc :0

(4)glance发布到云中
glance add name="Ubuntu 12.04 server" is_public=true container_format=ovf \
disk_format=raw

 

四、windowsxp.img制作

(1)kvm-img create -f raw windows_xp.img 10G 或者硬盘格式用qcow2

(2)kvm -m 1024 -cdrom windowsxp.iso -drive file=windowsxp.img,if=virtio \
-fda virtio-win-1.1.30.vfd -boot d -nographic -vnc :0

(3)kvm -m 1024 -drive file=windows_xp.img,if=virtio -cdrom virtio-win-0.1-30.iso \

-net nic,model=virtio -net tap -boot c -nographic -vnc :0
(4)glance发布到云中

glance add name="windows xp" is_public=true container_format=ovf \
disk_format=raw

 

五、收获

1、在镜像制作的(2),须加上-net nic -net tap才能建立镜像到kvm网桥virbr0的映射,网络才通。之前制作镜像的时候只有centos.img加了,故能联网,而其他几个镜像的网络无论是dhcp,还是手动设置到kvm网段,都不通。参考kvm命令使用:http://8366.iteye.com/blog/1000575,http://chapter09.sinaapp.com/?p=375

2、在单节点的openstack中,由ifconfig可以看到网络的分布情况——两个网桥br100,virbr0:其中br100是
实例的网桥,每创建一个实例都会有一个虚拟网卡vnet*生成,实例的内网Ip即floating ip,和vnet*对应,与br100在同一网段;而virbr0是kvm的网桥,用kvm启动的虚拟机(镜像)会自动生成tap*虚拟网卡,与镜像中的eth*对应,没有建立对应关系则网络不通,镜像自动获取的ip与vribr0在同一网段。另外,br100,virbro不在同一网段,最终都与eth0物理网卡相连。

3、不要机械的去copy某些命令,要能够理解,不然要多走很多弯路的;另一方面,需要加强理论的学习,唯有源头活水来,源头呢?直接去摸索,没有任何的基础可言,遇到问题没思路,要走的弯路自然多。

4、解决问题思路:不浮躁,切忌机械照搬,多动脑,不轻易发问。

(1)仔细查看错误,什么问题、是什么导致,分析错误原因

(2)查看log

(3)google,查看知名博客、openstack理论知识(PDF文档)

(4)QQ群询问

(5)总结

 

 


推荐阅读
  • 如何在Mozilla Firefox中调整GIF动画的循环次数
    本文介绍了如何通过调整Mozilla Firefox的高级设置来控制GIF动画的播放次数,帮助用户根据个人喜好自定义浏览体验。 ... [详细]
  • 本文探讨了Linux环境下线程私有数据(Thread-Specific Data, TSD)的概念及其重要性,介绍了如何通过TSD技术避免多线程间全局变量冲突的问题,并提供了具体的实现方法和示例代码。 ... [详细]
  • 汇总了2023年7月7日最新的网络安全新闻和技术更新,包括最新的漏洞披露、工具发布及安全事件。 ... [详细]
  • 随着Linux操作系统的广泛使用,确保用户账户及系统安全变得尤为重要。用户密码的复杂性直接关系到系统的整体安全性。本文将详细介绍如何在CentOS服务器上自定义密码规则,以增强系统的安全性。 ... [详细]
  • 本文详细介绍了如何在 Ubuntu 14.04 系统上搭建仅使用 CPU 的 Caffe 深度学习框架,包括环境准备、依赖安装及编译过程。 ... [详细]
  • 利用 Calcurse 在 Linux 终端高效管理日程与任务
    对于喜爱使用 Linux 终端进行日常操作的系统管理员来说,Calcurse 提供了一种强大的方式来管理日程安排、待办事项及会议。本文将详细介绍如何在 Linux 上安装和使用 Calcurse,帮助用户更有效地组织工作。 ... [详细]
  • 在使用 PyInstaller 将 Python 应用程序打包成独立的可执行文件时,若项目中包含动态加载的库或插件,需要正确配置 --hidden-import 和 --add-binary 参数,以确保所有依赖项均能被正确识别和打包。 ... [详细]
  • 【MySQL】frm文件解析
    官网说明:http:dev.mysql.comdocinternalsenfrm-file-format.htmlfrm是MySQL表结构定义文件,通常frm文件是不会损坏的,但是如果 ... [详细]
  • 本文回顾了作者在求职阿里和腾讯实习生过程中,从最初的迷茫到最后成功获得Offer的心路历程。文中不仅分享了个人的面试经历,还提供了宝贵的面试准备建议和技巧。 ... [详细]
  • Ubuntu系统下的GIF动画录制解决方案
    在撰写文章或教程时,GIF动态图能够有效地传达信息。对于Windows用户而言,ScreenToGif是一款非常实用的工具。而在Ubuntu系统中,用户同样拥有多种选择来创建GIF动画,本文将重点介绍两款录屏工具——Byzanz和Peek。 ... [详细]
  • H5技术实现经典游戏《贪吃蛇》
    本文将分享一个使用HTML5技术实现的经典小游戏——《贪吃蛇》。通过H5技术,我们将探讨如何构建这款游戏的两种主要玩法:积分闯关和无尽模式。 ... [详细]
  • 本文详细介绍了在 CentOS 系统中如何创建和管理 SWAP 分区,包括临时创建交换文件、永久性增加交换空间的方法,以及如何手动释放内存缓存。 ... [详细]
  • 从CodeIgniter中提取图像处理组件
    本指南旨在帮助开发者在未使用CodeIgniter框架的情况下,如何独立使用其强大的图像处理功能,包括图像尺寸调整、创建缩略图、裁剪、旋转及添加水印等。 ... [详细]
  • 本文介绍了Linux操作系统的核心组成部分——内核及其版本分类,以及市面上常见的几种Linux发行版,旨在为初学者提供一个清晰的学习路径。 ... [详细]
  • HTML前端开发:UINavigationController与页面间数据传递详解
    本文详细介绍了如何在HTML前端开发中利用UINavigationController进行页面管理和数据传递,适合初学者和有一定基础的开发者学习。 ... [详细]
author-avatar
o0大大脸么么小小鱼0o
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有