阿里雲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。
前提條件
您已完成以下操作:
建立專用網路和虛擬交換器。
具體操作,請參見搭建IPv4專用網路。
建立阿里雲Logstash執行個體。
具體操作,請參見建立阿里雲Logstash執行個體。
操作步驟
- 進入Elasticsearch控制台的Logstash頁面。
- 進入目標執行個體。
- 在頂部功能表列處,選擇地區。
- 在Logstash執行個體中單擊目標執行個體ID。
在左側導覽列,單擊網路與安全。
在網路設定地區,單擊前往配置NAT Gateway。
關於NAT Gateway的詳細說明和配置流程,請參見建立和管理公網NAT Gateway執行個體。其中DNAT條目適用於公網服務向Logstash節點推送資料;SNAT條目適用於Logstash主動訪問公網。
在NAT Gateway配置頁面,建立NAT Gateway。
建立NAT Gateway時,所選的地區和VPC ID需要與阿里雲Logstash保持一致。詳細建立方法,請參見步驟一:建立公網NAT Gateway。
綁定Elastic IP Address。
在NAT Gateway列表右側操作列下,選擇 。
在綁定Elastic IP Address頁面,選擇從已有Elastic IP Address中選擇。
如果還沒有EIP,可選擇新購Elastic IP Address並綁定,按照頁面提示完成綁定。
選擇可用的EIP,單擊確定。
重要一個NAT Gateway最多可綁定20個EIP(最多可綁定10個按流量計費的EIP,每個按流量計費的EIP的最大峰值不能超過200 Mbps),您可以提交工單申請更多配額。
建立DNAT條目。
在NAT Gateway列表中,單擊對應網關右側操作列下的設定DNAT。
單擊DNAT管理頁簽。
在DNAT條目列表地區,單擊建立DNAT條目。
在建立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個字元,以大小寫字母或中文開頭, 可包含數字、底線(_)和虛線(-)。
單擊確定建立,完成建立。
建立SNAT條目。
返回NAT Gateway列表頁面,單擊對應網關右側操作列下的設定SNAT。
單擊SNAT管理頁簽。
在SNAT條目列表地區,單擊建立SNAT條目。
在建立SNAT條目頁面,單擊SNAT條目粒度地區的交換器粒度,並填寫相關參數。
參數
說明
選擇交換器
選擇Logstash所屬的專用網路中的交換器。該交換器下所有ECS執行個體,都將通過SNAT功能進行公網訪問。
選擇公網IP地址
選擇用來提供互連網訪問的公網IP,支援選擇多個公網IP,多個公網IP構建SNAT IP位址集區。
當選擇多個公網IP地址配置SNAT IP位址集區時,請確保每個公網IP地址加入到一個共用頻寬中。詳細資料,請參見加入與移出共用頻寬。
更多參數的詳細資料,請參見建立和管理SNAT條目。
單擊確定建立,完成建立。
返回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條目。
相關文檔
如果您需要使用HTTPS,請參見使用HTTPS協議。