全部產品
Search
文件中心

Elasticsearch:配置NAT公網資料轉送

更新時間:Jun 30, 2024

阿里雲Logstash執行個體部署在Virtual Private Cloud(Virtual Private Cloud)下,如果您需要通過Logstash採集公網網路中的資料,或者將Logstash採集的資料輸出到公網網路中,則需要配置NAT Gateway,實現專用網路下的阿里雲Logstash與公網連通。本文介紹具體的配置方法。

背景資訊

由於阿里雲Logstash執行個體部署在Virtual Private Cloud下,如果源端或目標端任意一個與阿里雲Logstash不在同一VPC下(源端和目標端網路不通),會導致資料無法傳輸。在這種情況下,您可以使用阿里雲NAT Gateway的DNAT條目實現公網服務向Logstash節點推送資料,SNAT條目實現Logstash訪問公網,解決網路不通的問題。阿里雲NAT Gateway是一種網路位址轉譯服務,更多詳細資料請參見什麼是NAT Gateway

前提條件

您已完成以下操作:

操作步驟

  1. 進入Elasticsearch控制台的Logstash頁面
  2. 進入目標執行個體。
    1. 在頂部功能表列處,選擇地區。
    2. Logstash執行個體中單擊目標執行個體ID。
  3. 在左側導覽列,單擊網路與安全
  4. 網路設定地區,單擊前往配置NAT Gateway
    關於NAT Gateway的詳細說明和配置流程,請參見建立和管理公網NAT Gateway執行個體。其中DNAT條目適用於公網服務向Logstash節點推送資料;SNAT條目適用於Logstash主動訪問公網。
  5. 在NAT Gateway配置頁面,建立NAT Gateway。
    建立NAT Gateway時,所選的地區和VPC ID需要與阿里雲Logstash保持一致。詳細建立方法,請參見步驟一:建立公網NAT Gateway
  6. 綁定Elastic IP Address。
    1. 在NAT Gateway列表右側操作列下,選擇更多操作 > 綁定Elastic IP Address
    2. 綁定Elastic IP Address頁面,選擇從已有Elastic IP Address中選擇
      如果還沒有EIP,可選擇新購Elastic IP Address並綁定,按照頁面提示完成綁定。
    3. 選擇可用的EIP,單擊確定
      重要 一個NAT Gateway最多可綁定20個EIP(最多可綁定10個按流量計費的EIP,每個按流量計費的EIP的最大峰值不能超過200 Mbps),您可以提交工單申請更多配額。
  7. 建立DNAT條目。
    1. 在NAT Gateway列表中,單擊對應網關右側操作列下的設定DNAT
    2. 單擊DNAT管理頁簽。
    3. DNAT條目列表地區,單擊建立DNAT條目
    4. 建立DNAT條目頁面,填寫相關參數。
      參數說明
      選擇公網IP地址選擇一個可用的公網IP。
      說明 用於建立SNAT條目的公網IP不能再用來建立DNAT條目。
      選擇私網IP地址選擇通過手動輸入,輸入Logstash的IP地址。可在Logstash的基本資料頁面擷取,擷取方式請參見查看執行個體的基本資料
      連接埠設定選擇DNAT映射的方式:
      • 任意連接埠:該方式屬於IP映射,相當於為目標Logstash執行個體配置了一個Elastic IP Address。任何訪問該公網IP的請求,都將轉寄到目標Logstash執行個體上。
      • 具體連接埠:該方式屬於連接埠映射,NAT Gateway會將指定協議和連接埠訪問該公網IP的請求,轉寄到目標Logstash執行個體的指定連接埠上。

        選擇具體連接埠後,請根據業務需求輸入公網連接埠(進行連接埠轉寄的外部連接埠)、私網連接埠(進行連接埠轉寄的內部連接埠)和協議類型(進行連接埠轉寄的協議類型)。

      條目名稱輸入DNAT條目的名稱。

      名稱長度為2~128個字元,以大小寫字母或中文開頭, 可包含數字、底線(_)和虛線(-)。

    5. 單擊確定建立,完成建立。
  8. 建立SNAT條目。
    1. 返回NAT Gateway列表頁面,單擊對應網關右側操作列下的設定SNAT
    2. 單擊SNAT管理頁簽。
    3. SNAT條目列表地區,單擊建立SNAT條目
    4. 建立SNAT條目頁面,單擊SNAT條目粒度地區的交換器粒度,並填寫相關參數。
      參數說明
      選擇交換器選擇Logstash所屬的專用網路中的交換器。該交換器下所有ECS執行個體,都將通過SNAT功能進行公網訪問。
      選擇公網IP地址選擇用來提供互連網訪問的公網IP,支援選擇多個公網IP,多個公網IP構建SNAT IP位址集區。

      當選擇多個公網IP地址配置SNAT IP位址集區時,請確保每個公網IP地址加入到一個共用頻寬中。詳細資料,請參見加入與移出共用頻寬

      更多參數的詳細資料,請參見建立和管理SNAT條目

    5. 單擊確定建立,完成建立。
  9. 返回Logstash控制台,通過管道配置實現公網資料轉送。
    詳細資料,請參見通過設定檔管理管道。配置樣本如下:
    input {
        beats {
            port => 8000
            host => "118.11.xx.xx"
        }
    }
    filter {
    
    }
    output {
        elasticsearch {
            hosts => ["http://es-cn-o40xxxxxxxxxx****.elasticsearch.aliyuncs.com:9200"]
            index => "logstash_test_1"
            password => "es_password"
            user => "elastic"
        }
        file_extend {
            path => "/ssd/1/ls-cn-v0h1kzca****/logstash/logs/debug/test"
        }
    }

    假如管道配置的input為beats、output為elasticsearch,其中Beats所在伺服器與Logstash在同一VPC下,但Elasticsearch與Logstash不在同一VPC下,此時Logstash要將資料輸出到Elasticsearch(Logstash主動訪問公網),就需要先配置SNAT條目。

常見問題