Cài đặt FRR để cấu hình OSPF

Free Range Routing (FRR) là một bộ giao thức định tuyến Internet miễn phí và nguồn mở cho các nền tảng Linux và Unix. Nó thực hiện BGP, OSPF, RIP, IS-IS, PIM, LDP, BFD, Babel, PBR, OpenFabric và VRRP, với hỗ trợ alpha cho EIGRP và NHRP.

  • Trên mỗi node, cài đặt FRR bằng lệnh: apt install frr -y.
  • Chỉnh sửa file cấu hình FRR bằng lệnh: vi /etc/frr/daemons.
  • Điều chỉnh ospf6d=no thành ospf6d=yes và lưu file.
  • Khởi động lại dịch vụ FRR bằng lệnh: systemctl restart frr.service.

Sử dụng IPv4: Bạn hãy thay đổi thiết lập ospfd ở đây thay vì ospf6d.

Dưới đây là các bước cấu hình trên mỗi node, tương tự như trên các switch vật lý:

  • Trên mỗi node hãy vào FRR bằng cách chạy lệnh: vtysh.
  • Kiểm tra cấu hình hiện tại bằng lệnh: show running-config.
  • Hoặc bạn có thể list các interface hiện có bằng lệnh: show interface brief.
  • Vào mode cấu hình bằng cách gõ: configure.
  • Áp dụng cấu hình sau đây. Số “0.0.0.1” nên đại diện cho số node của bạn. Hãy thay đổi nó thành “0.0.0.2” cho node 2, “0.0.0.3” cho node 3
ipv6 forwarding
!
router ospf6
 ospf6 router-id 0.0.0.1
 log-adjacency-changes
 exit
!
interface lo
 ipv6 ospf6 area 0
 exit
!
interface ens3f0
 ipv6 ospf6 area 0
 ipv6 ospf6 network point-to-point
 exit
!
interface ens3f1
 ipv6 ospf6 area 0
 ipv6 ospf6 network point-to-point
 exit

Sử dụng IPv4: Thay vì các lệnh IPv6 ở trên, sử dụng các lệnh sau đây cho IPv4:

ip forwarding
!
router ospf
 ospf router-id 0.0.0.1
 log-adjacency-changes
 exit
!
interface lo
 ip ospf area 0
 exit
!
interface ens3f0
 ip ospf area 0
 ip ospf network point-to-point
 exit
!
interface ens3f1
 ip ospf area 0
 ip ospf network point-to-point
 exit

Thoát khỏi mode cấu hình bằng cách gõ: end.

Lưu cấu hình bằng lệnh: write memory.

Những bước này cấu hình OSPF6 (hoặc OSPF cho IPv4) trên các node của bạn. Bây giờ hãy kiểm tra OSPF6 neighbor.

Để hiển thị neighbor ipv6 ospf6 sử dụng lệnh show ipv6 ospf6 neighbor.

pmx1# show ipv6 ospf6 neighbor 
Neighbor ID     Pri    DeadTime    State/IfState         Duration I/F[State]
0.0.0.3           1    00:00:36     Full/PointToPoint    01:53:14 ens3f0[PointToPoint]
0.0.0.2           1    00:00:37     Full/PointToPoint    01:53:09 ens3f1[PointToPoint]

Bạn sẽ thấy hai thiết bị neighbor trên mỗi node.

Sử dụng IPv4: Sử dụng show ip ospf neighbor

Để hiển thị routing table IPv6 trong FRR sử dụng lệnh show ipv6 route.

pmx1# show ipv6 route
Codes: K - kernel route, C - connected, S - static, R - RIPng,
       O - OSPFv3, I - IS-IS, B - BGP, N - NHRP, T - Table,
       v - VNC, V - VNC-Direct, A - Babel, F - PBR,
       f - OpenFabric,
       > - selected route, * - FIB route, q - queued, r - rejected, b - backup
       t - trapped, o - offload failure

O   fc00::1/128 [110/10] is directly connected, lo, weight 1, 00:14:18
C>* fc00::1/128 is directly connected, lo, 00:19:14
O>* fc00::2/128 [110/20] via fe80::1602:ecff:fe8f:8b98, ens3f1, weight 1, 00:12:39
O>* fc00::3/128 [110/20] via fe80::da9d:67ff:feee:2f4d, ens3f0, weight 1, 00:01:59
C * fe80::/64 is directly connected, ens3f0, 00:19:05
C * fe80::/64 is directly connected, ens3f1, 00:19:06
C>* fe80::/64 is directly connected, vmbr0, 00:19:08

Bạn sẽ thấy địa chỉ IPv6 của hàng xóm trong bảng dưới dạng các tuyến OSPF

Sử dụng IPv4: Sử dụng show ip route

Để thoát FRR sử dụng lệnh exit.

Hiển thị bảng định tuyến IPv6 trong Linux sử dụng lệnh ip -6 route.

