1、在生产环境中, 由于某个tenant下创建了有1300+条得security-group通过查询nova得数据库可以看出确实有1300+条得存在,但是通过curl调用的时候发现返回得数目只有1000条
可以通过修改nova.conf文件得osapi_max_limit 项修改返回得条目限制,默认情况下该值为1000, 可以从nova/api/common.py 中的limited方法处查看该原理
2、之前在VMWare,在Fedora 18 通过devstack搭建的OpenStack 开发环境, 所有服务启动成功,没有问题,但是在创建虚拟机得实例得时候compute服务报错,
NBD 模块无法加载
nova.virt.disk.mount.nbd [^[[01;36mreq-2aa38280-3951-42c1-8fa6-a41576ded00b ^[[00;36madmin admin] ^[[01;
~ | 35mnbd module not loaded^[[00m
解决方法, modprobe nbd
另一个问题是
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 i task-controller* | n position 0: ordinal not in range(128)
报错的意思是无法解析中文,其原因是查看libvirt日志可以看到是由于
2013-06-04 10:13:56.317+0000: 1246: error : virDomainDefParseXML:9112 : 内部错误 os 类型 'hvm' 不支持的构架
导致得;解决方法
修改nova.conf文件修改选项为 libvirt_type = qemu 修改原因是由于虚拟机中不支持全虚拟机化,通过查看cpu信息可以看出
cat /proc/cpuinfo | grep flags
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss ht syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts nopl xtopology tsc_reliable nonstop_tsc aperfmperf pni ssse3 cx16 sse4_1 sse4_2 x2apic popcnt hypervisor lahf_lm arat dtherm
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss ht syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts nopl xtopology tsc_reliable nonstop_tsc aperfmperf pni ssse3 cx16 sse4_1 sse4_2 x2apic popcnt hypervisor lahf_lm arat dtherm
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss ht syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts nopl xtopology tsc_reliable nonstop_tsc aperfmperf pni ssse3 cx16 sse4_1 sse4_2 x2apic popcnt hypervisor lahf_lm arat dtherm
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss ht syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts nopl xtopology tsc_reliable nonstop_tsc aperfmperf pni ssse3 cx16 sse4_1 sse4_2 x2apic popcnt hypervisor lahf_lm arat dtherm
pae 表示cpu支持半虚拟化