全部產品
Search
文件中心

Elasticsearch:配置執行個體私網串連

更新時間:Jun 30, 2024

Elasticsearch(簡稱ES)執行個體部分功能受新網路架構限制無法應用,可通過PrivateLink+負載平衡實現阿里雲ES與雲資源(ECS、ENI、ECI類型等)或某IP地址下的網路資源打通,解決雲ES網路私網互連問題。本文分別介紹通過CLB和PrivateLink實現阿里雲ES與阿里雲伺服器資源私網互連,及通過阿里雲NLB和PrivateLink實現阿里雲ES叢集間私網互連,您也可按照PrivateLink和負載平衡支援的情境自行應用。

說明
  • 執行個體私網串連是解決新網路架構下X-Pack Watcher、reindex、LDAP和AD(Active Directory)身份認證等功能受限的唯一方案。

  • 2020年10月及之後建立的執行個體處於新網路架構下,支援執行個體私網串連。2020年10月之前建立的執行個體(包括金融雲和政務雲)處於舊網路架構下,不支援執行個體私網串連。

阿里雲ES PrivateLink應用情境

名詞解釋

通過PrivateLink實現私網訪問,您需要建立終端節點服務和終端節點。

名詞

描述

終端節點服務

終端節點服務是可以被其他VPC通過建立終端節點建立私網已連線的服務,需要您手動建立相關的服務資源。

終端節點

終端節點與終端節點服務相關聯,可以建立通過VPC私網訪問外部服務的網路連接,阿里雲ES配置執行個體私網串連將自動在ES所處的網路環境下建立終端節點。

通過CLB和PrivateLink實現阿里雲ES與ECS私網串連

前提條件

  • 已在VPC_1下建立阿里雲ES執行個體,且ES執行個體須為2020年10月及之後建立。建立阿里雲ES執行個體,請參見建立阿里雲ES執行個體

  • 已在使用者VPC_2下建立ECS執行個體,並部署了相關應用,詳細資料請參見自訂購買執行個體

    說明
    • ECS執行個體即後端伺服器,主要接收通過Server Load Balancer執行個體所轉寄的請求。建立ECS時需要選擇支援PrivateLink的地區和可用性區域。PrivateLink支援的地區,請參見支援私網串連的地區和可用性區域

    • 阿里雲ES、ECS、Server Load Balancer執行個體需部署在同一地區下的同可用性區域中。

步驟一:建立並配置Server Load Balancer執行個體

  1. 登入傳統型負載平衡CLB控制台

  2. 建立支援PrivateLink功能的Server Load Balancer執行個體。

    1. 執行個體管理頁面,單擊建立傳統型負載平衡

    2. Server Load Balancer購買頁面配置執行個體,地區選擇阿里雲ES執行個體所在地區,執行個體類型選擇私網,然後單擊立即購買,購買CLB執行個體。

    更多資訊,請參見建立和管理CLB執行個體

  3. 配置Server Load Balancer執行個體。

    1. 執行個體管理頁面,單擊目標執行個體操作列下的監聽設定精靈

    2. 負載平衡業務設定精靈頁面,按需配置監聽資訊和後端伺服器資訊,並進行健全狀態檢查和組態稽核。

    更多詳細資料,請參見配置Server Load Balancer執行個體CLB監聽概述

步驟二:建立終端節點服務

說明

執行個體私網串連功能將自動在ES所處的網路環境下建立終端節點,僅需您在ECS所處的環境下手動建立終端節點服務。

  1. 登入終端節點服務控制台

  2. 在頂部功能表列處,選擇要建立終端節點服務的地區。

    終端節點服務需要與Server Load Balancer執行個體在同一地區。

  3. 單擊建立終端節點服務

  4. 建立終端節點服務頁面,服務資源選擇已建立的Server Load Balancer執行個體,按需配置其他參數,單擊確定建立,建立終端節點服務。

更多詳細資料,請參見建立終端節點服務

