[Homelab] #25 Tạo Proxmox Cluster bằng Tailscale
Nếu nằm cùng LAN thì join bằng GUI cho lẹ, đơn giản nhanh gọn. Tuy nhiên mình đặt server ở hai vị trí khác nhau. Việc cùng LAN là không thể. Dẫu vậy mình vẫn muốn triển khai Cluster và bài này nhắm đến các Node phân tán không cùng mạng LAN
Đây là một trong những thứ gian nan nhất mình từng làm suốt quá trình nghịch homelab. Vấn đề này thì anh Thuận Bùi cũng không có bài viết về nó, nên bài này sẽ được biên tập thật chi tiết.
Sau khi VGA được tháo ra, mình tiến hành cài Proxmox cho Node PVE2 như cách ở bài 1 tất nhiên không tránh khỏi vụ nomodeset
Sau đó cũng ghim index của các cổng PCIe lại bằng lệnh ở bài 24
Cài đặt Tailscale cho Proxmox
Ở đây mình cài trực tiếp vào cả hai PVE sẽ tham gia Cluster
curl -fsSL https://tailscale.com/install.sh | sh
systemctl enable --now tailscaled
tailscale up --ssh
Sau khi chạy xong sẽ có một đường link để bạn đăng nhập Tailscale
Cấu hình Tailscale
Mình sửa lại hai IP của 2 node pve lại nhìn cho dễ nhớ
pve: 100.122.1.1
pve2: 100.122.2.2

Tạo Cluster
Bạn vào đây xem coi có Cluster nào chưa, chưa thì cứ ấn vào Create Cluster rồi điền vào mọi thứ, LAN thì cũng điền cái LAN duy nhất bạn có vào.

Di sản từ ngày xưa bài 1 để lại, đây là cấu hình từ thuở sơ khai mình cài cho Proxmox.

Để sửa cấu hình cổng giao tiếp (192.168.111.2) thì vào corosync.conf bằng lệnh bên dưới
nano /etc/pve/corosync.conf
Chỗ được bôi đậm mình điền IP tailscale của node PVE vào.

Sau khi điền xong thì restart dịch vụ corosync qua lệnh sau
systemctl restart corosync
pvecm status
Khi đó IP Address của Cluster sẽ được đổi lại như ý muốn.

Tham gia Cluster
Trước khi tham gia phải đảm bảo một vài điều
- Hai Node PVE phải ping được nhau và ngược lại
- SSL của chúng phải là loại của chính PVE ký
Ở bài 14 mình đã dùng SSL của Cloudflare Origin do đó mình phải tự sửa SSL lại thành loại của PVE ký.
Bắt đầu vào Shell của Node PVE2
pvecm add 100.122.1.1 --link0 100.122.2.2

Nó hiện như thế này, vào kiểm tra thấy trong Cluster thấy đã có thì là thành công rồi đấy.
Thành quả
Bạn thấy thế này thì thành công rồi đó!

Tổng hợp một số lỗi đã gặp
Xoá Cluster tại PVE
Xoá Cluster để làm lại từ đầu, chỉ có thể thao tác qua CLI, GUI không hề có nút xoá
systemctl stop pve-cluster corosync
pmxcfs -l
rm /etc/corosync/*
rm /etc/pve/corosync.conf
killall pmxcfs
systemctl start pve-cluster
Không kết nước được vào WebUI của Proxmox
SSH vào node Proxmox bị lỗi sau đó dùng lệnh sau:
pvecm updatecerts --force
systemctl restart pveproxy
PVE2 đã vào Cluster nhưng bị down
Khi PVE2 đã tham gia, nhưng bị lỗi gì đó liên quan đến SSL Cert hoặc không thể connect vào PVE2 khi đang truy cập GUI của PVE hoặc PVE2 bị crash/shutdown
pvecm expected 1
pvecm delnode pve2
Giải thích: Các Node Proxmox là ngang hàng nhau không có node master và node slave. Nó có tính dân chủ nên buộc phải Force Quorum thành 1. Để node PVE (node 1) có toàn quyền kiểm soát, bài 26 sẽ nói kỹ hơn về cái này.
Tham khảo
All rights reserved