centos 下openstack的实例文件注入(nbd)

openstack在创建实例的时候,可以对实例进行文件注入,注入的内容为:

key  ssh公钥

network 网络参数,目前仅支持debian/ ubuntu 的 /etc/network/interfaces格式。其余的系统,请使用 dhcp

admin_password  注入超级用户 root 的密码

metadata 注入元数据meta.js

具体可以参见:nova/virt/disk/api.py

 

注入的时候,有几种方式,包括loop, guestfs, nbd, mount等,其中 mount 不安全。缺省使用:

img_handlers=”loop,nbd,guestfs”

对于qcow2 格式的镜像,必须需要使用guestfs或  nbd配合 qemu-nbd注入。但是 guestfs 的速度较慢。遗憾的是 CentOS/RedHat 6.2 中,内核没有编译nbd模块, qemu也没有编译 qemu-nbd程序。

 

解决办法:

1、手工编译 nbd 和 qemu-nbd

http://www.cyberciti.biz/faq/rhel5-installing-kernel-source-code/

http://jamyy.dyndns.org/blog/2012/02/3582.html

2、向RedHat递交bug 报告

此条目发表在OpenStack分类目录,贴了, 标签。将固定链接加入收藏夹。