步驟三:配置阿里雲ES私網串連

  1. 登入Elasticsearch控制台
  2. 在左側導覽列,單擊Elasticsearch執行個體
  3. 進入目標執行個體。
    1. 在頂部功能表列處,選擇資源群組和地區。
    2. Elasticsearch執行個體中單擊目標執行個體ID。
  4. 在左側導覽列,選擇配置與管理 > 安全配置

  5. 叢集網路設定地區,單擊配置執行個體私網串連右側的修改

  6. 配置執行個體私網串連面板,單擊添加私網串連

  7. 在彈出的對話方塊中,選擇已建立的終端節點服務,完成其他配置後單擊確認

  8. 在終端節點的操作列,單擊允許串連

    終端節點與終端節點服務串連成功後,終端節點串連狀態會變為已串連,表明您已經打通了ES叢集VPC_1與使用者VPC_2。

  9. (可選)查看終端節點網域名稱。

    您可以擷取終端節點網域名稱用於其他服務的配置,例如Watcher、單點登入和LDAP等。

    1. 配置執行個體私網串連面板中,單擊目標終端節點ID

    2. 終端節點串連頁簽,單擊目標終端節點ID前的展開符表徵圖,可查看終端節點對應的網域名稱。

通過NLB和PrivateLink實現阿里雲ES執行個體間私網互連

以下介紹通過NLB掛載ES_2執行個體的網域名稱IP,將阿里雲ES_1執行個體通過私網串連到阿里雲ES_2執行個體,該情境常應用於因網路架構限制導致網路無法互連的兩個阿里雲ES執行個體。

說明
  • 兩個ES執行個體連通後,您可以將ES_2中的資料移轉到了ES_1執行個體中。

  • 阿里雲NLB支援IP掛載,更多資訊,請參見NLB功能特性

前提條件

已建立相同地區和可用性區域下的兩個阿里雲ES執行個體。

說明

建立ES時需要選擇支援PrivateLink的地區和可用性區域。PrivateLink支援的地區,請參見支援私網串連的地區和可用性區域

步驟一:建立網路型負載平衡服務NLB

網路型負載平衡NLB(Network Load Balancer)執行個體可以接收來自用戶端的請求,並按照監聽規則將請求分發至後端伺服器。使用NLB服務,您需要建立一個NLB執行個體,並在執行個體中添加監聽和後端伺服器。

  1. 建立NLB執行個體。

    1. 登入網路型負載平衡NLB控制台

    2. 執行個體頁面,單擊建立網路型負載平衡

    3. 在購買頁面配置執行個體資訊。

      地區選擇阿里雲ES_2執行個體所在地區,執行個體網路類型選擇私網,可用性區域選擇阿里雲ES_2執行個體所在的可用性區域。

      更多資訊,請參見建立和管理NLB執行個體

  2. 建立NLB伺服器組。

    每個伺服器組均用於將用戶端的請求路由到一個或多個後端伺服器。NLB會通過健全狀態檢查來判斷後端伺服器的業務可用性。在為NLB執行個體添加監聽時需要指定伺服器組,監聽會使用已配置的協議和連接埠檢查用戶端的串連請求,並將流量轉寄至相應的伺服器組。

    1. 進入負載平衡NLB伺服器組

    2. 伺服器組頁面,單擊建立伺服器組

    3. 在彈出的對話方塊中,設定管理員組。

      伺服器群組類型選擇IP類型,自訂伺服器組名稱,ES_2執行個體對應的VPC。

  3. NLB上添加ES_2執行個體作為後端服務。

    在已經建立的伺服器組中添加ES_2執行個體私網IP地址和連接埠。

    1. 通過終端ping擷取ES_2執行個體私網IP地址。

      image.png

    2. 在目標伺服器組的操作列上,單擊編輯後端伺服器

    3. 後端伺服器頁簽下,單擊添加IP

    4. 將擷取的ES_2執行個體私網IP地址添加到後端伺服器IP地址中,單擊下一步

    5. 添加操作使用的ES連接埠,例如reindex需要使用9200連接埠通訊。

    6. 單擊確定

  4. 添加監聽。

    1. 登入網路型負載平衡NLB控制台

    2. 在執行個體頁面,在目標NLB執行個體的操作列單擊建立監聽

    3. 監聽協議選擇TCP,監聽連接埠輸入9200,單擊下一步

    4. 伺服器組選擇IP類型,並選擇已添加的後端伺服器組,單擊下一步

    5. 單擊提交

