Apache CloudStack:添加实例时没有显示模板

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Apache CloudStack:添加实例时没有显示模板相关的知识,希望对你有一定的参考价值。

我在quick installation guide之后在CentOS 6.8机器上设置了apache cloudstack。管理服务器和KVM安装在同一台计算机上。管理服务器正在运行而没有问题。我能够从Web界面添加区域,窗格,群集,主存储和辅助存储。但是当我尝试添加一个实例时,它没有在第二阶段显示任何模板,你可以在截图中看到enter image description here

但是,我能够在Web UI中的Templates链接下看到两个模板。 enter image description here

但是当我选择模板并导航到Zone选项卡时,我看到Timeout waiting for response from storage hostReady字段显示没有。

enter image description here

当我检查管理服务器日志时,似乎当cloudstack尝试挂载二级存储以供使用时出现错误。来自cloudstack-management.log文件的以下段描述了此错误。

    2017-03-09 23:26:43,207 DEBUG [c.c.a.t.Request] (AgentManager-Handler-
14:null) (logid:) Seq 2-7686800138991304712: Processing:  { Ans: , MgmtId: 
279278805450918, via: 2, Ver: v1, Flags: 10, [{"com.cloud.agent.api.Answer":
{"result":false,"details":"com.cloud.utils.exception.CloudRuntimeException: 
GetRootDir for nfs://172.16.10.2/export/secondary failed due to 
com.cloud.utils.exception.CloudRuntimeException: Unable to mount 
172.16.10.2:/export/secondary at /mnt/SecStorage/6e26529d-c659-3053-8acb-
817a77b6cfc6 due to mount.nfs: Connection timed out
	at 
org.apache.cloudstack.storage.resource.NfsSecondaryStorageResource.getRootDir(Nf
sSecondaryStorageResource.java:2080)
	at 
org.apache.cloudstack.storage.resource.NfsSecondaryStorageResource.execute(NfsSe
condaryStorageResource.java:1829)
	at 
org.apache.cloudstack.storage.resource.NfsSecondaryStorageResource.executeReques
t(NfsSecondaryStorageResource.java:265)
	at 
com.cloud.agent.Agent.processRequest(Agent.java:525)
	at 
com.cloud.agent.Agent$AgentRequestHandler.doTask(Agent.java:833)
	at 
com.cloud.utils.nio.Task.call(Task.java:83)
	at 
com.cloud.utils.nio.Task.call(Task.java:29)
	at 
java.util.concurrent.FutureTask.run(FutureTask.java:262)
	at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
n	at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
n	at java.lang.Thread.run(Thread.java:745)
","wait":0}}] }

任何人都可以指导我如何解决这个问题?我一直试图解决它几个小时,不知道如何进一步。 编辑1:请注意我的LAN地址是10.103.72.50,我认为这不是/24地址。我试图通过在ifcg-eth0文件中进行以下设置为CentOs提供静态IP

DEVICE=eth0
HWADDR=52:54:00:B9:A6:C0
NM_CONTROLLED=no
ONBOOT=yes
BOOTPROTO=none
IPADDR=172.16.10.2
NETMASK=255.255.255.0
GATEWAY=172.16.10.1
DNS1=8.8.8.8
DNS2=8.8.4.4

但这样做会阻止我的互联网。作为一种解决方法,我还原了这些更改并首先安装了所有软件包。然后我通过与上面相同的配置设置将IP更改为静态并运行cloudstack管理。一切都很好,直到我碰到这个模板的事情。请帮我弄清楚可能出了什么问题

答案

我知道我已经迟到了,但是对于将来尝试的人来说,这就是:我希望您在将IP更改为静态之前已成功添加了快速安装指南中提到的主机,因为它为不同的流量自动配置VLAN并创建两座桥 - 通常名称为“云”或“云”。 Cloudstack使用辅助存储系统VM在每个区域和群集中执行所有与存储相关的操作。似乎问题是辅助存储系统vm(SSVM)无法与端口8250上的管理服务器通信。如果没有,请尝试在SSVM shell中手动挂载NFS服务器的挂载点。您可以使用以下命令ssh到SSVM:

ssh -i  /var/cloudstack/management/.ssh/id_rsa  -p 3922 root@<Private or Link local Ip address of SSVM>

我建议您在将ssh写入辅助存储系统VM(假设它正在运行)后运行/usr/local/cloud/systemvm/ssvm-check.sh并拥有它的私有,公共和链接本地IP地址。如果这对你没有多大帮助,请看看Cloudstack上的secondary storage troubleshooting docs

我还会建议,如果将来有人遇到类似问题,请检查SSVM是否正在运行并且在“基础架构”选项卡的“系统虚拟机”部分中处于“启动”状态,并且您可以从中打开控制台会话浏览器。如果这样做,继续运行上面提到的ssvm-check.sh脚本,该脚本系统地检查SSVM执行的每个操作点。即使无法打开控制台会话,您仍然可以使用SSVM的链接本地IP地址进行ssh,可以通过打开SSVM的详细信息来访问,而不是执行脚本。如果它说,它无法与端口8250上的Management Server通信,我建议您检查管理服务器的iptables规则,并确保在端口8250允许所有流量。检查相同的自定义命令是nc -v <mngmnt-server-ip> 8250。您可以进行简单的搜索,并了解如何在您的iptables规则中添加端口8250(如果未打开)。接下来,您提到您使用的是CentOS 6.8,因此它可能使用旧版本的nfs,因此请在NFS服务器中执行exportfs -a以确保所有NFS共享都已正确导出且没有错误。我建议您等到CentOS 5.5的下载状态没有GUI kvm模板完成,并且在开始导入自己的模板和ISO以在VM上执行之前,其Ready状态显示为“Yes”。最后,如果您的ssvm-check.sh脚本显示一切正常并且下载仍然无法启动,您可以运行命令:service cloud restart并实际检查服务是否已使用service cloud status获取PID作为旧版本的系统vm模板有时即使在restart命令之后,我们还是需要使用service cloud start手动启动云服务。在SSVM中重新启动云服务会触发重新下载所有剩余模板和ISO。附注:如果要进行更多故障排除,系统VM使用Debian内核。希望这可以帮助。

以上是关于Apache CloudStack:添加实例时没有显示模板的主要内容,如果未能解决你的问题,请参考以下文章

CloudStack: unable to add the host

CloudStack 附加磁盘和修改附加磁盘大小

cloudstack 添加新网卡使其能上网

Cloudstack安装

cloudstack基础知识

如何在 RHEL 7.4 上安装 cloudstack