教學課程:使用彈性 AWS Glue 搜尋的連接器 - AWS Glue

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

教學課程:使用彈性 AWS Glue 搜尋的連接器

Elasticsearch 是受歡迎的開源搜尋和分析引擎,適用於例如日誌分析、即時應用程式監控及點擊流分析等使用案例。您可 OpenSearch 以在中設定 Elasticsearch 的 AWS Glue 連接器,做為擷取、轉換和載入 (ETL) 工作的資料存放區。 AWS Glue Studio此連接器可免費從 AWS Marketplace 取得。

在本教程中,我們將展示如何以最少的步驟連接到您的 Amazon OpenSearch 服務節點。

必要條件

若要使用本教學課程,您必須具備下列項目:

  • 訪問 AWS Glue Studio

  • 存取 AWS 雲端中的 OpenSearch 叢集

  • (選擇性) 存取 AWS Secrets Manager.

步驟 1:(選擇性) 為 OpenSearch叢集資訊建立 AWS 密碼

若要安全地存放和使用您的連線憑證,請將您的憑證儲存在 AWS Secrets Manager。您建立的秘密將在教學課程稍後由連線使用。認證鍵值對將作為一般連線選項輸入 Elasticsearch 的 AWS Glue 連接器。

如需建立秘密的詳細資訊,請參閱 AWS Secrets Manager 使用者指南中的使用 AWS Secrets Manager建立和管理秘密

若要建立 AWS 密碼
  1. 登入 AWS Secrets Manager 主控台

  2. 在服務簡介頁面或 Secrets (秘密) 清單頁面上,選擇 Store a new secret (存放新的秘密)

  3. Store a new secret (存放新的秘密) 頁面上,選擇 Other type of secret (其他秘密類型)。這個選項表示您必須提供秘密架構和詳細資訊。

  4. 為 OpenSearch 叢集使用者名稱新增「金鑰」和「」配對。例如:

    es.net.http.auth.user: username

  5. 選擇 + Add row (+ 新增列),然後輸入密碼的另一個鍵值對。例如:

    es.net.http.auth.pass: password

  6. 選擇 Next (下一步)

  7. 輸入秘密名稱。例如:my-es-secret. 您也可以選擇輸入說明。

    記錄秘密名稱 (此名稱稍後會在本教學課程中使用),然後選擇 Next (下一步)

  8. 再次選擇 Next (下一步),然後選擇 Store (存放) 建立秘密。

下一個步驟

步驟 2:訂閱連接器

步驟 2:訂閱連接器

彈性搜索的 AWS Glue 連接器是免費提供的。AWS Marketplace

若要在上訂閱彈性 AWS Glue 搜尋的連接器 AWS Marketplace
  1. 如果您尚未將 AWS 帳戶設定為使用 License Manager,請執行下列動作:

    1. https://console.aws.amazon.com/許可 AWS License Manager管理器打開控制台。

    2. 選擇 Create customer managed license (建立客戶受管授權)

    3. 在 [IAM權限] (一次性設定) 視窗中,選擇 [我授與 AWS License Manager 必要權限],然後選擇 [授與權限]。

      如果您沒有看到此視窗,表示您已經設定必要的許可。

  2. 開啟位於 AWS Glue Studio 的 https://console.aws.amazon.com/gluestudio/ 主控台。

  3. 在 AWS Glue Studio 主控台中,展開功能表圖示 ( 3 short, horizontal lines in a vertical stack ),然後在導覽窗格中選擇 [連接器]。

  4. 連接器頁面上,選擇移至 AWS Marketplace

  5. 在中 AWS Marketplace的「搜尋 AWS Glue Studio 產品」區段中,在搜尋欄位中輸入 Elasticsearch 的AWS Glue 連接器,然後按 Enter。

  6. 選擇連接器的名稱 AWS Glue Elasticsearch Connector

  7. 在連接器的產品頁面上,使用索引標籤來檢視連接器的相關資訊。準備好繼續時,請選擇 Continue to Subscribe (繼續訂閱)

  8. 檢閱軟體的使用條款。按一下 Accept Terms (接受條款)。

  9. 訂閱程序完成後,您將看到一條通知:"Thank you for subscribing to this product! You can now configure your software." (感謝您訂閱此產品!您現在可進行軟體設定。) 橫幅上方是按鈕 Continue to Configuration (繼續進行設定)。選擇 Continue to Configuration (繼續進行設定)。

  10. 請在 Configure this software (設定此軟體) 頁面上選擇 Fulfillment (履行) 選項。您可以在 AWS Glue 1.0/2.0 或 AWS Glue 3.0 之間進行選擇。然後選擇 Continue to Launch (繼續啟動)。

下一步驟

步驟 3:啟動中的連接器 AWS Glue Studio 並建立連接

步驟 3:啟動中的連接器 AWS Glue Studio 並建立連接

選擇 [繼續啟動] 之後,您會在中看到 [啟動此軟體] 頁面 AWS Marketplace。使用連結啟用中的連接器之後 AWS Glue Studio,即可建立連接。

