参考链接:

  1. https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/OpenStack/page/Creating+qcow2+CentOS+Image+for+OpenStack
  2. http://docs.openstack.org/image-guide/content/centos-image.html
  3. http://www.it165.net/os/html/201309/6121.html
  4. https://answers.launchpad.net/nova/+question/226471
  5. http://ssms.cs2c.com.cn/otrs/pc.pl?Action=PublicFAQZoom;ItemID=10224;ZoomBackLink=QWN0aW9uPVB1YmxpY0ZBUUV4cGxvcmVyO0NhdGVnb3J5SUQ9MTQ7U29ydEJ5PVRpdGxlO09yZGVy%0APVVwO1N0YXJ0SGl0PTI2MDE%3D%0A;

使用ISO镜像制作适用于OpenStack的云镜像

资源:
- ISO镜像文件,此处选择RedHat Enterprise Linux 5.5 x86_64 ISO镜像文件;
- 支持qemu-kvm的Linux实体机;

注意:
经验证,RHEL5.5不支持在线对根目录扩容,需要对根目录进行在线扩容的请谨慎选择。
(如果有解决方法,欢迎留言。)

Linux实体机:

# qemu-img create -f qcow2 rhel-5.5-x86_64.qcow2 10G
# kvm -m 2048 -cdrom rhel-server-5.5-x86_64-dvd.iso -drive file=rhel-5.5-x86_64.qcow2,if=virtio,index=0 -boot d -net nic -net user
# kvm -m 2048 -drive file=rhel-5.5-x86_64.qcow2,if=virtio,index=0 -boot d -net nic -net user
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

此处,操作系统的安装与实体机安装一样,安装完成后会有一个1G左右的rhel-5.5-x86_64.qcow2文件。使用Virtual Machine Manager虚拟机管理工具从QCOW2文件启动虚拟机。

虚拟机:

# yum update -y
# chkconfig sshd on
# vim /etc/ssh/sshd_config
--- #PermitEmptyPasswords no
+++ PasswordAuthentication yes
--- #PermitRootLogin yes
+++ PermitRootLogin yes
# yum install acpid
# chkconfig acpid on
# yum install cloud-init
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

/etc/cloud/cloud-init.conf可能需要进行适当修改。

  • 为保证实例能够访问neutron metadata服务,需要禁用zeroconf
# echo "NOZEROCONF=yes" >> /etc/sysconfig/network
  • 1
  • 1
  • 开启磁盘热插拔,支持在线挂载云硬盘
#echo -e "#! /bin/sh\n\n/sbin/modinfo -F filename acpiphp > /dev/null 2>&1\n\nif [ $? -eq 0 ]; then\n     /sbin/modprobe acpiphp\nfi" >> /etc/sysconfig/modules/acpiphp.modules
  • 1
  • 1
  • 开启nova console log支持
# vim /boot/grub/menu.lst

+++ serial --unit=0 --speed=115200
+++ terminal --timeout=10 console serial
--- kernel /vmlinuz-2.6.18-194.el5 ro root=/dev/VolGroup00/LogVol00
+++ kernel /vmlinuz-2.6.18-194.el5 ro root=/dev/VolGroup00/LogVol00 console=tty0 console=ttyS0,115200n8
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 制作完成,关闭虚拟机
#/sbin/shutdown -h now
  • 1
  • 1

Linux实体机:

  • 清理虚拟机登陆及日志信息等
# virt-sysprep -d rhel5.5
  • 1
  • 1
  • 压缩镜像文件
# qemu-img convert -c -O qcow2 /root/rhel-5.5-x86_64.qcow2 /root/rhel-5.5-x86_64-compressed.qcow2
  • 1
  • 1
  • 上传镜像
# glance image-create --name "RedHat Enterprise Linux 5.5 x86_64" --disk-format qcow2 --container-format bare --is-public True --file  /root/rhel-5.5-x86_64-compressed.qcow2 --progress
  • 1
  • 1

Q&A

a. Cannot see the attached volume in the instance:

For RHEL 5.x, acpiphp is not loaded.

# modprobe acpiphp
# reboot
  • 1
  • 2
  • 1
  • 2

***Bootable kernel module hotplugin and acpiphp should be added.

