Nginx Amplify là công cụ giám sát tình trạng NGINX và Server theo thời gian thực, thông qua đó bạn có thể phân tích và tối ưu các ứng dụng hoạt động dựa trên NGINX.

Công cụ hoạt động trên nền tảng điện toán đám mây, được cài đặt thông qua một module của Nginx kết nối với API cung cấp miễn phí bởi Nginx.com, giúp bạn dễ dàng theo dõi hoạt động của hệ thống cũng như chủ động xác định các vấn đề:

  • Hiển thị trực quan, chính xác dễ hiểu thông qua số liệu, biểu đồ tình trạng server: hoạt động CPU, RAM, bộ nhớ ổ đĩa, băng thông…
  • Cung cấp các lời khuyên và gợi ý thông minh nhằm cải thiện và tối ưu hóa hiệu suất Nginx.
  • Nhận thông báo qua mail khi có lỗi xảy ra trong quá trình vận hành của các ứng dụng cũng như hỗ trợ xác định vấn đề phát sinh ở đâu…
  • Dự đoán về khả năng và hiệu suất hoạt động của các ứng dụng.
  • Tích hợp và theo dõi nhiều hệ thống chạy Nginx chỉ trong 1 tài khoản.

Toàn bộ thông tin được hiển thị trên website https://amplify.nginx.com, theo dõi rất thuận tiện. Nếu bạn đang sử dụng web server Nginx, nên cài đặt thêm công cụ này nha.

1. Đăng kí và cài đặt Nginx Amplify

Yêu cầu hệ thống cho Nginx Amplify:

  • Chỉ hoạt động trên hệ điều hành Linux, cụ thể:
    • Ubuntu 12.04, 14.04, 16.04
    • Debian 7, 8
    • CentOS 6, 7
    • Red Hat 6, 7 và các hệ thống  dựa trên đó, ví dụ: Oracle Server
    • Amazon Linux (phiên bản mới nhất)
    • Gentoo Linux (phiên bản Experimental Ebuild)
  • NGINX Amplify Agent chỉ hoạt động với Python 2.6 và 2.7 và không hỗ trợ Python 3.0.
  • Để thu thập và hiển thị toàn bộ thông số chuyên sâu, bạn cần tùy chỉnh

1.1. Đăng kí tài khoản Nginx Amplify

Làm theo các bước sau để đăng kí tài khoản.

  • Truy cập trang đăng kí Amplify Sign Up
  • Điền đầy đủ thông tin và chấp nhận Terms of Service rồi click Sign Up
  • Tại cửa sổ tiếp theo, bạn cung cấp thêm một số thông tin về bản thân để Nginx support được tốt hơn.

Như vậy, bạn đã hoàn tất đăng kí. Lưu ý, Nginx Amplify sẽ bắt đầu giám sát hệ thống của bạn khi và chỉ khi bạn cài đặt thành công Amplify Agent trên mỗi server và kết nối thông qua API.

1.2. Cài đặt NGINX Amplify Agent trên hệ thống

Công cụ thu thập dữ liệu về hoạt động hệ thống thông qua việc cài đặt Nginx Amplify Agent.

Click vào biểu tượng +New System góc trên bên trái sau khi login bạn sẽ thấy hướng dẫn cài đặt Agent lên hệ thống của mình. Ví dụ như trong hình:

  1. Kết nối SSH đến server
  2. Sử dụng curl hoặc wget để download script install (trước đó nên chuyển về thư mục gốc cd /root)
  3. Chạy lệnh cài đặt Amplify Agent

Nếu không có vấn đề gì xảy ra, bạn sẽ nhận được thông báo cài đặt thành công như bên dưới:

Quay trở lại website, nhấn nút Continue để đến bước 2, cấu hình stub_status

Nếu bạn dùng HocVPS Script, hệ thống đã tự động tối ưu tương thích với Amplify Agent nên không cần thao tác gì thêm, nhấn Continue. Ngược lại, bạn cần chỉnh sửa file cấu hình domain .conf thủ công theo như hướng dẫn.