若要在中部署連接器並建立連線 AWS Glue Studio
  1. 在 AWS Marketplace 主控台的 [啟動此軟體] 頁面上,選擇 [使用指示],然後在出現的視窗中選擇連結。

    您的瀏覽器被重定向到 AWS Glue Studio 控制台創建市場連接頁面。

  2. 輸入連線的名稱。例如:my-es-connection.

  3. Connection access (連線存取) 區段,對於 Connection credential type (連線憑證類型) 選擇 User name and password (使用者名稱和密碼)

  4. 對於 AWS secret (AWS 秘密),輸入您的秘密名稱。例如:my-es-secret.

  5. 在 [網路選項] 區段中,輸入要連線到 OpenSearch 叢集的VPC資訊。

  6. 選擇 Create connection and activate connector (建立連線並啟動連接器)

下一步驟

步驟 4:設定ETL工作的IAM角色

步驟 4:設定ETL工作的IAM角色

建立 AWS Glue ETL工作時,您可以指定要使用的工作的 AWS Identity and Access Management (IAM) 角色。角色必須授予對任務使用之所有資源的存取權,包括 Amazon S3 (適用於任何來源、目標、指令碼、驅動程式檔案和暫存目錄) 以及 AWS Glue Data Catalog 物件。

AWS Glue ETL工作的假定IAM角色也必須能夠存取上一節中建立的密碼。根據預設,受AWS管理的角色AWSGlueServiceRole無法存取密碼。若要設定秘密的存取控制,請參閱 AWS Secrets Manager​ 的身分驗證與存取控制限制對特定秘密的存取

若要設定ETL工作的IAM角色
  1. 設定檢閱ETL任務所需的IAM許可中所述的許可。

  2. 設定使用連接器時所需的其他權限 AWS Glue Studio,如中所述使用連接器所需的許可

下一步驟

步驟 5:建立使用 OpenSearch 連線的工作

步驟 5:建立使用 OpenSearch 連線的工作

建立ETL工作的角色之後,您可以在中建立使 AWS Glue Studio 用 Open Spark 連線和連接器的工作 ElasticSearch。

如果您的任務在 Amazon Virtual Private Cloud (AmazonVPC) 內執行,請確定已VPC正確設定。如需詳細資訊,請參閱為您的 ETL 任務設定 VPC

建立使用 Elasticsearch Spark Connector 的任務
  1. 在中 AWS Glue Studio,選擇「連接器」。

  2. Your connections (您的連線) 清單中,選取您剛才建立的連線,然後選擇 Create job (建立任務)

  3. 在視覺化任務編輯器中,選擇 [資料來源] 節點。在右側,於 Data source properties - Connector (資料來源屬性 - 連接器) 索引標籤上,設定連接器的其他資訊。

    1. 選擇 Add schema (新增結構描述),然後在資料來源中輸入資料集的結構描述。連線不會使用儲存在資料目錄中的資料表,這表示 AWS Glue Studio 不知道資料結構描述。您必須手動提供此結構描述資訊。如需如何使用結構描述編輯器的指示,請參閱編輯自訂轉換節點的結構描述

    2. 展開 Connection options (連線選項)

    3. 選擇 [新增] 選項,然後輸入未在 AWS 密碼中輸入的連接器所需的資訊:

      • 節點:https://< OpenSearch 域名端點 >

      • es.port:443

      • path:test

      • es.nodes.wan.only: true

      如需這些連線選項的說明,請參閱:https://www.elastic.co/guide/en/elasticsearch/hadoop/current/configuration.html

  4. 將目標節點新增至圖形。

    您的資料目標可以是 Amazon S3,也可以使用來自 AWS Glue Data Catalog 或連接器的資訊將資料寫入不同位置。例如,您可以使用資料目錄表格寫入 Amazon 中的資料庫RDS,或使用連接器做為資料目標,以寫入中原生不支援的資料存放區。 AWS Glue

    如果您為資料目標選擇連接器,則必須選擇為該連接器建立的連線。此外,如果連接器提供者要求,您必須新增選項,以提供其他資訊給連接器。如果您使用包含 AWS 密碼資訊的連線,則不需要在連線選項中提供使用者名稱和密碼驗證。

  5. 可以選擇新增其他資料來源和一或多個轉換節點,如使用AWS Glue受管轉換來轉換資料中所述。

  6. 修改任務屬性所述設定任務屬性,從步驟 3 開始,然後儲存任務。

下一步驟

步驟 6:執行任務

步驟 6:執行任務

儲存工作後,您可以執行工作以執行作ETL業。

執行您為彈性搜尋之 AWS Glue 連接器建立的工作
  1. 使用主 AWS Glue Studio 控台,在視覺化編輯器頁面上,選擇 [執行]。

  2. 在成功橫幅中,選擇 Run Details (執行詳細資訊),或者您可以選擇視覺化編輯器的 Runs (執行)索引標籤,以檢視任務執行的相關資訊。