apache / apache/cloudstack

Unable to depoly a vm with the default centos template on xenserver 8.4

未關閉
#13,798 2 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
bug component:templates component:XenServer type:technical-debt
主要語言
Java
星號
3.1k
分支
1.4k
平均合併
6 天 19 小時
30 天內合併 PR
32

描述

### problem

The long description of your problem

### versions

ACS 4.22
Xenserver 8.4

### The steps to reproduce the bug

1. Have a cloudstack environment with xenserver 8.4 hypervisor

2. Deploy a vm with default centos template

CentOS 5.6(64-bit) no GUI (XenServer)
http://download.cloudstack.org/templates/builtin/centos56-x86_64.vhd.bz2

3. Deployment fails with the following exception

Logs

```
2026-08-05 07:28:21,240 DEBUG [c.c.h.x.r.w.x.CitrixStartCommandWrapper] (DirectAgent-71:[ctx-79a585c0]) (logid:5a107745) 1. The VM i-2-63-VM is in Starting state.
2026-08-05 07:28:21,242 WARN [c.c.h.x.r.w.x.CitrixStartCommandWrapper] (DirectAgent-71:[ctx-79a585c0]) (logid:5a107745) Catch Exception: class com.cloud.utils.exception.CloudRuntimeException due to com.cloud.utils.exception.CloudRuntimeException: Cannot find Template CentOS 7 on XenServer host com.cloud.utils.exception.CloudRuntimeException: Cannot find Template CentOS 7 on XenServer host
at com.cloud.hypervisor.xenserver.resource.CitrixResourceBase.createVmFromTemplate(CitrixResourceBase.java:1300)
at com.cloud.hypervisor.xenserver.resource.wrapper.xenbase.CitrixStartCommandWrapper.execute(CitrixStartCommandWrapper.java:93)
at com.cloud.hypervisor.xenserver.resource.wrapper.xenbase.CitrixStartCommandWrapper.execute(CitrixStartCommandWrapper.java:57)
at com.cloud.hypervisor.xenserver.resource.wrapper.xenbase.CitrixRequestWrapper.execute(CitrixRequestWrapper.java:122)
at com.cloud.hypervisor.xenserver.resource.CitrixResourceBase.executeRequest(CitrixResourceBase.java:1780)
at com.cloud.agent.manager.DirectAgentAttache$Task.runInContext(DirectAgentAttache.java:306)
at org.apache.cloudstack.managed.context.ManagedContextRunnable$1.run(ManagedContextRunnable.java:49)
at org.apache.cloudstack.managed.context.impl.DefaultManagedContext$1.call(DefaultManagedContext.java:56)
at org.apache.cloudstack.managed.context.impl.DefaultManagedContext.callWithContext(DefaultManagedContext.java:103)
at org.apache.cloudstack.managed.context.impl.DefaultManagedContext.runWithContext(DefaultManagedContext.java:53)
at org.apache.cloudstack.managed.context.ManagedContextRunnable.run(ManagedContextRunnable.java:46)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:840)

2026-08-05 07:28:21,242 WARN [c.c.h.x.r.Xenserver84Resource] (DirectAgent-71:[ctx-79a585c0]) (logid:5a107745) Unable to start i-2-63-VM due to com.cloud.utils.exception.CloudRuntimeException: Cannot find Template CentOS 7 on XenServer host
at com.cloud.hypervisor.xenserver.resource.CitrixResourceBase.createVmFromTemplate(CitrixResourceBase.java:1300)
at com.cloud.hypervisor.xenserver.resource.wrapper.xenbase.CitrixStartCommandWrapper.execute(CitrixStartCommandWrapper.java:93)
at com.cloud.hypervisor.xenserver.resource.wrapper.xenbase.CitrixStartCommandWrapper.execute(CitrixStartCommandWrapper.java:57)
at com.cloud.hypervisor.xenserver.resource.wrapper.xenbase.CitrixRequestWrapper.execute(CitrixRequestWrapper.java:122)
at com.cloud.hypervisor.xenserver.resource.CitrixResourceBase.executeRequest(CitrixResourceBase.java:1780)
at com.cloud.agent.manager.DirectAgentAttache$Task.runInContext(DirectAgentAttache.java:306)
at org.apache.cloudstack.managed.context.ManagedContextRunnable$1.run(ManagedContextRunnable.java:49)
at org.apache.cloudstack.managed.context.impl.DefaultManagedContext$1.call(DefaultManagedContext.java:56)
at org.apache.cloudstack.managed.context.impl.DefaultManagedContext.callWithContext(DefaultManagedContext.java:103)
at org.apache.cloudstack.managed.context.impl.DefaultManagedContext.runWithContext(DefaultManagedContext.java:53)
at org.apache.cloudstack.managed.context.ManagedContextRunnable.run(ManagedContextRunnable.java:46)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:840)
```

4. Xenceter 8.4 says Centos 7 is deprecated

Image

### What to do about it?

Cloudstack should map the correct guest os in case the host is xenserver 8.4

or go about replacing the templated with a newer version

https://github.com/apache/cloudstack/discussions/13797

貢獻指南

開啟貢獻指南

研究方向

從 CitrixResourceBase.java:1300 和 Xenserver84Resource 的警告路徑開始,然後從 CitrixStartCommandWrapper.java 追蹤部署流程。在 XenServer 8.4 上重現預設 CentOS 範本的部署,並檢查客體 OS 與範本的選取方式。當受支援的 CentOS 範本能夠成功部署且不出現 "Cannot find Template CentOS 7" 失敗時,即表示完成。

由索引模型根據 Issue 內容生成。

評估

技術堆疊
java
領域
cloud, infrastructure
Issue 類型
缺陷
難度
4/5
預估耗時
3-5 天
活躍度
冷清
描述清晰度
基本清楚
新手友好度
48/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。