apache / apache/cloudstack

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

オープン
#13,798 コメント 2 件 リアクション 0 件 担当者 0 名 GitHub で見る
bug component:templates component:XenServer type:technical-debt
主要言語
Java
スター
3.1k
フォーク
1.4k
平均マージ
6日 19時間
マージ済み PR(30日)
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 を短くまとめたダイジェスト。