Tiếp nối sau bài viết giới thiệu Prometheus: Bước tiến vượt trội trong giám sát hệ thống, tại đây mình sẽ giới thiệu các bạn cách cài đặt Prometheus. Sau khi tìm hiểu tính năng và định nghĩa chung của Prometheus chắc hẳn các bạn đang muốn xem nó hoạt động thực sự như thế nào.
Cùng mình thử nghiệm Prometheus trên môi trường Development trước khi quyết định triển khai trên môi trường Production nhé.
Hiện có 2 cách thông dụng nhất là cài đặt Prometheus bằng Docker container hoặc trên máy chủ Linux.
Tuy nhiên để tối giản thời gian thử nghiệm mình sẽ làm trên Docker container Lab, môi trường máy chủ cũng sẽ tương tự, không khác nhiều cách cấu hình.
Có điều chú ý là trên Container khá thoải mái với việc Port và Network Group, các bạn cần rất cẩn thận bảo mật phần giao tiếp với các dịch vụ khác khi cài đặt trên máy chủ kết nối internet.
2. Cài đặt Prometheus trên môi trường Linux
Hiện tại Docker Hub đã có image Prometheus “officially” tuy nhiên hãy làm quen việc cài đặt từ source code để sau này có thể thực hiện trên máy chủ thật. Đầu tiên các bạn hãy chạy một Container vớii Image ubuntu:16.04
prometheus.yml: Đây là file cấu hình của Prometheus, bằng cách chỉnh sửa file này bạn có thể tuỳ chỉnh Prometheus server theo cách của bạn. Các bạn có thể tham khảo thêm tại Prometheus configuration.
prometheus: Là một binary file. Bạn có thể thực thi file này để khởi chạy Prometheus.
promtool: Là một tool giúp bạn kiểm tra các thiết lập cho Prometheus.
2.5. Di chuyển các file về vị trí hợp lý và cấp quyền cho user prometheus với prometheus file:
Sau khi chạy thành công bạn có thể vào website quản lý ở máy host với địa chỉ http://103.197.185.206:9090
2.9. Thử nghiệm với Apache ActiveMQ
Hiện tại với một server Prometheus nó sẽ tự thu thập dữ liệu của chính nó. Để thử nghiệm việc lấy dữ liệu thực tế các dịch vụ khác, mình sẽ dựng thêm một container chạy Apache ActiveMQ.
Như đã nêu ở bài trước những dịch vụ cần theo dõi theo thời gian như Queue sẽ rất thích hợp khi áp dụng Prometheus.
Chạy Container với image vromero/activemq-artemis:
$ docker run -it --rm \
--network=lab-prom \
-p 8161:8161 \
-p 61616:61616 \
-e ARTEMIS_USERNAME=admin \
-e ARTEMIS_PASSWORD=123456 \
-e ENABLE_JMX=true \
-e JMX_PORT=1199 \
-e JMX_RMI_PORT=1198 \
-p 9404:9404 \
-e ENABLE_JMX_EXPORTER=true \
--name acqueue
vromero/activemq-artemis
Các bạn có thể tìm hiểu thêm cách config image này tại Github của tác giả.
Image này đã có sẵn Exporter nên chúng ta chỉ cần khai báo target để Prometheus lấy thông tin
Endpoint: acqueue:9404
Chúng ta sửa lại /etc/prometheus/prometheus.yml một chút:
global:
scrape_interval: 10s
scrape_configs:
- job_name: 'prometheus_master'
scrape_interval: 5s
static_configs:
- targets: ['localhost:9090']
- job_name: 'activemq_artemis'
scrape_interval: 5s
static_configs:
- targets: ['acqueue:9404']
2.10. Khởi động lại Prometheus và xem thử Graph
Ở đây, Node_memory_Memfree_bytes biểu thị dung lượng bộ nhớ trống còn lại trên hệ thống, không bao gồm bộ nhớ cache và bộ đệm có thể bị xóa.
Kết luận
Về cơ bản dựa vào những thông số theo thời gian trên, chúng ta có thể biết được sớm những hiện tượng gây lỗi cho hệ thống. Để các Chart và màu sắc đẹp hơn, dễ nhìn hơn, ở bài viết sau mình sẽ thử nghiệm thêm Grafana và kết nối với các dịch vụ Alert.
Việc thay đổi mật khẩu là biện pháp quan trọng để tăng cường bảo mật và tránh được những rủi ro không mong muốn. Do đó, bước đầu tiên nên làm sau khi đăng ký dịch vụ là đổi mật khẩu. Bạn hãy làm theo hướng dẫn của TotHost để thay đổi mật khẩu trên server Linux nhé!
Khi bạn kết nối máy tính hoặc thiết bị của mình với internet, bạn cần có địa chỉ IP. Địa chỉ IP có hai loại phân bổ: động và tĩnh. Tại bài viết này, TotHost sẽ hướng dẫn bạn Cách kiểm tra địa chỉ IP bạn đang sử dụng là động hay tĩnh.
cPanel là một control panel – hệ thống quản trị web hosting phổ biến và mạnh mẽ nhất hiện nay, hoạt động dựa trên nền tảng Linux. Nó có giao diện đơn giản, linh hoạt hỗ trợ quản trị hosting và website một cách dễ dàng. Tại đây, TotHost sẽ hướng dẫn bạn cách tạo Backup và Restore trên cPanel.