菜单

CloudStack管理VMware遇到的问题

2015年8月16日 - CloudStack, 架构

话说前段安装了CloudStack并使用它来管理XenServer,这回要用它来管理VMware。虽说之前遇到了大大小小的问题都解决了,但在VMware这一块还是遇到了一些麻烦。

在创建资源域、添加集群和主机、存储后,看起来一切都好好的,可系统VM死活起不来。看log发现诸如“InsufficientServerCapacityException”之类的,可是不知道哪些资源不够(在管理XenServer时自己创建的VM起不来,曾发现是Vlan范围没有指定)。再看看界面,二级存储显示的大小是0kb,但是在添加二级存储的时候又没有任何错误提示。通过vCenter去看存储,主存储是已经挂载好了,二级存储确实没有挂载。从log中又看到这一行“Unable to unpack /var/cloudstack/mnt/VM/178516920059281.2288ef8e/template/tmpl/1/8/routing-8.ova”,可是这个文件压根不存在,自己创建目录并把文件systemvm64template-4.5-vmware.ova复制过来并重命名,还是一样没任何效果,后来想想是不是权限问题,索性把目录“/var/cloudstack/mnt/VM”改为可写,这回二级存储真的正常了,系统VM也可以正常启动了。在安装CloudStack的时候,我并没有看到哪儿需要指定“/var/cloudstack/mnt/VM”这个目录,这算不算是CloudStack本身的问题?

系统VM起来后,其agent状态却不是up,估计是网络不通。要登录系统VM去看看网络问题,网上有说使用这个命令“VMware:  ssh -i  /var/cloudstack/management/.ssh/id_rsa  -p 3922 root@<Private Ip address of SSVM>”这个登录,但我使用时却提示“Permission denied”,网上也有一些重新注入密钥解决这个问题的介绍,但我懒得折腾,就直接从vCenter里的控制台登录进去。首先我搜了系统VM的密码,网上好几个地方都说是*******,但我死活登不进去,结果改为”password”,忽的进去了。首先往外ping,不通后查看路由表,发现确实是路由表的问题,删掉一些项后正常了。我想这里应该是我在指定网络信息时,对一些信息的确切含义没有特别清楚导致的,CloudStack本身不太可能出现这种大bug。

系统VM状态正常,上传模板,但是自己创建的VM却起不来。UI界面提示是不支持“Concurrent operation”,log则更详细一些,说是模板没有下载完成,但是我自己注册的模板已经下载完成并就绪,和VMware系统模板一模一样,并在界面上把它移动到最上端,我以为这样它会优先选择我的这个模板,这样VM就可以启动了。这里自己创建的VM起不来,首先是因为虚拟路由器起不来,虚拟路由器需要系统模板,所以系统模板下载没完成虚拟路由器起不来,因此要解决的就是系统模板的问题。我之前看到说虚拟路由器和系统VM使用的是同一个模板,只是传入参数不同,但为什么系统VM起来后虚拟路由器却找不到模板呢?我不知道。看看界面,VMware使用的系统模板下载进度比蜗牛慢,虽然只有200多M,估计没有两三天下载不完,于是想到将下载地址指定为公司内外某个URL。直接去看mysql里边的vm_template表,这个表里有个url字段,这个字段就是各个模板的下载地址,CloudStack默认都指到了“download.cloud.com”上。因为我之前已经把模板下载到本地,因此把这个url改为”localhost”,这回刷的一下下载完了,再次创建VM,启动正常,终于可以Happy一下了。

 

发表评论