openstack 制作ubuntu镜像
openstack制作镜像 包括遇到的问题
官方文档:
一. Creating custom images
Creating a Linux Image – Ubuntu
1.kvm-img create -f raw server.img 5G
wget http://releases.ubuntu.com/natty/ubuntu-11.04-server-amd64.iso (准备好镜像当然可以采用事先下载好的 iso镜像 )
2.sudo kvm -m 256 -cdrom ubuntu-12.04.1-server-amd64.iso -drive file=server.img,if=scsi,index=0 -boot d -net nic -net user -nographic -vnc :0
具体参数可以 :$man kvm
-m 虚拟器运用内存
-cdrom 是指光驱安装 这个 可以事先将镜像挂载
sudo mkdir /mnt/cdrom (若系统没有cdrom,可以新建一个)
sudo mount -o loop /home/lost/ubuntu-12.04.1-server-amd64.iso /mnt/cdrom
-driver 指定安装的驱动,我的理解是将这个虚拟器安装到什么地方 server.img 是刚才上面单独分出来的一个存储空间
-boot d 是指虚拟器启动的方式 有好几个参数 d 是光驱启动,c是硬盘启动
-net nic -net user 感觉有与没有 没区别 ,具体可以看man 的介绍
-nographic 就是安装过程不显示 图形 ,说白了 不用这个 是不能直接看安装过程 那不是扯淡 么 呵呵所以我是直接 去掉这个
-vnc 知道vnc 访问
During the installation of Ubuntu, create a single ext4 partition mounted on ‘/’. Do not create a swap partition.
这个很重要,一定要手动分区,也就是分一个主分区就ok 全部给 /
在安装的过程中,其它的跟安装系统没什么区别,最后安装好后,记得 对系统进行更新 文档上是这么说 不过我觉得无所谓
重要的地方:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install openssh-server cloud-init 这个应该是必须的
然后是:
sudo rm -rf /etc/udev/rules.d/70-persistent-net.rules
3.Extracting the EXT4 partition
sudo losetup -f server.img
sudo losetup -a
You should see an output like this:
/dev/loop0: [0801]:16908388 ($filepath)
OpenStack Compute Administration Manual Sep 17, 2012 trunk 113
Observe the name of the loop device ( /dev/loop0 in our setup) when $filepath is the path to the mounted .raw file.
..............................
具体可以去参考 官方文档
下面谈谈我遇到的问题:
我安装过程的命令是:
sudo kvm -m 1024 -cdrom ubuntu-12.04.1-server-amd64.iso -drive file=server.img -boot d
上传镜像到系统异常:这个是镜像大小为5G 的时候
root@lost:/home/lost/downloads/images# cloud-publish-image -t image --kernel-file vmlinuz-3.2.0-29-generic --ramdisk-file initrd.img-3.2.0-29-generic amd64 serverfinal.img bucket1
failed to check for existing manifest
failed to register vmlinuz-3.2.0-29-generic
在网上搜索有人说这个镜像5G太大了 从里面扣系统的时候会出错,然后我就再次弄了一个2G的img
结果依旧:
镜像大小定义为2G 依旧出这个错误
lost@lost:~/downloads/images$ cloud-publish-image -t image --kernel-file vmlinuz-3.2.0-29-generic --ramdisk-file initrd.img-3.2.0-29-generic amd64 serverfinal.img bucket1
failed to check for existing manifest
failed to register vmlinuz-3.2.0-29-generic
直接这样上传raw格式的img
glance image-create name="A new ubuntu image" is_public=true container_format=ovf disk_format=raw < /home/lost/downloads/images/server.img
镜像是能上传成功,不过是nova 添加不了实例
nova boot --flavor 1 --image 375a9d13-1368-4c66-8438-030a91e6f911 --key_name key1 new_ubuntu_512
结果 出现 status :Error
更多推荐
所有评论(0)