Cách cài đặt công cụ giám sát mạng OpenNMS trong CentOS 8

theanh

Administrator
Nhân viên
OpenNMS là một nền tảng giám sát mạng và quản lý mạng miễn phí và mã nguồn mở được sử dụng để quản lý mạng doanh nghiệp trên toàn thế giới. Nền tảng này dựa trên Java và được thiết kế để quản lý hàng nghìn thiết bị từ một vị trí trung tâm. Nó có khả năng tự động khám phá và giám sát các dịch vụ hoặc nút trong mạng của bạn.

Tính năng
  • Hỗ trợ SNMP, JMX, WMI, NPRE, NSCLient++ và XMP
  • Kiến trúc hướng sự kiện
  • Hỗ trợ giám sát thiết bị và ứng dụng
  • Khám phá kiểu và sự cố đường dẫn
  • Cấu hình và thực thi Trình giám sát dịch vụ
  • Hỗ trợ các cấu trúc mạng Lớp 2 và Lớp 3
Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt và cấu hình OpenNMS trên máy chủ CentOS 8.

Điều kiện tiên quyết​

  • Máy chủ chạy CentOS 8.
  • Mật khẩu gốc được cấu hình cho máy chủ.

Bắt đầu​

OpenNMS là ứng dụng dựa trên Java. Vì vậy, bạn sẽ cần cài đặt Java vào hệ thống của mình. Bạn có thể cài đặt nó với các gói cần thiết khác bằng cách chạy lệnh sau:
Mã:
dnf install java-11-openjdk-devel curl unzip -y
Sau khi cài đặt Java, bạn có thể xác minh phiên bản java bằng lệnh sau:
Mã:
java -version
Bạn sẽ nhận được kết quả sau:
Mã:
openjdk version "11.0.9" 2020-10-20 LTSOpenJDK Runtime Environment 18.9 (bản dựng 11.0.9+11-LTS)OpenJDK 64-Bit Server VM 18.9 (bản dựng 11.0.9+11-LTS, chế độ hỗn hợp, chia sẻ)
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Cài đặt OpenNMS​

Theo mặc định, OpenNMS không có trong kho lưu trữ mặc định của CentOS 8. Vì vậy, bạn sẽ cần thêm kho lưu trữ OpenNMS vào hệ thống của mình.

Đầu tiên, thêm khóa GPG bằng lệnh sau:
Mã:
rpm --import https://yum.opennms.org/OPENNMS-GPG-KEY
Sau khi thêm khóa GPG, hãy chạy lệnh sau để thêm kho lưu trữ OpenNMS.
Mã:
dnf install https://yum.opennms.org/repofiles/opennms-repo-stable-rhel8.noarch.rpm
Tiếp theo, bạn có thể cài đặt OpenNMS bằng cách chạy lệnh sau:
Mã:
dnf install opennms -y
Lệnh này sẽ cài đặt OpenNMS, PostgreSQL và các gói khác trên máy chủ của bạn.

Cấu hình PostgreSQL​

OpenNMS sử dụng PostgreSQL làm cơ sở dữ liệu phụ trợ. Bạn có thể khởi tạo cơ sở dữ liệu PostgreSQL bằng lệnh sau:
Mã:
postgresql-setup --initdb --unit postgresql
Bạn sẽ nhận được kết quả sau:
Mã:
* Đang khởi tạo cơ sở dữ liệu trong '/var/lib/pgsql/data' * Đã khởi tạo, nhật ký nằm trong /var/lib/pgsql/initdb_postgresql.log
Tiếp theo, khởi động dịch vụ PostgreSQL và cho phép dịch vụ này khởi động khi khởi động lại hệ thống bằng lệnh sau:
Mã:
systemctl enable postgresql
systemctl start postgresql
Tiếp theo, bạn sẽ cần tạo cơ sở dữ liệu và người dùng cho PostgreSQL.