root@pmx1:~# ip -6 route
::1 dev lo proto kernel metric 256 pref medium
fc00::1 dev lo proto kernel metric 256 pref medium
fc00::2 nhid 22 via fe80::1602:ecff:fe8f:8b98 dev ens3f1 proto ospf metric 20 pref medium
fc00::3 nhid 24 via fe80::da9d:67ff:feee:2f4d dev ens3f0 proto ospf metric 20 pref medium
fe80::/64 dev vmbr0 proto kernel metric 256 pref medium
fe80::/64 dev ens3f1 proto kernel metric 256 pref medium
fe80::/64 dev ens3f0 proto kernel metric 256 pref medium
root@pmx1:~#

Sử dụng IPv4: Sử dụng ip route

Lưu ý: Để cho OSPF cho IPv4 hoạt động, bạn cần đặt địa chỉ IPv4/30 trên mỗi interface dùng để kết nối vào cluster.

Kiểm tra định tuyến OSPF và tính dự phòng

Sau khi bạn đã cấu hình OSPF và các interface, bạn nên thực hiện các bước kiểm tra sau:

  • Ping từ mọi node đến mọi node khác.
    • Ví dụ, để kiểm tra tính dự phòng, bạn có thể thử: ping fc00::1 (thay đổi địa chỉ IP để đảm bảo bạn có thể truy cập giữa tất cả các node).
  • Kiểm tra xem tất cả các node hàng xóm của bạn đã kết nối hoàn tất bằng lệnh: vtysh -c 'show ipv6 ospf6 neighbor'.
  • Chọn một trong các node của bạn và tắt một trong các interface 10G của node đó. Bạn có thể sử dụng lệnh sau để tắt interface: ip link set ens3f0 down. Hoặc bạn có thể rút dây cáp mạng tương ứng. LƯU Ý: Đừng làm điều này trên tất cả các node, chỉ thử nghiệm trên 1 node cùng một thời điểm.
  • Kiểm tra xem interface đã bị ngắt kết nối chưa bằng lệnh: ip link.
  • Kiểm tra lại xem node hàng xóm OSPF6 đã thay đổi. Bây giờ bạn chỉ thấy một node hàng xóm trên node này bằng lệnh: vtysh -c 'show ipv6 ospf6 neighbor'.
  • Tiếp tục thực hiện các lệnh ping từ mọi node đến mọi node khác, ví dụ: ping fc00::1. Nó vẫn hoạt động và bạn sẽ định tuyến qua một trong các node hàng xóm khác để truy cập tới node bị ngắt kết nối.
  • Kiểm tra bảng định tuyến của bạn bằng lệnh: ip -6 route bạn sẽ thấy bảng định tuyến đã thay đổi so với trước đó.
  • Để khôi phục interface bị tắt, bạn có thể sử dụng lệnh: ip link set ens3f0 up hoặc cắm lại cáp mạng. Bảng định tuyến sẽ thay đổi lại sau khoảng 15 giây.
  • Cuối cùng, kiểm tra lại bằng cách ping từ mọi node đến mọi node khác một lần nữa để đảm bảo hệ thống hoạt động bình thường: ping fc00::1.

Những bước kiểm tra này sẽ giúp bạn đảm bảo tính dự phòng và hoạt động của hệ thống OSPF.

Cập nhật file hosts

Shỉnh sửa file hosts: nano /etc/hosts, thêm các dòng sau:

fc00::1 pmx1.example.com pmx1
fc00::2 pmx2.example.com pmx2
fc00::3 pmx3.example.com pmx3

Ping từng máy chủ bằng tên và đảm bảo địa chỉ IPv6 được sử dụng.

Bạn nên khởi động lại các máy chủ và thực hiện lại tất cả các bài kiểm tra về định tuyến và tính dự phòng như đã mô tả ở trên để đảm bảo rằng việc khởi động lại không gây sự cố nào.

Xây dựng Cụm Ceph

  • Cài đặt Ceph trên pmx1 từ giao diện GUI Proxmox. Không cài đặt Ceph đồng thời trên các node khác.
  • Trong quá trình cấu hình, hãy đặt địa chỉ fc00::/64 làm mạng public network và network cluster
  • Hoàn tất việc cấu hình Ceph.
  • Cập nhật cấu hình Ceph bằng lệnh: vi /etc/ceph/ceph.conf.
cluster_network = fc00::/64
public_network = fc00::/64

Khởi động lại Ceph bằng lệnh:

systemctl restart ceph.target

Tương tự, cài đặt và cấu hình Ceph trên các node còn lại.

Kết luận

Khi đã hoàn thành các bước trên, bạn sẽ có thể thêm ổ cứng dạng OSD (Object Storage Daemon) vào cụm Ceph thông qua giao diện GUI của Proxmox hoặc cách khác mà bạn muốn.

Cụm của bạn sẽ chống chịu được việc các node bị tắt, các liên kết bị ngắt kết nối và nhiều tình huống khác.

Bạn cũng sẽ có khả năng quản lý một node đã mất kết nối quản lý thông qua việc truy cập nó qua một node khác (dịch vụ cụm Proxmox Corosync sử dụng network ring theo mặc định).

Bây giờ bạn có thể bắt đầu triển khai các máy ảo.

Leave a Reply

This site uses cookies to offer you a better browsing experience. By browsing this website, you agree to our use of cookies.