全部產品
Search
文件中心

Elasticsearch:通過Metricbeat收集系統資料及Nginx服務資料

更新時間:Nov 19, 2024

本文介紹如何通過阿里雲Metricbeat採集器收集系統資料(CPU使用率、記憶體、磁碟IO和網路IO統計資料)和Nginx服務資料,並產生可視化圖表。

前提條件

您已完成以下操作:

  • 建立Elasticsearch(簡稱ES)執行個體。

    詳情請參見建立Elasticsearch執行個體

  • 開啟阿里雲ES執行個體的自動建立索引功能。

    出於安全考慮,阿里雲ES預設不允許自動建立索引。但是Beats目前依賴該功能,因此如果採集器Output選擇為Elasticsearch,需要開啟自動建立索引功能,詳情請參見快速存取與配置

  • 建立阿里雲ECS執行個體,且該ECS執行個體與阿里雲ES執行個體處於同一Virtual Private Cloud(Virtual Private Cloud)下。

    詳情請參見自訂購買執行個體

    重要

    Beats目前僅支援Alibaba Cloud Linux (Alinux)、RedHat和CentOS這三種作業系統。

  • 在目標ECS執行個體上安裝雲助手和Docker服務。

    詳情請參見安裝雲助手Agent部署並使用Docker

使用Metricbeat收集系統資料

  1. 登入Elasticsearch控制台
  2. 在左側導覽列,單擊Beats資料擷取中心

  3. 建立採集器地區中,單擊Metricbeat

  4. 安裝並配置採集器。

    詳情請參見採集ECS服務日誌採集器YML配置,本文使用的配置如下。Metricbeat

    說明
    • 勾選啟用Monitoring,系統會在Kibana控制台開啟Metricbeat服務的監控。

    • 勾選啟用Kibana Dashboard,系統會在Kibana控制台中組建圖表,無需額外配置Yml。由於阿里雲Kibana配置在VPC內,因此需要先在Kibana配置頁面開通Kibana私網訪問功能,詳情請參見配置Kibana公網或私網訪問白名單

    • 由於系統預設開啟了system模組,因此無需進行採集器Yml配置

  5. 單擊下一步

  6. 選擇採集器安裝的ECS執行個體。

    說明

    如果您是初次建立採集器,請先單擊前往授權,按照提示為阿里雲ES授予訪問阿里雲ECS的許可權。

  7. 啟動採集器並查看採集器安裝情況。

    1. 單擊啟動

      啟動成功後,系統彈出啟動成功對話方塊。

    2. 單擊前往採集中心查看,返回Beats資料擷取中心頁面,在採集器管理地區中,查看啟動成功的Metricbeat採集器。

    3. 等待採集器狀態變為已生效1/1後,單擊右側操作欄下的查看運行執行個體

    4. 查看運行執行個體頁面,查看採集器安裝情況,當顯示為心跳正常時,說明採集器安裝成功。

  8. 查看結果。

    1. 登入目標阿里雲ES執行個體的Kibana控制台。

      登入控制台的具體步驟請參見登入Kibana控制台

    2. 在左側導覽列,單擊Dashboard

    3. Dashboard列表中,單擊[Metricbeat System] Overview,再單擊對應的Metricbeat系統,查看該系統的監控儀表板。

      儀表板

使用Metricbeat收集Nginx服務資料

前提條件:開啟Nginx服務的stub_status。由於ngx_http_stub_status_module模組是Nginx中用來統計Nginx服務所接收和處理的請求數量,因此需要在nginx.conf檔案中啟用stub_status。修改nginx.conf檔案的方法,請參見Linux系統的ECS執行個體中如何修改Nginx、Tomcat等Web服務的連接埠監聽地址

location /status {
           stub_status on;
           access_log off;
        }
重要

下文中metricbeat.yml檔案中配置的server_status_path要與nginx.conf中的status保持一致。

  1. 登入Elasticsearch控制台
  2. 在左側導覽列,單擊Beats資料擷取中心

  3. 建立採集器地區中,單擊Metricbeat

  4. 安裝並配置採集器。

    詳情請參見採集ECS服務日誌採集器YML配置

    metricbeat.yml中添加如下指令碼。

    image

    metricbeat.modules:
    - module: nginx
      metricsets: ["stubstatus"]
      enabled: true
      period: 10s
      # Nginx hosts
      hosts: ["http://121.41.**.**"]
      # Path to server status. Default server-status
      server_status_path: "status"
    說明
    • 勾選啟用Monitoring,系統會在Kibana控制台開啟Metricbeat服務的監控。

    • 勾選啟用Kibana Dashboard,系統會在Kibana控制台中組建圖表,無需額外配置Yml。由於阿里雲Kibana配置在VPC內,因此需要先在Kibana配置頁面開通Kibana私網訪問功能,詳情請參見配置Kibana公網或私網訪問白名單

  5. 單擊下一步

  6. 選擇採集器安裝的ECS執行個體。

    選擇採集器安裝的執行個體

    說明

    如果您是初次建立採集器,請先單擊前往授權,按照提示為阿里雲ES授予訪問阿里雲ECS的許可權。

  7. 啟動並查看採集器安裝情況。

    詳細操作方法請參見使用Metricbeat收集系統資料

  8. 查看結果。

    1. 在瀏覽器中,訪問<Nginx hosts>/status,開啟監控頁面。

      訪問監控頁面

    2. 登入目標阿里雲ES執行個體的Kibana控制台。

      登入控制台的具體步驟請參見登入Kibana控制台

    3. 在左側導覽列,單擊Dashboard

    4. Dashboard列表中,單擊[Metricbeat Nginx] Overview,查看Nginx服務的監控儀表板。

      nginx監控儀表板