步驟二:建立終端節點服務

說明

執行個體私網串連功能將自動在ES所處的環境下建立終端節點,僅需您在另一個ES所處的環境下手動建立終端節點服務。

  1. 登入終端節點服務控制台

  2. 單擊建立終端節點服務

  3. 建立終端節點服務頁面,配置終端節點服務。

    部分參數說明如下。更多資訊,請參見建立NLB執行個體

    配置

    說明

    所屬地區

    選擇與ES相同的地區。

    服務資源類型

    選擇網路型負載平衡NLB。

    選擇服務資源

    已建立的NLB執行個體。

    服務付費者

    兩者都可以選擇。

  4. 單擊確定建立

    建立成功後可以在服務資源地區,看到建立的終端節點服務已經和NLB綁定了。

步驟三:阿里雲ES執行個體上配置私網串連

在阿里雲ES_1執行個體上配置私網串連,系統將自動在ES_1執行個體所處的網路環境下建立與終端節點服務相串連的終端節點。

  1. 登入Elasticsearch控制台
  2. 在左側導覽列,單擊Elasticsearch執行個體
  3. 進入目標執行個體。
    1. 在頂部功能表列處,選擇資源群組和地區。
    2. Elasticsearch執行個體中單擊目標執行個體ID。
  4. 在左側導覽列,選擇配置與管理 > 安全配置

  5. 叢集網路設定地區,單擊配置執行個體私網串連右側的修改

  6. 配置執行個體私網串連面板,單擊添加私網串連

  7. 在彈出的對話方塊中,選擇已建立的終端節點服務,完成其他配置後單擊確認

  8. 在終端節點的操作列,單擊允許串連

    終端節點與終端節點服務串連成功後,終端節點串連狀態會變為已串連,表明您已經打通了ES_1執行個體和ES_2執行個體。

  9. (可選)查看終端節點網域名稱。

    您可以擷取終端節點網域名稱後添加到白名單,用於其他服務的配置,例如Watcher、單點登入和LDAP等。

    1. 配置執行個體私網串連面板中,單擊目標終端節點ID

    2. 終端節點串連頁簽,單擊目標終端節點ID前的展開符表徵圖,可查看終端節點對應的網域名稱。

(可選)步驟四:通過reindex測試ES執行個體間的連通性

通過reindex將阿里雲ES_2執行個體中的索引遷移到阿里雲ES_1執行個體中,驗證ES_2執行個體和ES_1執行個體的網路連通性。

  1. 在ES_1執行個體的YML檔案中配置reindex白名單。

    1. 在ES_1執行個體詳情頁的左側導覽列,選擇配置與管理 > ES叢集配置

    2. YML檔案配置地區的右上方,單擊修改配置

      reindex.remote.whitelist: ["終端節點網域名稱:9200"]
  2. ES_2執行個體中已經準備了待遷移資料,在ES_1執行個體中建立索引後進行reindex遷移。

    POST _reindex
    {
     "source": {
     "remote": {
     "host": "http://ep-bp1i4db71e6adaa29718-cn-hangzhou-i.epsrv-bp1fm3v8kc2qr2td6lrm.cn-hangzhou.privatelink.aliyuncs.com:9200",
     "username": "帳號",
     "password": "密碼"
     },
     "index": "myindex"
     },
     "dest": {
     "index": "myindex2"
     }
    }

    類別

    參數

    說明

    source

    host

    privatelink終端節點服務訪問地址,必須包含支援協議、終端節點網域名稱和連接埠資訊,例如https://終端節點網域名稱:9200

    username

    選擇性參數。Elasticsearch執行個體的預設使用者名為elastic。

    password

    使用者對應的密碼。Elasticsearch執行個體的elastic使用者的密碼在建立執行個體時設定,如果忘記可進行重設。重設密碼的注意事項及具體操作,請參見重設執行個體訪問密碼

    index

    遠程叢集中的源索引。

    query

    通過查詢文法,指定待遷移的資料。詳細資料,請參見Reindex API

    dest

    index

    本地叢集中的目標索引。

  3. 在ES_1執行個體中查看是否成功將ES_2執行個體中的資料移轉到了ES_1執行個體中。

相關文檔