openStack镜像制作的更多相关文章

  1. OpenStack 镜像制作

    Contents [hide] 1 Centos6.5 img制作 1.1 基础环境安装 1.2 下载或从本地上传系统镜像 1.3 启动服务 1.4 建立镜像文件 1.5 通过virt-install ...

  2. OpenStack镜像制作-CentOS

    云平台中镜像还是很重要的,提供各种定制化的镜像使得用户体验更好. 最开始玩OpenStack的时候用的是安装文档中提到的cirros,其密码cubswin:) 刚开始感觉很怪,现在已经可以随手打出.p ...

  3. openstack镜像制作思路、指导及问题总结

    一.思路就4步:1.创建镜像文件2.用nova-compute自带的kvm,启动.iso文件,用vncviewer完成OS的安装过程3.OS安装完毕,停止虚拟机,kvm重启镜像,安装必要的软件4.后续 ...

  4. openStack 镜像制作,镜像裁剪一般步骤

    镜像制作一般裁剪步骤 1, linux系统安装CentOs/RHEL Desktop桌面系统,分区划分但分区/挂载点.设置Selinux=disabled关闭iptables安装cloud-init[ ...

  5. OpenStack 镜像制作之cloud-init

    Contents [hide] 1 背景 2 密钥登录 2.1 密钥登录的原理 2.1.1 openstack的私钥 2.1.2 密码注入 = 2.1.3 实际遇到的情况 2.1.4 解决办法 背景 ...

  6. 云计算---openstack镜像制作

    一:本地部署KVM 1.安装KVM 1.1安装须知 查看CPU是否支持kvm完全虚拟机. [root@LINUX ~]# grep "flags" /proc/cpuinfofla ...

  7. 云计算---openstack镜像制作详解

    一:本地部署KVM 1.安装KVM 1.1安装须知 查看CPU是否支持kvm完全虚拟机. [root@LINUX ~]# grep "flags" /proc/cpuinfofla ...

  8. OpenStack镜像制作笔记 --以windows8.1-amd64为例

    by hyc 目录 1.下载win8_64位的iso文件 2.下载对应电脑的vnc 3.下载Xshell软件 4.连接成功后,在Xshell下安装软件包 5.下载FileZilla Client软件 ...

  9. openstack镜像制作centos7

    1,找一台宿主机安装kvm并检查是否支持虚拟化,这里我用的是vmware来做宿主机 egrep '(vmx|svm)' /proc/cpuinfo 然后安装kvm: yum install epel- ...

随机推荐

  1. 修改input的type属性

    在ff和chrome中是可以直接修改input的type属性的,但是在ie下面是不允许的. 用jquery 的attr方法去修改,在jquery1.8.3版本会直接抛出异常,但在1.9及以上版本就不再 ...

  2. 关于Let和var声明变量的区别

    Let是ES6中添加进来的一个关键字,用于声明变量,其法与var声明变量相同,不同点在于其作用域(块级). 举例可以看出其具体差别 for(var i=0;i<5;i++){ console.l ...

  3. swiper中提供的动画效果

    目前就只有这些,大家也可以尝试自己写一些想要的效果.动手试试,才能清楚每个效果具体是怎么回事~ bounce:弹跳两下出来flash:闪烁两下pulse:脉冲形式出来rubberBand:橡皮圈形式弹 ...

  4. 第三个Sprint冲刺第五天

    讨论地点:宿舍 讨论成员:邵家文.李新.朱浩龙.陈俊金 讨论问题:继续昨天的工作

  5. Welcome to LED Control Wiki

    About this project This project was developed after I had to find out that controlling my RGB ambien ...

  6. 全面理解面向对象的 JavaScript (share)

     以下分享自:  http://www.ibm.com/developerworks/cn/web/1304_zengyz_jsoo/   简介: JavaScript 函数式脚本语言特性以及其看似随 ...

  7. 网页闯关游戏(riddle webgame)--游戏玩法和整体介绍

    前言: 记得上大学那会, 有位传说中的大牛, 写了一个网页闯关类的游戏. 当时我们玩得不亦乐乎, 也是第一次接触到这种形式的游戏. 不过当时纯玩家心态, 并没有想过去创造一个. 最近想起这事, 突然想 ...

  8. asp.net 页面的Meta元素

    <meta charset="utf-8" />    <meta name="viewport" content="initial ...

  9. Ogre1.6.5 编译链接错误之FreeImage

    这两天想重新学习下ogre,但是在vs2010上编译1.6.5的版本上遇到链接失败的问题,耗了不少时间这里记一下. 主要是一些重定义报错. >msvcprtd.lib(MSVCP100D.dll ...

  10. SocketTcpClient

    public class SocketTcpClient { public static string ErrorMsg = string.Empty; private static Socket _ ...