apache / apache/cloudstack

CKS node Instance stuck in "Starting" state (VM lifecycle) when a non-default (explicitly selected) template is used; works with the default SystemVM template

オープン
#13,471 コメント 4 件 リアクション 2 件 担当者 0 名 GitHub で見る
component:kubernetes distro:ubuntu
主要言語
Java
スター
3.1k
フォーク
1.4k
平均マージ
6日 19時間
マージ済み PR(30日)
32

説明

### problem

When creating a CKS Kubernetes cluster and explicitly selecting a non-default node
template
(the stock cks-ubuntu-2204-kvm CKS-ready image) in Advanced Settings, the
node Instance stays in the Starting VM lifecycle state indefinitely and never
transitions to Running — even though the libvirt domain is actually up on the KVM host
(the VNC console is reachable and the guest OS boots).

The same cluster creation succeeds when the default SystemVM template
(systemvm-kvm-4.22.0-x86_64) is used for the nodes. The only changed variable between
the working and failing cases is the node template selection, which points at the
Flexible Kubernetes Clusters per-node template selection path rather than at
in-guest provisioning (cloud-init / kubeadm / CNI).

STEPS TO REPRODUCE


  1. ACS 4.22.1.0 on KVM, CKS enabled.

  2. Register the stock CKS-ready Ubuntu 22.04 KVM template (cks-ubuntu-2204-kvm),
    marked "For CKS".

  3. Register a supported Kubernetes binaries ISO/version.

  4. Create a CloudManaged Kubernetes cluster (3 control node HA) on a VPC tier network,
    and in Advanced Settings explicitly select cks-ubuntu-2204-kvm as the node
    template.

  5. Observe the control node Instance in the UI (Instances → the control node):
    it stays in Starting.

  6. Repeat the exact same cluster creation but do not select a template (use the
    default systemvm-kvm-4.22.0-x86_64): the node reaches Running and the cluster
    provisions normally.

EXPECTED RESULTS

Selecting a "For CKS" template in Advanced Settings should behave the same as the
default template path: the node Instance transitions StartingRunning within the
normal VM start window, after which CKS provisioning proceeds and the cluster reaches
Running.

ACTUAL RESULTS

Behaviour depends solely on the node template selection:

Plain Instance deployed from cks-ubuntu-2204-kvm (no CKS) | Reaches Running — works
CKS node from default SystemVM template systemvm-kvm-4.22.0-x86_64 | Reaches Running, cluster provisions — works
CKS node from selected cks-ubuntu-2204-kvm template | Instance stuck in Starting indefinitely

In the failing case:


  • The control node Instance remains in Starting (VM lifecycle state) indefinitely, so
    the cluster also stays in Starting.

  • The libvirt domain is genuinely running on the KVM host: the VNC console is reachable
    and the guest OS boots.

  • SSH to the node (port 2222) is not usable; the UI-displayed password is not accepted
    on the VNC console (consistent with the node never being marked Running and/or the
    start/provisioning workflow not completing).

### versions

Hypervisor version: KVM Ubuntu 24.04
ACS version: 4.22.1.0
Management server: Ubuntu 24.04

### The steps to reproduce the bug

_No response_

### What to do about it?

_No response_

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

まず、Flexible Kubernetes Clusters のノードごとのテンプレート選択パスと、Instances UI が使用する VM ライフサイクルの遷移を追跡し、明示的に選択した cks-ubuntu-2204-kvm テンプレートとデフォルトの SystemVM テンプレートを比較します。KVM で再現し、libvirt ドメインの状態とノード起動ワークフローを調査します。選択した CKS テンプレートが Running に到達し、クラスタのプロビジョニングがデフォルトのテンプレートの場合と同様に進行すれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
java, kubernetes, linux
領域
backend, cloud, infrastructure
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
静か
明瞭さ
おおむね明確
初心者へのやさしさ
45/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。