Skip to content
Thuan Bui's Blog
Go back

[XCP-ng] Phục hồi Pool khi Pool Master gặp sự cố

Trong thời gian nghiên cứu tính năng High Availability của XCP-ng, mình nhận ra rằng mọi hoạt động của Resource Pool đều phụ thuộc vào Pool Master. Lý do vì Xen-Orchestra chỉ kết nối và trao đổi thông tin trực tiếp với Pool Master.

Nếu Pool Master gặp sự cố không thể truy cập (rớt mạng, cúp điện,…), các máy chủ còn lại trong Pool sẽ mất luôn kết nối với Xen Orchestra. Khi đó, tính năng High Availability sẽ không thể hoạt động.

Dưới đây là Resource Pool của mình gồm 3 máy chủ, trong đó Pool Master là máy chủ xcp-ng-17.

Mình thử nghiệm tắt máy chủ xcp-ng-17 đi. Sau đó quay lại Xen Orchestra, tất cả các máy chủ đều biến mất khỏi hệ thống.

Trong trường hợp Pool Master thực sự gặp sự cố chưa thể khắc phục sớm, bắt buộc phải chọn một máy chủ khác trong Pool làm Pool Master để thiết lập lại quyền điều khiển Pool trên Xen Orchestra.

Dưới đây là hướng dẫn cách phục hồi Resrouce Pool khi Pool Master gặp sự cố.

1. Xem thông tin pool và host

Truy cập SSH vào một trong các máy chủ còn lại trong pool. Sử dụng lệnh sau để xem danh sách host

Terminal window
xe host-list params=uuid,name-label,host-metrics-live

Do máy chủ xcp-ng-17 của mình đang gặp sự cố, nên thông số host-metrics-live hiển thị false, còn 2 máy chủ còn lại đang hoạt động bình thường, hiển thị true.

Terminal window
uuid ( RO) : edab6a91-4ea7-4adb-bdea-15c51e675d5f
name-label ( RW): xcp-ng-18
host-metrics-live ( RO): true
uuid ( RO) : e3cce885-f617-482e-b598-30a57df414a2
name-label ( RW): xcp-ng-17
host-metrics-live ( RO): false
uuid ( RO) : 8e52ca30-dcc0-4b28-af8c-ab009d2d5f10
name-label ( RW): xcp-ng-16
host-metrics-live ( RO): true

Kiểm tra thông tin pool bằng lệnh xe pool-list

Terminal window
[09:44 xcp-ng-17 ~]# xe pool-list
uuid ( RO) : c53ef1f0-9703-b811-a6d5-2f1b01a4203b
name-label ( RW): My Pool
name-description ( RW):
master ( RO): e3cce885-f617-482e-b598-30a57df414a2
default-SR ( RW): 57db5d2e-1ab0-0277-a15a-19eb6a06115a

Pool My Pool đang có master là xcp-ng-17 (uuid e3cce885-f617-482e-b598-30a57df414a2)

2. Thay đổi Pool Master

Gõ tiếp lệnh sau để chuyển Pool Master sang máy chủ mới trong Pool

Terminal window
xe-toolstack-restart

Chờ 2 phút để hệ thống xử lý và khởi động lại. Sau đó kiểm tra lại pool bằng lệnh xe pool-list, master giờ đã được chuyển qua xcp-ng-16 (uuid edab6a91-4ea7-4adb-bdea-15c51e675d5f)

Terminal window
[09:46 xcp-ng-17 ~]# xe pool-list
uuid ( RO) : c53ef1f0-9703-b811-a6d5-2f1b01a4203b
name-label ( RW): My Pool
name-description ( RW):
master ( RO): edab6a91-4ea7-4adb-bdea-15c51e675d5f
default-SR ( RW): 57db5d2e-1ab0-0277-a15a-19eb6a06115a

3. Kết nối lại trong Xen Orchestra

Mở Xen Orchestra, truy cập vào mục Settings —> Servers, xóa kết nối cũ và thực hiện lại kết nối đến máy chủ xcp-ng-16.

Vậy là xong. Resource Pool giờ đã hoạt động bình thường trở lại.


Share this post on:

Previous Post
Đánh giá Cloud VPS Basic 2 của HostingViet
Next Post
Hiển thị danh sách thương hiệu sản phẩm (product brand) cho Woocommerce