Đầu tiên, hãy đăng nhập vào PostgreSQL bằng lệnh sau:
Mã:
su - postgres
Sau khi đăng nhập, hãy tạo người dùng bằng lệnh sau:
Mã:
[postgres@centos8 ~]$ createuser -P opennms
Bạn sẽ được yêu cầu đặt mật khẩu như hiển thị bên dưới:
Mã:
Nhập mật khẩu cho vai trò mới:Nhập lại lần nữa:
Tiếp theo, tạo cơ sở dữ liệu bằng lệnh sau:
Mã:
[postgres@centos8 ~]$ createdb -O opennms opennms
Tiếp theo, đặt mật khẩu cho người dùng PostgreSQL bằng lệnh sau;
Mã:
[postgres@centos8 ~]$ psql -c "ALTER USER postgres WITH PASSWORD 'password';"
Tiếp theo, thoát khỏi shell PostgreSQL bằng lệnh sau:
Mã:
[postgres@centos8 ~]$ exit;
Tiếp theo, bạn sẽ cần sửa đổi chính sách truy cập cho PostgreSQL. Bạn có thể thực hiện bằng cách chỉnh sửa tệp /var/lib/pgsql/data/pg_hba.conf:
Mã:
nano /var/lib/pgsql/data/pg_hba.conf
Tìm các dòng sau:
Mã:
# IPv4 local connections:host all all 127.0.0.1/32 ident# IPv6 local connections:host all all ::1/128 ident
Và thay thế chúng bằng các dòng sau:
Mã:
host all all 127.0.0.1/32 md5host all all ::1/128 md5
Lưu và đóng tệp, sau đó khởi động lại dịch vụ PostgreSQL để áp dụng các thay đổi:
Mã:
systemctl restart postgresql
Tiếp theo, bạn sẽ cần định nghĩa cơ sở dữ liệu của mình trong /opt/opennms/etc/opennms-datasources.xml file.
Mã:
nano /opt/opennms/etc/opennms-datasources.xml
Thay đổi các dòng sau cho phù hợp với cơ sở dữ liệu của bạn:
Mã:
Lưu và đóng tệp khi bạn hoàn tất.

Khởi tạo và khởi động OpenNMS​

Tiếp theo, bạn sẽ cần khởi tạo OpenNMS. Trước tiên, thêm các thiết lập Java bằng lệnh sau:
Mã:
/opt/opennms/bin/runjava -s
Bạn sẽ nhận được kết quả sau:
Mã:
runjava: Đang tìm kiếm một JVM phù hợp...runjava: Đang kiểm tra một JVM phù hợp trong JAVA_HOME...runjava: Đang bỏ qua... JAVA_HOME chưa được thiết lập.runjava: Đang kiểm tra JVM trong PATH: "/etc/alternatives/java"...runjava: Không tìm thấy một JVM phù hợp trong PATH: "/etc/alternatives/java"runjava: Đang tìm kiếm một JVM tốt...runjava: Đã tìm thấy một JVM tốt trong "/usr/lib/jvm/java-11-openjdk-11.0.9.11-0.el8_2.x86_64/bin/java".runjava: Giá trị của "/usr/lib/jvm/java-11-openjdk-11.0.9.11-0.el8_2.x86_64/bin/java" được lưu trữ trong tệp cấu hình.
Tiếp theo, khởi tạo cơ sở dữ liệu bằng cách chạy lệnh sau:
Mã:
/opt/opennms/bin/install -dis
Tiếp theo, bật OpenNMS để khởi động khi khởi động lại hệ thống bằng lệnh sau:
Mã:
systemctl enable --now opennms
Bạn sẽ nhận được kết quả sau:
Mã:
Đồng bộ hóa trạng thái của opennms.service với tập lệnh dịch vụ SysV với /usr/lib/systemd/systemd-sysv-install.Đang thực thi: /usr/lib/systemd/systemd-sysv-install enable opennmsĐã tạo liên kết tượng trưng /etc/systemd/system/multi-user.target.wants/opennms.service → /usr/lib/systemd/system/opennms.service.
Bây giờ, bạn có thể kiểm tra trạng thái của dịch vụ OpenNMS bằng lệnh sau:
Mã:
systemctl status opennms
Bạn sẽ nhận được kết quả sau:
Mã:
? opennms.service - Máy chủ OpenNMS Đã tải: đã tải (/usr/lib/systemd/system/opennms.service; đã bật; cài đặt trước của nhà cung cấp: đã tắt) Đang hoạt động: đang hoạt động (đang chạy) kể từ Thứ 4, ngày 25 tháng 11 năm 2020 lúc 09:21:32 EST; 13 giây trước Tiến trình: 26880 ExecStart=/etc/init.d/opennms -s start (code=exited, status=0/SUCCESS) PID chính: 27928 (java) Nhiệm vụ: 67 (giới hạn: 12523) Bộ nhớ: 555,6M CGroup: /system.slice/opennms.service ??27927 bash /etc/init.d/opennms -s start ??27928 /usr/lib/jvm/java-11-openjdk-11.0.9.11-0.el8_2.x86_64/bin/java --add-modules=java.base,java.compiler,java.datatransfer,java>25/11 09:21:42 centos8 opennms[26880]: [DEBUG] Thuộc tính hệ thống 'opennms.library.jicmp' được đặt thành '/usr/lib64/libjicmp.so. Đang cố gắng tải ji>25/11 09:21:42 centos8 opennms[26880]: [INFO] Đã tải thành công thư viện jicmp.25/11 09:21:42 centos8 opennms[26880]: [DEBUG] Thuộc tính hệ thống 'opennms.library.jicmp' được đặt thành '/usr/lib64/libjicmp.so. Đang cố gắng tải ji>25/11 09:21:42 centos8 opennms[26880]: [INFO] Đã tải thành công thư viện jicmp.25/11 09:21:42 centos8 opennms[26880]: [DEBUG] Thuộc tính hệ thống 'opennms.library.jicmp6' được đặt thành '/usr/lib64/libjicmp6.so. Đang cố gắng tải >25/11 09:21:42 centos8 opennms[26880]: [INFO] Đã tải thành công thư viện jicmp6.25/11 09:21:42 centos8 opennms[26880]: [DEBUG] Thuộc tính hệ thống 'opennms.library.jicmp' được đặt thành '/usr/lib64/libjicmp.so. Đang cố gắng tải ji>25/11 09:21:42 centos8 opennms[26880]: [INFO] Đã tải thành công thư viện jicmp.25/11 09:21:42 centos8 opennms[26880]: [DEBUG] Thuộc tính hệ thống 'opennms.library.jicmp6' được đặt thành '/usr/lib64/libjicmp6.so. Đang cố gắng tải >25/11 09:21:42 centos8 opennms[26880]: [INFO] Đã tải thành công thư viện jicmp6.
Tại thời điểm này, OpenNMS đã được khởi động và đang lắng nghe trên cổng 8980. Bạn có thể kiểm tra bằng lệnh sau:
Mã:
ss -antpl | grep :8980
Bạn sẽ nhận được kết quả sau:
Mã:
LISTEN 0 50 *:8980 *:* users:(("java",pid=27928,fd=988))
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Cấu hình SELinux và Tường lửa​

