Nỗi ám ảnh mang tên IP_Management_v2_Final_Update.xlsx
Chắc hẳn anh em làm Network nào cũng từng trải qua cảm giác này: 2 giờ sáng, điện thoại rung bần bật. Sếp báo hệ thống lõi chập chờn, gói tin rớt liên tục ngay giờ cao điểm. Sau 3 tiếng mò mẫm trong mớ log rối rắm, bạn mới ngã ngửa: Một ông đồng nghiệp cũ đã âm thầm gán trùng IP của con server backup vào đúng Gateway dự phòng.
Lúc mở file Excel lên để đối chiếu, mình mới tá hỏa vì nó chưa được cập nhật suốt 6 tháng qua. Đó là bài học xương máu giúp mình nhận ra: Quản lý hạ tầng bằng cơm và Excel là tự sát. Để vận hành chuyên nghiệp, bạn cần một “Source of Truth” (Nguồn sự thật duy nhất) – và NetBox chính là giải pháp tiêu chuẩn hiện nay.
NetBox là gì? Tại sao không phải là một công cụ Scan IP?
Nhiều bạn thường nhầm NetBox với các công cụ như Angry IP Scanner. Thực tế, NetBox là sự kết hợp giữa IPAM (Quản lý địa chỉ IP) và DCIM (Quản lý hạ tầng trung tâm dữ liệu).
Điểm khác biệt nằm ở tư duy. NetBox không đi quét mạng để xem thiết bị nào đang online. Ngược lại, nó là nơi bạn định nghĩa mạng của mình nên trông như thế nào. Nếu NetBox ghi nhận IP 10.0.0.1 thuộc về Firewall, thì thực tế phải đúng như vậy. Mọi thay đổi cấu hình phải được cập nhật vào NetBox trước khi thực hiện trên thiết bị. Cách tiếp cận này giúp bạn kiểm soát hạ tầng thay vì chạy theo sau nó.
NetBox giúp bạn quản lý tập trung:
- IPAM: Quản lý Prefix, địa chỉ IP cá nhân, VRF và VLAN.
- DCIM: Quản lý Rack, thiết bị (Server, Switch Cisco/Juniper) và vị trí vật lý.
- Kết nối: Chi tiết từng sợi cáp mạng, cổng console và sơ đồ nguồn.
- Ảo hóa: Quản lý các cụm Cluster và máy ảo (VMs).
Chuẩn bị môi trường triển khai
Để ổn định nhất cho môi trường thực tế, mình khuyến khích cài đặt NetBox qua Docker Compose. Cách này giúp tách biệt PostgreSQL, Redis và ứng dụng NetBox. Việc backup hay nâng cấp sau này sẽ cực kỳ nhàn, chỉ mất khoảng 5-10 phút thay vì ngồi sửa lỗi thư viện Python.
Cấu hình đề nghị cho hệ thống khoảng 500-1000 thiết bị:
- OS: Ubuntu 22.04 LTS
- CPU: 2 Cores
- RAM: 4GB (NetBox chạy Django và Redis nên khá ngốn RAM)
- Disk: 20GB SSD
Bước 1: Cài đặt Docker và Docker Compose
Đầu tiên, hãy cập nhật hệ thống và cài đặt các gói bổ trợ:
sudo apt update
sudo apt install -y curl git apt-transport-https ca-certificates gnupg lsb-release
# Cài đặt Docker Engine
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update && sudo apt install -y docker-ce docker-ce-cli containerd.io
# Cài đặt Docker Compose v2
sudo curl -L "https://github.com/docker/compose/releases/download/v2.20.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
Bước 2: Tải Source Code NetBox Docker
Chúng ta sẽ sử dụng bản build từ cộng đồng NetBox chính thức để đảm bảo tính cập nhật:
git clone -b release https://github.com/netbox-community/netbox-docker.git
cd netbox-docker
Bước 3: Cấu hình tham số hệ thống
Trong thư mục dự án, hãy tạo file override để tùy chỉnh cổng truy cập nếu cần. Quan trọng nhất là tạo Secret Key để bảo mật session.
# Cấu hình port 8000 để truy cập web
tee docker-compose.override.yml <<EOF
services:
netbox:
ports:
- 8000:8080
EOF
# Tạo khóa bí mật ngẫu nhiên
echo "SECRET_KEY=$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 50)" >> .env
Bước 4: Khởi chạy dịch vụ
Bây giờ, Docker sẽ tự động tải các Image cần thiết về máy. Quá trình này nhanh hay chậm tùy thuộc vào tốc độ mạng của bạn.
sudo docker-compose pull
sudo docker-compose up -d
Sau khi lệnh chạy xong, hãy đợi khoảng 1 phút để cơ sở dữ liệu khởi tạo xong. Bạn có thể theo dõi tiến độ bằng lệnh: sudo docker-compose logs -f netbox.
Bước 5: Khởi tạo tài khoản quản trị
Để bắt đầu sử dụng, bạn cần tạo một tài khoản Superuser:
sudo docker-compose exec netbox /opt/netbox/netbox/manage.py createsuperuser
Sử dụng NetBox: Đi từ gốc đến ngọn
Truy cập http://<IP-Server>:8000 và đăng nhập. Để NetBox phát huy tác dụng, bạn cần nhập liệu theo đúng phân cấp logic thay vì nhảy vào điền IP ngay lập tức.
1. Thiết lập Site (Vị trí)
Mọi thiết bị cần có một “nhà” để ở. Hãy vào Organization > Sites để tạo mới. Ví dụ: “DC Quang Trung” hoặc “Văn phòng Quận 1”.
2. Khai báo Device Types
NetBox cần biết thông số kỹ thuật của thiết bị. Ví dụ, một con Switch Cisco C9300-24T có bao nhiêu cổng mạng? Việc định nghĩa mẫu (Template) giúp bạn thêm hàng loạt thiết bị cùng model sau này chỉ trong vài giây.
3. Quản lý IPAM chuyên nghiệp
Đừng nhập lẻ tẻ từng IP. Hãy bắt đầu bằng Prefixes. Ví dụ, bạn có dải 172.16.10.0/24 dành riêng cho VLAN Camera.
- Vào IPAM > Prefixes > Add.
- Khai báo dải IP và gán vào Site tương ứng.
Khi click vào Prefix này, NetBox sẽ liệt kê rõ IP nào đang trống (Container). Bạn chỉ cần nhấn dấu “+” để gán IP cho Server hoặc Switch. Rất trực quan và khó nhầm lẫn.
Kinh nghiệm thực tế: Đừng làm thủ công!
Sai lầm lớn nhất của mình khi mới dùng NetBox là cố gắng gõ tay thông tin của 200 con server. Đừng lặp lại sai lầm đó. NetBox sở hữu REST API rất mạnh mẽ. Hãy dùng script Python đơn giản để đẩy dữ liệu từ file Excel cũ vào hệ thống.
Một tính năng cực hay là Changelog. Mọi thao tác như rút cáp, đổi IP đều được ghi lại: ai làm, lúc nào, thay đổi gì. Đây là “cứu cánh” khi cần truy tìm nguyên nhân sự cố sau một đêm thức trắng.
Nếu bạn đang quản lý trên 50 thiết bị hoặc 3-4 VLAN, hãy cài NetBox ngay. Đừng đợi đến khi xảy ra xung đột IP mới bắt đầu đi tìm file Excel cũ nát.
Lời kết
NetBox không đơn thuần là phần mềm, nó là một tư duy quản trị hiện đại. Việc thiết lập ban đầu có thể hơi tốn công sức, nhưng giá trị nó mang lại là một hạ tầng ngăn nắp và sẵn sàng cho tự động hóa (Automation). Chúc anh em sớm thoát khỏi nỗi lo mang tên Excel!

