日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

通過自建Logstash遷移數據到阿里云ES

Logstash是一個開源的數據收集引擎,具有實時傳輸數據,并過濾數據的能力。如果您對遷移實時性要求不高,可以使用Logstash進行數據遷移。本文介紹在ECS上部署自建Logstash,并通過該Logstash將一個日志文件遷移到阿里云Elasticsearch(ES)中。

前提條件

  • 已創建阿里云ES實例,并開啟實例的自動創建索引功能。

    說明
  • 已創建ECS實例,ECS實例需要能夠同時訪問自建Logstash集群和阿里云ES集群。 具體操作,請參見自定義購買實例

    說明

    建議您購買與阿里云ES在同一區域、同一可用區、同一專有網絡VPC下的ECS實例。

  • 在ECS實例中安裝JDK。 具體操作,請參見安裝JDK

    說明

    JDK版本選擇Temurin 17及以上。Java JDK版本與Logstash版本的兼容情況,請參見JVM兼容表。

  • 準備待遷移的數據,本文以ECS的日志數據為例。

操作步驟

(可選)步驟一:創建角色和用戶

自建Logstash訪問ES或在Kibana中查看Logstash監控時,需要使用ES的賬號,您可以使用elastic用戶或自建用戶。

說明

實際業務中建議使用自建用戶,并給自建用戶分配相應的角色和權限。使用elastic用戶會降低系統安全性。

創建角色

以添加具有logstash-* 讀寫權限的角色為例。

  1. 登錄目標阿里云ES實例的Kibana控制臺。

    具體步驟,請參見登錄Kibana控制臺。

  2. 單擊Kibana頁面左上角的image圖標,選擇Management > Stack Management。

  3. 在左側導航欄,選擇安全 > 角色。

  4. 角色頁面,單擊創建角色,配置角色參數。

    部分參數說明:

    參數

    說明

    角色名稱

    角色名稱,自定義輸入。

    索引

    選擇對應的索引文件。需要輸入logstash-*。

    權限

    為角色分配索引權限。需要添加read、write、createdelete以及create_index權限。

  5. 單擊創建角色,完成創建。

創建用戶

以創建監控Logstash服務的用戶為例。 您可以選擇以下任一方式創建用戶:

重要

阿里云ES集群默認會禁用logstash_system用戶,因此您需要創建一個角色為logstash_system的用戶名,但需要注意用戶名不可以配置為logstash_system

  • 方法一:通過Kibana控制臺添加用戶

    1. 登錄目標阿里云ES實例的Kibana控制臺。

      具體步驟,請參見登錄Kibana控制臺。

    2. 單擊Kibana頁面左上角的image圖標,選擇Management > Stack Management

    3. 在左側導航欄,選擇安全 > 用戶。

    4. 用戶頁面,單擊創建用戶。

    5. 創建用戶頁面,配置用戶信息。

      部分參數說明:

      參數

      說明

      Username

      用戶名,可以自定義。本章節以創建Logstash監控用戶為例,設置用戶名為logstash_system_monitor。

      Roles

      用戶的角色,需要選擇logstash_system角色。

    6. 單擊創建用戶,完成創建。

  • 方法二:通過命令行方式創建用戶

    連接ECS實例,通過以下命令添加用戶。

    curl -u elastic:<es-password> -XPOST http://<instanceId>.elasticsearch.aliyuncs.com:9200/_xpack/security/user/logstash_system_monitor -d '{"password" : "<logstash-monitor-password>","roles" : ["logstash_system"],"full_name" : "<your full name>"}'

    參數

    說明

    es-password

    阿里云ES實例的密碼,即您登錄Kibana控制臺的密碼。

    <instanceId>

    阿里云ES實例的ID,可在實例的基本信息頁面獲取。

    <logstash-monitor-password>

    您創建的logstash_system_monitor用戶的密碼。

    <your full name>

    當前用戶名的全名描述。

    添加成功后,結果如下。添加用戶成功