Theo mặc định, SELinux được bật trong máy chủ CentOS 8. Vì vậy, trước tiên bạn sẽ cần phải tắt nó. Bạn có thể vô hiệu hóa nó bằng cách chỉnh sửa tệp /etc/selinux/config:
Mã:
nano /etc/selinux/config
Tìm dòng sau:
Mã:
SELINUX=enforcing
Và thay thế bằng dòng sau:
Mã:
SELINUX=permissive
Lưu và đóng tệp rồi khởi động lại hệ thống để áp dụng các thay đổi.

Tiếp theo, cho phép cổng 8980 thông qua firewalld bằng lệnh sau:
Mã:
firewall-cmd --permanent --add-port=8980/tcp
Tiếp theo, tải lại firewalld để áp dụng các thay đổi:
Mã:
firewall-cmd --reload
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Truy cập Giao diện Web OpenNMS​

Bây giờ, hãy mở trình duyệt web của bạn và truy cập giao diện web OpenNMS bằng URL . Bạn sẽ được chuyển hướng đến trang đăng nhập OpenNMS:



Cung cấp tên người dùng quản trị mặc định là admin và mật khẩu là admin, sau đó nhấp vào nút Đăng nhập. Bạn sẽ thấy trang sau:



Nhấp vào Chọn tham gia để gửi số liệu thống kê sử dụng ẩn danh đến OpenNMS. Bạn sẽ thấy bảng điều khiển OpenNMS trong trang sau:



Nhấp vào Quản trị => Đổi mật khẩu để thay đổi mật khẩu mặc định. Bạn sẽ thấy trang sau:



Thay đổi mật khẩu mặc định của bạn và nhấp vào nút Gửi. Bạn sẽ thấy trang sau:



Nhấp vào biểu tượng + để thêm máy chủ mới. Bạn sẽ thấy trang sau:



Cung cấp tên yêu cầu mới và nhấp vào nút OK. Bạn sẽ thấy trang sau:





Cung cấp thông tin chi tiết về máy chủ từ xa của bạn và nhấp vào nút Cung cấp. Sau khi máy chủ được thêm vào, bạn sẽ thấy trang sau:



Bây giờ, hãy nhấp vào Thông tin => Nút. Bạn sẽ nhận được thông tin chi tiết về máy chủ từ xa trong trang sau:


Kết luận​

Xin chúc mừng! Bạn đã cài đặt thành công OpenNMS trên máy chủ CentOS 8. Bây giờ bạn có thể thêm máy chủ mạng và thiết bị không giới hạn vào OpenNMS và bắt đầu giám sát từ vị trí trung tâm.
 
Back
Bên trên