Bước này có thể phát sinh lỗi và tốn thời gian nhất, để kiểm tra cấu hình stub_status chuẩn, bạn có thể chạy curl đến localhost như sau là được:

$ curl http://localhost/nginx_status
Active connections: 2
server accepts handled requests
 344014 344014 661581
Reading: 0 Writing: 1 Waiting: 1

Lưu ý cần reload lại Nginx nếu chỉnh sửa file cấu hình:

nginx -s reload

Bước 3 liên quan đến file log, không cần quan tâm lắm, nhấn Finish

Bạn chờ 1 vài phút sẽ thấy hệ thống hiển thị trên khu vực Systems và các đồ thị ở mục Graphs. Giao diện Nginx Amplify sẽ trông giống như ảnh ở phần 2.

Để thay đổi Hostname thủ công, bạn hãy edit file /etc/amplify-agent/agent.conf rồi restart lại agent:

# service amplify-agent stop
# service amplify-agent start

2. Sử dụng Nginx Amplify

2.1. Graphs – Đồ thị giám sát

Tại trang Graphs, các bạn sẽ thấy các đồ thị về hệ thống và Nginx server, bao gồm:

  • System: CPU Usage %, Load Average, Memory, Network Traffic, Disk Usage, Disk I/O, Disk Latency, CPU Usage I/O, Disk IOPS, Swap.
  • Nginx: Connections/s, Requests/s, Current Connections, Current Requests, HTTP Errors, HTTP Version, Workers, File Descriptors, CPU Usage %, Memory Usage, Traffic, Disk I/O, Request Time, Upstream Response Time, Disk Buffered, Upstream Errors

2.2. Dashboard – Bảng giám sát, điều khiển

Tại trang NGINX Amplify Dashboards, bạn có thể tùy biến cấu hình biểu đồ để thiết lập báo cáo theo các số liệu tùy chọn từ các số liệu đã thu thập. Bên cạnh đó, bạn có thể thiết lập báo cáo và giám sát Nginx trên 1 server cụ thể hoặc một nhóm các server, cũng như có thể theo dõi 1 service nhỏ hoặc toàn bộ ứng dụng đã cài đặt.

Dưới đây, mình sẽ ví dụ thiết lập 1 biểu đồ cơ bản báo cáo về tình trạng của HTTP 401 Unauthorized

Tại menu thả xuống của Dashboards, chọn Create Dashboard. Chọn Add Graph (góc trên bên phải) tại vùng làm việc mới hiện ra. Tại bảng Add graph to dashboard: 

  • Title: Điền tên cho biểu đồ, ví dụ 401 Errors
  • Chose metric to display: Chọn các số liệu liên quan từ menu thả xuống, trong trường hợp này là nginx.http.status.4xx. Trong các số liệu của Nginx Amplify, bạn có thể chọn system cho các số liệu về hệ thống và nginx cho số liệu về NGINX server
  • Chọn hệ thống Nginx muốn giám sát từ danh sách thả xuống của Click to select NGINX (có thể chọn nhiều hệ thống)
  • Để lọc số liệu chọn Apply Filter. Menu Click to select filter key xuất hiện chọn giá trị lọc $status cho HTTP status code. Menu bên cạnh Type or select filter value hiện ra gõ 401 và chọn Use 401 as value. Kết quả cuối cùng thành $status ~ 401.

2.3. Analyzer – Báo cáo về thiết lập hệ thống

Khi bạn cài đặt phần mềm lên hệ thống, Nginx Amplify sẽ phân tích cấu hình cài đặt và thiết lập báo cáo chi tiết về thông tin trạng thái và các lời khuyên về cấu hình, trong đó:

  • Status information: Tình trạng hiện tại về NGINX của bạn, bao gồm phiên bản, tổng quan về cấu hình (bao gồm cả các modules), các khuyến cáo bảo mật, máy chủ ảo và thông tin SSL/TLS.
  • Static analysis: một phân tích về cấu hình của bạn mà cung cấp các khuyến nghị để cải thiện hiệu suất, bảo mật và độ tin cậy của các ứng dụng Nginx