步驟二:在ECS上安裝Logstash

  1. 連接ECS實例。

    具體步驟請參見連接ECS實例

  2. 下載Logstash。

    進入Elastic官網,下載與阿里云ES實例版本一致的Logstash。

    wget https://artifacts.elastic.co/downloads/logstash/logstash-8.5.1-linux-x86_64.tar.gz
    說明

    下載Logstash7.4版本

    wget https://artifacts.elastic.co/downloads/logstash/logstash-7.4.0.tar.gz
  3. 對下載的Logstash壓縮包進行解壓縮。

    以8.5.1版本為例。

    tar -xzvf logstash-8.5.1-linux-x86_64.tar.gz

步驟三:配置并執行Logstash遷移任務

  1. 進入Logstash目錄。

    cd logstash-8.5.1
  2. 創建conf文件。

    touch test.conf
  3. 配置test.conf文件。

    配置示例如下。

    input {
        file {
            path => "/your/file/path/xxx"
            }
    }
    filter {
    }
    output {
      elasticsearch {
        hosts => "<http://<instanceId>.elasticsearch.aliyuncs.com:9200>"
      	index => "<index-name>"
        user => "<user-name>"
        password => "<logstash-password>"
      }
    }

    參數

    說明

    path

    日志文件的路徑。本文以/var/log/messages為例。

    hosts

    阿里云ES實例的訪問地址。instanceId為實例ID,可在實例的基本信息頁面獲取。例如:http://es-cn-45xxxxxxxxxxxxju.elasticsearch.aliyuncs.com:9200

    index

    文件寫入目標ES中的索引名字,索引名字自定義。

    user

    訪問阿里云ES實例的賬號。 本文使用elastic。

    重要
    • 實際業務中建議使用自建用戶,使用elastic用戶會降低系統安全性。

    • 用戶名上需要加英文引號(""),防止在啟動Logstash時,因出現特殊字符報錯。

    password

    阿里云ES實例賬號的密碼。

    重要

    密碼上需要加英文引號(""),防止在啟動Logstash時,因為特殊字符報錯。

    Logstash提供了豐富的input、filter、output插件,只需要簡單的配置即可實現數據的流轉,詳情請參見官方配置文件結構文檔。

  4. 啟動logstash。

    bin/logstash -f test.conf

    命令執行成功后,系統會自動通過Logstash獲取日志文件的變化,并提交到阿里云ES集群。只要監控的日志文件有新增內容,Logstash就會自動同步數據到ES集群中。

步驟四:查看遷移成功的數據

  1. 登錄目標阿里云ES實例的Kibana控制臺。

    具體步驟,請參見登錄Kibana控制臺。

  2. 單擊Kibana頁面左上角的image圖標,選擇Management > 開發工具

  3. 在Kibana控制臺中,執行以下命令。

    GET /logstash-*/_search

(可選)步驟五:監控Logstash節點

  1. 進入Logstash安裝目錄的config文件中。

    cd logstash-8.5.1/config
  2. 配置logstash.yml文件。

    1. 打開logstash.yml文件。

      vim logstash.yml
    2. 在logstash.yml文件中,去掉以下幾個參數的注釋,并配置參數值。

      xpack.monitoring.enabled:true
      xpack.monitoring.elasticsearch.username:"<user-name>"
      xpack.monitoring.elasticsearch.password:"<logstash-password>"
      xpack.monitoring.elasticsearch.hosts:["http://es-cn-nwy3fwjp8xxxxxxx.elasticsearch.aliyuncs.com:9200"]

      參數

      說明

      xpack.monitoring.enable

      默認為false,需要設置為true。

      xpack.monitoring.elasticsearch.username

      您創建的Logstash監控賬號,本文使用elastic用戶。

      重要

      實際業務中建議使用自建用戶,使用elastic用戶會降低系統安全性。

      xpack.monitoring.elasticsearch.password

      Logstash監控用戶的密碼。

      xpack.monitoring.elasticsearch.hosts

      阿里云ES實例的訪問地址。例如:http://es-cn-45xxxxxxxxxxxxju.elasticsearch.aliyuncs.com:9200。

  3. 返回Logstash安裝目錄,啟動Logstash服務。

    cd ../
    bin/logstash -f test.conf
  4. 登錄目標阿里云ES實例的Kibana控制臺。

    具體步驟,請參見登錄Kibana控制臺。

  5. 單擊Kibana頁面左上角的image圖標,選擇Management > 堆棧監測。

  6. (可選)在彈出的Create rules對話框,單擊OK。

  7. 集群概覽頁面,查看Logstash監控信息。

相關文檔