Trong thế giới của các trung tâm dữ liệu hiện đại, việc tối ưu hóa hiệu suất và khả năng mở rộng của hệ thống mạng là vô cùng quan trọng. Dòng switch Spectrum của Nvidia, với nền tảng Linux mạnh mẽ, đã trở thành một lựa chọn hàng đầu cho các kiến trúc mạng tiên tiến như EVPN-VXLAN.
Tuy nhiên, việc cấu hình những thiết bị này có thể phức tạp, đòi hỏi sự hiểu biết kỹ lưỡng về từng dòng lệnh. Bài viết này sẽ nêu chi tiết chi tiết, giúp bạn đi sâu vào từng lệnh cấu hình, từ những thiết lập cơ bản đến các giải pháp nâng cao, để bạn có thể làm chủ hoàn toàn switch Nvidia Spectrum của mình.
- Cấu Hình Cơ Bản
🔹Tạo udev rule để đồng bộ tên cổng phần mềm với cổng vật lý
SUBSYSTEM==”net”, ACTION==”add”, DRIVERS==”mlxsw_spectrum*”, NAME=”sw$attr[phys_port_name]”‘ > /etc/udev/rules.d/10-local.rules
Giải thích:
Mục đích: Trên Linux, các cổng mạng (netdev) thường có tên mặc định như eth0, eth1,… Lệnh này giúp đổi tên chúng thành swp1, swp2,… tương ứng với số cổng vật lý trên switch.
Chi tiết từng phần:
- SUBSYSTEM==“net”: Áp dụng rule cho thiết bị mạng.
- DRIVERS==“mlxsw_spectrum*”: Chỉ áp dụng cho driver Nvidia Spectrum.
- NAME=“sw$attr[phys_port_name]”: Đặt tên cổng dựa trên thuộc tính vật lý (ví dụ: cổng 1 → sw1).
Tại sao cần phải đồng bộ :
- Giúp quản lý cổng dễ dàng hơn (biết ngay swp9 là cổng số 9 trên switch).
- Tránh nhầm lẫn khi cấu hình VLAN/Bridge.
Lệnh kèm theo:
udevadm control –reload-rules && udevadm trigger
Giải thích:
- udevadm control –reload-rules: Tải lại rule mới.
- udevadm trigger: Kích hoạt áp dụng rule ngay lập tức.
🔹 Cấu hình địa chỉ IP và MTU cho cổng
ip link set dev swp1 up mtu 9216
Giải thích:
Mục đích: Bật cổng swp1 và đặt MTU (Maximum Transmission Unit) thành 9216 byte.
Chi tiết:
- ip link set dev swp1 up: Kích hoạt cổng swp1.
- mtu 9216: Đặt kích thước gói tin tối đa là 9216 byte (phù hợp cho mạng data center, hỗ trợ jumbo frames).
- Tại sao cần dùng?:
- MTU lớn giúp tăng hiệu suất truyền dữ liệu (ít phân mảnh gói tin).
- Bắt buộc nếu dùng VxLAN/RoCE (cần overhead cho encapsulation).
🔹 Tạo VLAN-aware bridge
ip link add name br0 type bridge vlan_filtering 1 vlan_default_pvid 0
Giải thích:
Mục đích: Tạo một bridge (switch ảo) hỗ trợ VLAN.
Chi tiết:
- type bridge: Tạo thiết bị bridge.
- vlan_filtering 1: Bật lọc VLAN (chỉ gói tin có VLAN được phép mới qua bridge).
- vlan_default_pvid 0: Không gán VLAN mặc định (PVID = 0 nghĩa là không tag).
- Tại sao cần dùng?:
- Bridge thông thường không hỗ trợ VLAN. Tính năng này giúp chia tách traffic theo VLAN.
- Cấu Hình Nâng Cao
🔹Thêm cổng vào bridge và gán VLAN
ip link set dev swp9 master br0
bridge vlan add vid 10 dev swp9 untagged pvid
Giải thích:
Mục đích: Gán cổng swp9 vào bridge br0 và cấu hình VLAN 10 làm VLAN truy cập (access port).
Chi tiết:
- ip link set dev swp9 master br0: Thêm swp9 vào bridge br0.
- bridge vlan add vid 10: Thêm VLAN 10 vào cổng.
- untagged: Gói tin ra khỏi cổng sẽ bỏ tag VLAN.
- pvid: Gói tin vào cổng không tag sẽ được gán VLAN 10.
- Ví dụ thực tế:
- Máy chủ kết nối vào swp9 gửi gói tin không tag → switch tự động gán VLAN 10.
- Gói tin từ VLAN 10 ra swp9 sẽ bỏ tag.
🔹Cấu hình VxLAN Interface
ip link add name vx10010 type vxlan id 10 local 1.1.1.1 dstport 4789 nolearning
Giải thích:
Mục đích: Tạo tunnel VxLAN để mở rộng Layer 2 qua IP network.
Chi tiết:
- type vxlan: Tạo interface VxLAN.
- id 10: VNI (VxLAN Network Identifier) = 10.
- local 1.1.1.1: Địa chỉ nguồn của tunnel (loopback IP của switch).
- dstport 4789: Port mặc định của VxLAN.
- nolearning: Tắt tự động học MAC qua VxLAN (dùng EVPN thay thế).
- Tại sao cần dùng?:
- Để kết nối các VLAN 10 ở nhiều switch khác nhau qua mạng IP.
🔹 Cấu hình BGP EVPN trong FRR
vtysh
configure terminal
router bgp 65011
neighbor fabric peer-group
address-family l2vpn evpn
neighbor fabric activate
advertise-all-vni
Giải thích:
Mục đích: Dùng BGP EVPN để tự động quảng bá thông tin VxLAN (thay thế cho flood-and-learn).
Chi tiết:
- router bgp 65011: Bật BGP với AS số 65011.
- neighbor fabric peer-group: Nhóm các BGP neighbor (spine switches).
- address-family l2vpn evpn: Chọn chế độ EVPN.
- advertise-all-vni: Tự động quảng bá tất cả VNI.
- Tại sao cần dùng?:
- Giảm traffic multicast trong VxLAN.
- Hỗ trợ tính năng advanced như distributed gateway.
- Troubleshooting
🔹 Lệnh Kiểm tra BGP Neighbors
vtysh -c ‘show ip bgp summary’
Giải thích:
Mục đích: Xem trạng thái kết nối BGP với các neighbor.
Output mẫu:
- Neighbor V AS MsgRcvd MsgSent TblVer Up/Down State/PfxRcd
- 0.0.1 4 65020 100 105 0 00:05:30 Estab
Ý nghĩa:
- State/PfxRcd: Estab = BGP đã thiết lập thành công.
- MsgRcvd/MsgSent: Số gói tin BGP đã gửi/nhận.
🔹 Lệnh Kiểm tra MAC Address Table
bridge fdb show
Giải thích:
Mục đích: Xem bảng địa chỉ MAC học được trên bridge.
Output mẫu:
- 00:11:22:33:44:55 dev swp1 vlan 10 master br0
Phân tích:
- MAC 00:11:22:33:44:55 kết nối vào cổng swp1, VLAN 10.
Kết Luận
Mỗi lệnh trong cấu hình Nvidia Spectrum Linux Switch đều có mục đích rõ ràng:
- Lệnh hệ thống (udev, ip link): Chuẩn bị môi trường.
- Lệnh bridge/VLAN: Tạo switch ảo và phân chia VLAN.
- Lệnh VxLAN/BGP: Mở rộng Layer 2/Layer 3.
- Lệnh troubleshooting: Kiểm tra trạng thái hoạt động.
Hy vọng bài viết giúp bạn hiểu rõ từng dòng lệnh về việc cấu hình trên Switch Spectrum của Nvidia !
Bài viết liên quan
- NVIDIA: Công nghệ Silicon Photonics và Co-Packaged Optics – Thay đổi cuộc chơi trong kỷ nguyên AI và HPC
- Tìm hiểu các công nghệ mạng của NVIDIA: Nền tảng cho HPC và AI
- Fibre Channel (FC): Trục xương sống của hệ thống lưu trữ hiệu suất cao và tin cậy
- AI và Network: Hai mặt của đồng xu định hình hạ tầng điện toán tương lai
- NVIDIA Spectrum-X Photonics, bộ chuyển mạch quang tử giúp mở rộng AI Factory lên hàng triệu GPU