Cách cài đặt và cấu hình Grafana để vẽ đồ thị đẹp từ Zabbix trên CentOS 7
Zabbix là một công cụ giám sát tuyệt vời thu thập dữ liệu từ server , máy ảo và các loại thiết bị mạng khác để bạn có thể phân tích xu hướng hoặc sự cố. Nó có nhiều tính năng thông báo về các vấn đề mới nổi, nhưng các công cụ tích hợp để phân tích và trực quan hóa dữ liệu không dễ sử dụng. Bạn có thể kết hợp đồ thị thành trang tổng quan, nhưng trước tiên bạn cần tạo chúng và thực tế không có cách nào dễ dàng để tạo đồ thị hiển thị dữ liệu thời gian thực. Ngoài ra, không có cách nào để thu thập dữ liệu từ các server khác nhau vào một biểu đồ. Mặc dù tình hình đang trở nên tốt hơn với mỗi bản phát hành mới, nhưng điều đó vẫn còn xa lý tưởng.Grafana là một sự thay thế tốt cho các console của Zabbix. Nó cho phép bạn tạo đồ thị và trang tổng quan dựa trên dữ liệu từ các hệ thống giám sát khác nhau và nó chuyên về hiển thị và phân tích dữ liệu này. Nó nhẹ, dễ cài đặt và trông đẹp mắt.
Trong hướng dẫn này, bạn sẽ cài đặt Grafana và cấu hình nó để hiển thị dữ liệu từ Zabbix và bạn sẽ học cách tạo console tùy chỉnh của riêng mình để giám sát việc sử dụng CPU và file .
Yêu cầu
Để làm theo hướng dẫn này, bạn cần :
- Hai server CentOS 7 được cấu hình với user không phải root có quyền sudo , với Zabbix được cài đặt trên một server và ứng dụng client Zabbix được cài đặt trên server khác. Làm theo hướng dẫn Cách cài đặt và cấu hình Zabbix để giám sát an toàn server từ xa trên CentOS 7 và các yêu cầu của nó để cấu hình các server này.
Bước 1 - Cài đặt Grafana
Trước khi có thể sử dụng Grafana, ta cần cài đặt nó. Ta sẽ sử dụng cùng một server mà ta đã sử dụng cho server Zabbix. Đăng nhập vào server Zabbix của bạn bằng user không phải root của bạn:
- ssh sammy@your_zabbix_server_ip_address
Grafana không có sẵn thông qua trình quản lý gói theo mặc định, vì vậy ta sẽ cài đặt file cấu hình repository . Đầu tiên, hãy tạo một file repository mới cho Grafana:
- sudo vi /etc/yum.repos.d/grafana.repo
Dán dữ liệu cấu hình sau vào file :
[grafana] name=grafana baseurl=https://packagecloud.io/grafana/stable/el/6/$basearch repo_gpgcheck=1 enabled=1 gpgcheck=1 gpgkey=https://packagecloud.io/gpg.key https://grafanarel.s3.amazonaws.com/RPM-GPG-KEY-grafana sslverify=1 sslcacert=/etc/pki/tls/certs/ca-bundle.crt
Sau đó, lưu và thoát khỏi editor và chạy lệnh sau để cài đặt Grafana:
- sudo yum install grafana
Trong quá trình cài đặt, bạn cần nhập khóa GPG. Xác nhận bạn muốn nhập khóa này để quá trình cài đặt có thể tiếp tục.
Sau khi cài đặt hoàn tất, hãy bắt đầu dịch vụ Grafana:
- sudo systemctl daemon-reload
- sudo systemctl start grafana-server
Sau đó, kiểm tra xem dịch vụ Grafana có chạy đúng cách hay không:
- sudo systemctl status grafana-server
Bạn sẽ thấy trạng thái sau:
Output● grafana-server.service - Starts and stops a single grafana instance on this system Loaded: loaded (/usr/lib/systemd/system/grafana-server.service; enabled; vendor preset: disabled) Active: active (running) since Mon 2016-11-07 06:18:27 UTC; 1 day 4h ago Docs: http://docs.grafana.org Main PID: 16639 (grafana-server) ...
Cuối cùng, kích hoạt dịch vụ để bắt đầu lúc khởi động:
- sudo systemctl enable grafana-server
Grafana đang chạy, vì vậy hãy cài đặt thành phần cho phép Grafana lấy dữ liệu từ Zabbix.
Bước 2 - Cài đặt Plugin Zabbix cho Grafana
Bạn có thể mở rộng chức năng của Grafana bằng cách cài đặt các plugin. Bạn có thể khám phá các plugin có sẵn tại đây . Có ba loại plugin:
- Panels : các khối mới được dùng trên trang tổng quan, chẳng hạn như biểu đồ hình tròn hoặc biểu đồ.
- Nguồn dữ liệu : phần backend lưu trữ mới cho dữ liệu chuỗi thời gian của bạn, vì vậy bạn có thể lấy dữ liệu từ các nguồn khác.
- Ứng dụng : các plugin phức tạp gói các nguồn và bảng dữ liệu trong một gói duy nhất.
Ta sẽ sử dụng plugin ứng dụng Zabbix , bao gồm nguồn dữ liệu Zabbix, bảng trình kích hoạt, console server Zabbix và một mẫu để xem dữ liệu.
Cách dễ nhất để cài đặt plugin là sử dụng công cụ CLI grafana-cli
đi kèm với Grafana. Chạy lệnh sau để cài đặt plugin Ứng dụng Zabbix:
- sudo grafana-cli plugins install alexanderzobnin-zabbix-app
Bạn sẽ thấy kết quả sau, cho biết rằng plugin đã được cài đặt:
Output✔ Installed alexanderzobnin-zabbix-app successfully
Khi nào bạn thêm hoặc sửa đổi các plugin, bạn phải khởi động lại grafana-server
để các thay đổi có hiệu lực.
- sudo systemctl restart grafana-server
Với plugin được cài đặt, bạn có thể đăng nhập vào Grafana và cấu hình nó để nói chuyện với Zabbix.
Bước 3 - Cấu hình Plugin Zabbix
Đăng nhập vào giao diện web Grafana bằng cách chuyển đến địa chỉ http:// your_zabbix_server_ip_address :3000
.
Lưu ý : Grafana lắng nghe các kết nối đến trên cổng 3000
. Nếu bạn đã cấu hình firewall , bạn cần mở cổng này. Xem lại hướng dẫn này để tìm hiểu về firewall trong CentOS nếu bạn gặp sự cố.
Thông tin đăng nhập mặc định là admin / admin
. Bạn có thể thay đổi password của bạn trên trang Hồ sơ sau khi đăng nhập. Khi đăng nhập, bạn sẽ được chào đón bởi Trang tổng quan chính .
Truy cập menu chính của Grafana bằng cách nhấp vào biểu tượng Grafana ở góc trên cùng bên trái của giao diện user . Sau đó chọn Plugins. Sau đó chọn tab Ứng dụng . Sau đó nhấp vào ứng dụng Zabbix và kích hoạt nó bằng cách nhấn nút Bật .
Đến đây bạn có thể thêm một nguồn dữ liệu mới. Chọn lại biểu trưng Grafana và chuyển đến Nguồn dữ liệu. Sau đó nhấp vào nút Thêm nguồn dữ liệu . Bạn sẽ thấy trang cấu hình cho nguồn dữ liệu:
Cấu hình nguồn dữ liệu như sau:
- Nhập tên cho nguồn dữ liệu mới này vào trường Tên .
- Chọn tùy chọn Mặc định để nguồn dữ liệu này sẽ được chọn trước trong các bảng mới bạn tạo.
- Chọn Zabbix từ danh sách thả xuống Loại .
- Điền vào trường Url với đường dẫn đầy đủ đến API Zabbix, sẽ là
http:// your_zabbix_server_ip_address /zabbix/api_jsonrpc.php
. - Điền vào các trường Tên user và Mật khẩu với tên user và password cho Zabbix. Tên user mặc định là
admin
và password mặc định làzabbix
. - Bật tùy chọn Xu hướng ; nó sẽ tăng hiệu suất của Grafana khi hiển thị khoảng thời gian dài.
Bạn có thể để các tùy chọn khác ở giá trị mặc định của chúng.
Nhấp vào nút Thêm để kiểm tra và lưu cấu hình. Bạn sẽ thấy một thông báo thành công giống như sau:
Nếu bạn không thấy thông báo này, hãy kiểm tra thông tin đăng nhập của bạn và kiểm tra lại.
Bây giờ ta hãy nhìn vào console Zabbix đi kèm với plugin. Chọn Control panel server Zabbix từ danh sách thả xuống ở đầu màn hình. Khi bạn chọn nó, trang tổng quan sẽ hiển thị thông tin về server Zabbix của bạn:
Trang tổng quan này khá nhiều thông tin, nhưng bạn có thể tạo trang tổng quan tùy chỉnh của riêng mình từ đầu.
Bước 4 - Tạo Trang tổng quan Zabbix tùy chỉnh
Hãy tạo một console cho Zabbix để hiển thị cho ta việc sử dụng CPU và thông tin hệ thống file trong thời gian thực.
Mở danh sách thả xuống trên đầu màn hình và nhấp vào nút Tạo mới . Một console trống mới sẽ được tạo.
Mỗi trang tổng quan bao gồm các hàng chứa các khối. Khi bạn tạo một trang tổng quan mới, bạn sẽ tự động nhận được một hàng. Nhấp vào menu màu xanh lá cây ở bên trái hàng để truy cập menu hành động của hàng. Tại đây, bạn có thể thêm bảng mới, đặt chiều cao của hàng, di chuyển hàng, thu gọn hoặc xóa hàng.
Đầu tiên, ta sẽ tạo một biểu đồ hiển thị mức sử dụng CPU của server Zabbix của ta . Chọn mục Thêm bảng và sau đó nhấp vào Biểu đồ để chèn một biểu đồ mới vào hàng.
Bạn sẽ được chào đón bằng một biểu mẫu có một số tab, với tab Số liệu được chọn. Vì ta đã đặt nguồn dữ liệu Zabbix của bạn làm mặc định, một truy vấn mới đã được thêm cho bạn. Bạn chỉ cần chỉ định các tùy chọn sau:
- Đặt Group
Zabbix servers
. - Đặt Server lưu trữ thành
Zabbix server
. - Đặt Ứng dụng thành
CPU
. - Đặt Mục thành
Processor load (1 min average per core)
.
Bạn sẽ thấy tải bộ xử lý hiện tại trên biểu đồ.
Sau đó, chuyển đến tab Chung và đặt trường Tiêu đề thành Processor load
và đặt tùy chọn Khoảng cách thành 6
. Một hàng có thể chứa tối đa 12 khối, vì vậy việc đặt giá trị này thành 6 sẽ khiến console chiếm một nửa màn hình.
Đến đây bạn có thể nhấp vào Quay lại trang tổng quan để xem kết quả:
Lưu ý : Nếu bạn không nhìn thấy bất kỳ dữ liệu nào, bạn có thể bị thu nhỏ quá xa. Nhấp vào biểu tượng đồng hồ ở phía trên bên phải của giao diện và chọn * 1 giờ qua từ danh sách các tùy chọn.
Hãy thêm một biểu đồ khác. Để thực hiện việc này, bạn có thể lặp lại các bước trước đó hoặc sao chép biểu đồ hiện có. Để sao chép biểu đồ hiện có, hãy chọn tiêu đề console và nhấp vào Sao chép . Sau đó, chọn tiêu đề của biểu đồ mới và chọn tùy chọn Chỉnh sửa . Sau đó, áp dụng các cài đặt sau:
- Thay đổi Tiêu đề thành
CPU usage
. - Chọn tab Số liệu và thay đổi trường Mục thành
/CPU.*/
.
Bạn có thể sử dụng các mẫu Biểu thức chính quy cho tên server hoặc số liệu. Chỉ cần đảm bảo bao bọc mẫu trong các dấu gạch chéo về phía trước ( /
).
Bạn cũng có thể hiển thị thống kê tóm tắt. Chọn tab Chú giải và bạn sẽ thấy một số tùy chọn và giá trị mà bạn có thể chọn.
- Trong Tùy chọn , chọn Dưới dạng bảng và Ở Bên phải .
- Trong Giá trị , hãy chọn Tối thiểu , Tối đa , Trung bình và Hiện tại .
Bây giờ hãy nhấp vào Quay lại trang tổng quan để xem kết quả, kết quả trông như sau :
Tiếp theo, thêm bảng Singlestat để hiển thị một giá trị duy nhất cho một số liệu cụ thể. Tạo một hàng mới bằng cách nhấp vào nút Thêm hàng , sau đó chọn menu của hàng, chọn Thêm bảng và chọn mục Singlestat .
Đặt các tùy chọn Chỉ số như sau:
- Đặt Group
Zabbix servers
. - Đặt Server lưu trữ thành
Zabbix server
. - Đặt Ứng dụng thành
Filesystems
. - Đặt Mục thành
Free disk space on / (percentage)
.
Tiếp theo, chuyển sang tab Chung và đặt trường Tiêu đề thành Free disk space on /
.
Sau đó, chuyển sang tab Tùy chọn và cấu hình các tùy chọn này:
- Bật tùy chọn
Show
cho Gauge . - Đặt Ngưỡng thành
10,20
. Điều này sẽ hiển thị các ngưỡng này trên máy đo. - Chọn tùy chọn
current
từ danh sách Giá trị thả xuống.
Máy đo bây giờ trông như thế này:
Quay lại trang tổng quan và nhấn CTRL+S
để lưu nó.
Bây giờ, ta hãy kiểm tra cách thước đo này phản ứng với các sự kiện thời gian thực.Để làm như vậy, ta sẽ giảm dung lượng trống trên đĩa theo cách thủ công và xem những gì console hiển thị.
Đăng nhập vào server Zabbix của bạn nếu bạn hiện chưa đăng nhập:
- ssh sammy@your_zabbix_server_ip_address
Sau khi đăng nhập, hãy xác định dung lượng trống trên hệ thống file . Bạn có thể thực hiện việc này bằng lệnh df
:
- df -h
Bạn sẽ thấy kết quả sau:
OutputFilesystem Size Used Avail Use% Mounted on /dev/vda1 20G 1.5G 18G 8% / devtmpfs 236M 0 236M 0% /dev tmpfs 245M 0 245M 0% /dev/shm tmpfs 245M 8.3M 237M 4% /run tmpfs 245M 0 245M 0% /sys/fs/cgroup tmpfs 49M 0 49M 0% /run/user/0
Trong trường hợp này, có 18 GB dung lượng trống. Dung lượng trống trên server của bạn sẽ khác nhau. Giảm dung lượng trống trên phân vùng root dưới ngưỡng 20% bằng cách sử dụng lệnh fallocate
để tạo một file tạm thời lớn:
- fallocate -l 15G /tmp/test.img
Đặt kích thước file tùy thuộc vào dung lượng trống trên server của bạn.
Sau đó, hãy cho Zabbix vài phút để cập nhật dữ liệu của nó. Làm mới trang tổng quan và bạn sẽ thấy rằng đồng hồ đo đã thay đổi màu sắc của nó để phản ánh vấn đề về dung lượng trống:
Cuối cùng, hãy hiển thị các trình kích hoạt Zabbix đang hoạt động trên console . Tạo một hàng mới, sau đó chọn menu của hàng, chọn Thêm bảng , và chọn mục Kích hoạt Zabbix .
Bạn sẽ thấy trình kích hoạt hoạt động thông báo cho bạn về việc thiếu dung lượng trống trên server .
Chọn Quay lại trang tổng quan và lưu trang tổng quan bằng CTRL+S
Trang tổng quan của bạn bây giờ sẽ trông như thế này:
Đến đây bạn có thể sử dụng console đơn giản này để xem nhanh trạng thái hiện tại của server của bạn.
Đừng quên xóa file tạm thời bạn đã tạo để giải phóng dung lượng trên đĩa của bạn. Trên server Zabbix của bạn, hãy ra lệnh:
- rm /tmp/test.img
Thao tác này sẽ xóa file test.img
. Sau một vài phút, trang tổng quan sẽ cập nhật lại để áp dụng thay đổi trên hệ thống file .
Kết luận
Trong hướng dẫn này, bạn đã học cách cài đặt và cấu hình Grafana, đồng thời bạn đã tạo trang tổng quan tùy chỉnh với các bảng hiển thị dữ liệu từ Zabbix. Bạn có thể hiển thị các trang tổng quan này trên máy tính để bàn hoặc thậm chí màn hình lớn để cho phép administrator xem trạng thái cơ sở hạ tầng CNTT của bạn. Mỗi bảng trên console có thể hiển thị dữ liệu từ một server khác nhau và bạn có thể sử dụng Grafana để lọc dữ liệu theo nhiều cách hữu ích. Thật khó để mô tả tất cả các tính năng của Grafana trong một hướng dẫn, vì vậy hãy khám phá, thử nghiệm và xây dựng trang tổng quan đẹp của bạn .
Các tin liên quan
Cách cài đặt và cấu hình ownCloud trên CentOS 72016-10-31
Cách triển khai bộ đệm trình duyệt với module tiêu đề của Nginx trên CentOS 7
2016-10-31
Cách sử dụng module bản đồ của Nginx trên CentOS 7
2016-10-31
Cách cài đặt Go 1.7 trên CentOS 7
2016-10-31
Cách cài đặt và cấu hình Sphinx trên CentOS 7
2016-09-20
Cách cài đặt MEAN Stack với MEAN.JS trên CentOS 7
2016-09-09
Cách tạo người dùng Sudo trên CentOS [Quickstart]
2016-03-29
Cách cài đặt Graylog 1.x trên CentOS 7
2016-03-21
Cách cài đặt Puppet 4 trong Thiết lập Master-Agent trên CentOS 7
2016-03-08
Cách thiết lập Jenkins để tích hợp phát triển liên tục trên CentOS 7
2016-03-03