Khi bạn cài đặt Nginx Amplify Agent lên hệ thống, bạn nên xem xét tất cả các phần của báo cáo, bao gồm:

  • Version và Overview: tìm kiếm và chỉ ra tất cả các hiểm họa nghi ngờ.
  • Security: đánh giá và chỉ ra các khuyến cáo về bảo mật có thể áp dụng
  • Virtual servers: Xem xét lại các máy chủ ảo để xem chi tiết cấu hình cũng như thông tin SSL/TLS.
  • SSL: kiểm tra tình trạng chứng chỉ SSL, đảm bảo vẫn trong thời hạn.
  • Static analysis: Kiểm tra và cảnh báo bất kì mối nguy hiểm nào.

2.4. Alerts – Cảnh báo hệ thống

Để thực sự giám sát Nginx theo thời gian thực, Nginx Amplify cung cấp bạn công cụ Alerts để cảnh báo bạn khi giá trị của 1 số liệu cụ thể vượt quá mức bạn đề ra. Trong một số trường hợp, Alerts giúp cảnh báo trước khi vấn đề xảy ra thực tế đối với người dùng, đảm bảo rằng bạn không phải là người cuối cùng được biết khi có vấn đề.

Chú ý:

  • Bạn không thể tạo Alerts dựa trên số liệu tổng hoặc số liệu trung bình, chỉ có thể dựa trên số liệu chính xác.
  • Mặc định, Alerts không lọc theo hostname nên thông thường Alerts cảnh báo bạn khi số liệu của cả hệ thống vượt quá mức đề ra. Để cảnh báo cụ thể, bạn cần chỉ định hostname khi cấu hình Alerts.
  • Mỗi tài khoản có 1 Alerts mặc định là cảnh báo khi Nginx Amplify service ngừng hơn 2 phút.

Để tạo 1 cảnh báo mới, chọn thanh Add new alert ở cuối trang Alerts. Giao diện Create New Alerts hiện ra:

  • Chose metric to alert: Chọn số liệu cần được cảnh báo
  • Over period of: cảnh báo nếu số liệu vượt quá trong ngưỡng thời gian
  • Threshold: Ngưỡng số liệu cần cảnh báo, có các giá trị < = >
  • Systems: Cảnh báo áp dụng cho toàn hệ thống hay 1 server cụ thể
  • Email: Điền email nhận thông báo khi Alerts bị kích hoạt. Nếu email này chưa từng được sử dụng với Nginx Amplify thì hệ thống sẽ gửi 1 mail xác nhận

Ví dụ về thiết lập cảnh báo khi Inbound Traffic vượt quá 1 Mbps trong khoảng thời gian trên 2 phút.

Như vậy, qua bài viết, mình đã cung cấp các bạn tổng quan về Nginx Amplify cũng như hướng dẫn cài đặt, sử dụng. Mong rằng qua đó các bạn có thể sử dụng Nginx Amplify một cách tốt nhất.

Tham khảo thêm hướng dẫn sử dụng Amplify tại đây.

6 Comments

      1. tncong 10 comment

        Hai lệnh ở bước cài đặt là xong hả bác, chỗ “1.2. Cài đặt NGINX Amplify Agent trên hệ thống” đó hả?

          1. tncong 10 comment

            he he, sau này bác mà ko support HocVPS Script nữa thì e khóc luôn, chả biết gì nhiều :(((

    1. Việt Phương Moderator

      Cài đặt nhanh mà bạn 🙂 Ngoài ra HocVPS đã cấu hình sẵn stub_status rồi

Comment của bạn

Your email address will not be published. Required fields are marked *