Chúng tôi vừa cài đặt một cụm gồm 6 máy chủ Proxmox, sử dụng 3 nút làm bộ lưu trữ Ceph và 3 nút làm nút tính toán.
Chúng tôi đang gặp sự cố lạ và nghiêm trọng với hiệu suất và tính ổn định của cụm của chúng tôi.
Truy cập web VM và Proxmox có xu hướng bị treo mà không có lý do rõ ràng, từ vài giây đến vài phút - khi truy cập trực tiếp qua bảng điều khiển SSH, RDP hoặc VNC.
Ngay cả các máy chủ Proxmox dường như cũng nằm ngoài tầm với, như có thể thấy trong bản chụp giám sát này. Điều này cũng tạo ra sự cố cụm Proxmox với một số máy chủ không đồng bộ.
Chẳng hạn, khi kiểm tra ping giữa các nút máy chủ, nó sẽ hoạt động hoàn hảo với một vài lần ping, treo, tiếp tục (không tăng thời gian pingback - vẫn <1ms), treo lại, v.v.
Ban đầu, chúng tôi gặp một số vấn đề về hiệu suất, nhưng những vấn đề đó đã được khắc phục bằng cách điều chỉnh MTU của NIC thành 9000 (cải thiện đọc/ghi +1300%). Bây giờ chúng tôi cần ổn định tất cả những thứ này, bởi vì hiện tại nó chưa sẵn sàng để sản xuất.
cấu hình phần cứng
Chúng tôi có kiến trúc mạng tương tự như kiến trúc được mô tả trong tài liệu chính thức của Ceph, với mạng công cộng 1 Gbps và mạng cụm 10 Gbps.
Chúng được kết nối với hai card mạng vật lý cho mỗi trong số 6 máy chủ.
Các nút máy chủ lưu trữ:
- CPU: Xeon E-2136 (6 nhân, 12 luồng), 3.3 GHz, Turbo 4.5 GHz
- RAM: 16GB
- Kho:
- 2x RAID 1 256 GB NVMe, LVM
- khối lượng logic gốc của hệ thống: 15 GB (~55% miễn phí)
- trao đổi: 7,4 GB
- WAL cho OSD2: 80 GB
- SSD 4TB SATA (OSD1)
- Ổ cứng SATA 12 TB (OSD2)
- Bộ điều khiển giao diện mạng:
- Intel Corporation I350 Gigabit: được kết nối với mạng 1 Gbps công cộng
- Intel Corporation 82599 10 Gigabit: được kết nối với mạng cụm 10 Gbps (nội bộ)
Tính toán các nút máy chủ:
- CPU: Xeon E-2136 (6 nhân, 12 luồng), 3.3 GHz, Turbo 4.5 GHz
- RAM: 64GB
- Kho:
- 2x RAID 1 SSD 256 GB SATA
- khối lượng logic gốc của hệ thống: 15 GB (~65% miễn phí)
Phần mềm: (trên cả 6 nút)
- Proxmox 7.0-13, được cài đặt trên Debian 11
- Ceph v16.2.6, được cài đặt với Proxmox GUI
- Ceph Monitor trên mỗi nút lưu trữ
- Trình quản lý Ceph trên nút lưu trữ 1 + 3
Cấu hình Ceph
ceph.conf của cụm:
[toàn cầu]
auth_client_required = cephx
auth_cluster_required = cephx
auth_service_required = cephx
cụm_mạng = 192.168.0.100/30
fsid = 97637047-5283-4ae7-96f2-7009a4cfbcb1
mon_allow_pool_delete = true
mon_host = 1.2.3.100 1.2.3.101 1.2.3.102
ms_bind_ipv4 = đúng
ms_bind_ipv6 = sai
osd_pool_default_min_size = 2
osd_pool_default_size = 3
public_network = 1.2.3.100/30
[khách hàng]
keyring = /etc/pve/priv/$cluster.$name.keyring
[mds]
vòng khóa = /var/lib/ceph/mds/ceph-$id/keyring
[mds.asrv-pxdn-402]
máy chủ = asrv-pxdn-402
mds chờ cho tên = pve
[mds.asrv-pxdn-403]
máy chủ = asrv-pxdn-403
mds_standby_for_name = pve
[mon.asrv-pxdn-401]
công khai_addr = 1.2.3.100
[mon.asrv-pxdn-402]
công khai_addr = 1.2.3.101
[mon.asrv-pxdn-403]
công khai_addr = 1.2.3.102
câu hỏi:
- Kiến trúc của chúng ta có đúng không?
- Ceph Monitors and Managers có nên được truy cập thông qua mạng công cộng không? (Đó là cấu hình mặc định của Proxmox đã cung cấp cho chúng tôi)
- Có ai biết những xáo trộn/bất ổn này đến từ đâu và cách khắc phục chúng không?
[chỉnh sửa]
- Có đúng không khi sử dụng kích thước nhóm mặc định là 3, khi bạn có 3 nút lưu trữ? Ban đầu, tôi bị cám dỗ khi sử dụng 2, nhưng không thể tìm thấy các ví dụ tương tự và quyết định sử dụng cấu hình mặc định.
Các vấn đề được chú ý
- Chúng tôi nhận thấy rằng arping bằng cách nào đó đang trả lại lệnh ping từ hai địa chỉ MAC (NIC công cộng và NIC riêng), điều này không có ý nghĩa gì vì đây là các NIC riêng biệt, được liên kết bởi một công tắc riêng.
Đây có thể là một phần của vấn đề mạng.
- Trong một tác vụ sao lưu trên một trong các máy ảo (sao lưu vào Máy chủ sao lưu Proxmox, từ xa về mặt vật lý), bằng cách nào đó, nó dường như ảnh hưởng đến cụm. Máy ảo bị kẹt ở chế độ sao lưu/bị khóa, mặc dù quá trình sao lưu dường như đã hoàn tất đúng cách (hiển thị và có thể truy cập được trên máy chủ sao lưu).
- Kể từ sự cố sao lưu đầu tiên, Ceph đã cố gắng tự xây dựng lại nhưng không thành công. Nó đang ở trạng thái xuống cấp, cho thấy rằng nó thiếu trình nền MDS. Tuy nhiên, tôi đã kiểm tra lại và có các daemon MDS đang hoạt động trên nút lưu trữ 2 & 3.
Nó đang làm việc để xây dựng lại chính nó cho đến khi nó bị mắc kẹt trong trạng thái này.
Đây là trạng thái:
root@storage-node-2:~# ceph -s
cụm:
id: 97637047-5283-4ae7-96f2-7009a4cfbcb1
sức khỏe: HEALTH_WARN
không có đủ trình nền MDS dự phòng
Nhịp tim OSD chậm ở mặt sau (dài nhất 10055,902ms)
Nhịp tim OSD chậm ở phía trước (dài nhất 10360,184ms)
Dự phòng dữ liệu bị suy giảm: 141397/1524759 đối tượng bị suy giảm (9,273%), 156 pgs bị suy giảm, 288 pgs nhỏ hơn
dịch vụ:
Môn: 3 daemon, túc số asrv-pxdn-402,asrv-pxdn-401,asrv-pxdn-403 (4m tuổi)
mgr: asrv-pxdn-401(hoạt động, từ 16 tháng)
mds: 1/1 daemon lên
osd: 6 osds: 4 up (từ 22h), 4 in (từ 21h)
dữ liệu:
khối lượng: 1/1 khỏe mạnh
hồ bơi: 5 hồ bơi, 480 pgs
đối tượng: 691,68 nghìn đối tượng, 2,6 TiB
mức sử dụng: 5,2 TiB đã sử dụng, 24 TiB / 29 TiB khả dụng
pgs: 141397/1524759 đối tượng xuống cấp (9,273%)
192 hoạt động + sạch
156 đang hoạt động+nhỏ hơn+xuống cấp
132 đang hoạt động+nhỏ hơn
[sửa 2]
root@storage-node-2:~# cây ceph osd
ID LỚP TRỌNG LƯỢNG LOẠI TÊN TÌNH TRẠNG THƯỞNG TRỌNG LƯỢNG PRI-AFF
-1 43.65834 gốc mặc định
-3 14.55278 máy chủ asrv-pxdn-401
0 hdd 10.91409 osd.0 lên 1.00000 1.00000
3 ssd 3.63869 osd.3 lên 1.00000 1.00000
-5 14.55278 máy chủ asrv-pxdn-402
1 hdd 10.91409 osd.1 lên 1.00000 1.00000
4 ssd 3.63869 osd.4 lên 1.00000 1.00000
-7 14.55278 máy chủ asrv-pxdn-403
2 hdd 10.91409 osd.2 xuống 0 1.00000
5 ssd 3.63869 osd.5 xuống 0 1.00000