apache / apache/cloudstack

KVM agent fails to connect to Ceph RBD storage pool after upgrading Ceph client to Tentacle 20.2.4

Đang mở Phù hợp với người mới
#13,989 3 bình luận 0 reaction 0 người được giao Xem trên GitHub
bug component:ceph
Ngôn ngữ chính
Java
Star
3.1k
Fork
1.4k
Merge trung bình
6 ngày 19 giờ
Pull request đã merge (30 ngày)
32

Mô tả

### problem

CloudStack builds its Ceph RBD connection strings with the legacy Ceph option `auth_supported=cephx.` This option was removed in Ceph Tentacle 20.2.4. As a result, every RBD operation performed by the KVM agent through librados now fails, and the agent cannot bring up the RBD storage pool:

```
**agent.err:**
libvirt: Storage Driver error : internal error: failed to set RADOS option: auth_supported

**agent.log:**
2026-08-27 00:00:13,468 ERROR [kvm.storage.LibvirtStorageAdaptor] (AgentRequest-Handler-3:[]) (logid:e0478a61) Failed to create RBD storage pool: org.libvirt.LibvirtException: internal error: failed to set RADOS option: auth_supported
2026-08-27 00:00:13,468 ERROR [kvm.storage.LibvirtStorageAdaptor] (AgentRequest-Handler-3:[]) (logid:e0478a61) Failed to create the RBD storage pool, cleaning up the libvirt secret
```
In ACS Host state is **Disconnected**

Code:
_plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/storage/KVMPhysicalDisk.java_, lines 56-62

### versions

ACS: 4.22.1.1
Hypervisor OS: KVM on Rocky Linux 9.8
libvirt: 11.10.0
Ceph client packages: librados2 / librbd1 / ceph-common 2:20.2.4-0.el9
Ceph cluster: 20.2.4 Tentacle

### The steps to reproduce the bug

1. Deploy a KVM host with Ceph RBD primary storage and cephx enabled.
2. Upgrade the Ceph client packages on the KVM host to 20.2.4 (Tentacle): librados2, librbd1, ceph-common.
3. Restart libvirtd and cloudstack-agent.

### What to do about it?

Remove `auth_supported`, it is redundant. When `id` and `key` are supplied, the client negotiates cephx anyway, and when they are not, it falls back to whatever `auth_client_required` in `ceph.conf` specifies.
It is also possible to use `auth_client_required` instead of `auth_supported`.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Kiểm tra plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/storage/KVMPhysicalDisk.java quanh các dòng 56-62, nơi CloudStack xây dựng chuỗi kết nối Ceph RBD. Xóa tùy chọn đã lỗi thời và xác minh qua các bước tái hiện rằng KVM agent có thể tạo RBD storage pool với Ceph Tentacle 20.2.4.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
java
Lĩnh vực
infrastructure
Loại issue
Lỗi
Độ khó
2/5
Thời gian dự kiến
1-3 giờ
Mức độ hoạt động
Sôi nổi
Độ rõ ràng
Đặc tả rõ ràng
Mức phù hợp với người mới
78/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.