在一個啟動您的 Amazon OpenSearch 服務域 VPC - Amazon OpenSearch 服務

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

在一個啟動您的 Amazon OpenSearch 服務域 VPC

您可以啟動 AWS 將資源 (例如 Amazon OpenSearch 服務網域) 放入虛擬私有雲端 (VPC)。A VPC 是專用於您的虛擬網路 AWS 帳戶。 它在邏輯上與其他虛擬網絡隔離 AWS 雲端。將 OpenSearch Service 網域置於中,VPC可讓 OpenSearch 服務與其他服務之間的安全通訊,VPC而不需要網際網路閘道、NAT裝置或VPN連線。所有流量都安全地保持在 AWS 雲端。

注意

如果您將 OpenSearch Service 網域放在一個內VPC,您的電腦必須能夠連線到VPC. 此連線通常採用傳輸閘道VPN、受管理網路或 Proxy 伺服器的形式。您無法從外部直接存取您的網域VPC。

VPC與公共領域

以下是網域與公有VPC網域不同的一些方式。稍後會更詳細地說明各項差異。

  • 由於其邏輯隔離,與使用公用端點的網域相比,位於內部的網域VPC具有額外的安全層。

  • 雖然可以從任何連接互聯網的設備訪問公共域,但VPC域需要某種形式的代理VPN或代理。

  • 與公用網域相比,VPC網域在主控台中顯示的資訊較少。特別是,Cluster health (叢集運作狀態) 索引標籤並不包含碎片資訊,並且 Indices (索引) 索引標籤不會出現。

  • 網域端點採用不同的形式 (https://search-domain-namehttps://vpc-domain-name)。

  • 您無法將 IP 型存取原則套用至位於內部的網域,VPC因為安全性群組已強制執行 IP 型存取原則。

限制

在中操作 OpenSearch 服務域VPC有以下限制:

  • 如果您在中啟動新網域VPC,稍後無法將其切換為使用公用端點。相反的情況也是如此:如果您使用公共端點創建域,則以後無法將其放置在VPC. 反之,您必須建立新網域並遷移您的資料。

  • 您可以在網域內啟動網域,VPC也可以使用公用端點,但不能同時啟動兩者。您必須在建立網域時選擇其中一個。

  • 您無法在使用專用租賃的網域中啟動網域。VPC您必須使用已設定為「設」VPC 的租用。

  • 將網域置於網域之後VPC,您無法將其移至其他網路VPC,但您可以變更子網路和安全性群組設定。

  • 若要存取位於某個網域的預設 OpenSearch 儀表板安裝VPC,使用者必須具有的存取權VPC。此程序會因網路組態而異,但可能涉及連線至VPN或受管理的網路,或使用 Proxy 伺服器或傳輸閘道。若要進一步了解關於網VPC域的存取原則,請參閱 Amazon VPC 使用者指南控制 OpenSearch 儀表板的存取

架構

為了支援VPCs, OpenSearch 服務會將端點放入您VPC的. 如果您為網域啟用了多個可用區,每個子網路都必須位於相同區域中的不同可用區域內。如果您只使用一個可用區域,則 OpenSearch 服務只會將端點置於一個子網路中。

下圖顯示一個可用區域的VPC架構:

VPC architecture showing subnet with security group connecting to OpenSearch Service data nodes.

下圖顯示兩個可用區域的VPC架構:

VPC architecture with two Availability Zones, showing security groups, data nodes, and master nodes.

OpenSearch 服務也會在中為每個資料節點放置VPC一個 elastic network interface (ENI)。 OpenSearch 服務會從子網路的位址範圍中,為每個人指派一個私ENI有 IP 位IPv4址。此服務也會指派 IP 位址的公用DNS主機名稱 (也就是網域端點)。您必須使用公用DNS服務將端點(即DNS主機名稱)解析為資料節點適當的 IP 位址:

  • 如果您透過將enableDnsSupport選項設定為 true (預設值) 來VPC使用 Amazon 提供的DNS伺服器,則 OpenSearch 服務端點的解析將會成功。

  • 如果您VPC使用私人DNS伺服器,且伺服器可以連線到公用授權DNS伺服器來解析DNS主機名稱,則 OpenSearch Service 端點的解析也會成功。

由於 IP 地址可能變更,您應該定期解析網域端點,以便您可以隨時存取正確的資料節點。建議您將DNS解析度間隔設定為一分鐘。如果您使用的是用戶端,您還應該確保清除用戶端中的DNS快取。

從公共訪問遷移到VPC訪問

建立網域時,您可以指定該網域是否應具有公用端點或位於VPC. 建立之後,您無法從一個切換到另一個。反之,您必須建立新網域並且手動重新建立索引或遷移您的資料。快照提供方便的方法遷移資料。如需有關拍攝和恢復快照的資訊,請參閱在 Amazon OpenSearch 服務中創建索引快照

關於網VPC域的存取原則

將您的 OpenSearch Service 網域置於一個可VPC提供固有且強大的安全層。當您建立具有公用存取的網域時,端點的格式如下:

https://search-domain-name-identifier.region.es.amazonaws.com

如「公有」標籤建議,這個端點可從任何連接網際網路的裝置存取,即使您可以 (且應該) 控制對其的存取。如果您在 Web 瀏覽器中存取端點,您可能會收到 Not Authorized 訊息,但請求會到達網域。

當您建立具有VPC存取權的網域時,端點看起來類似於公用端點:

https://vpc-domain-name-identifier.region.es.amazonaws.com

如果您嘗試在 Web 瀏覽器中存取端點,不過您可能會發現請求逾時。若要執行基本GET要求,您的電腦必須能夠連線到VPC. 此連線通常採用傳輸閘道VPN、受管理網路或 Proxy 伺服器的形式。有關可採用的各種形式的詳細資訊,請參閱 Amazon VPC 使用者指南VPC中的範例。關於以開發為中心的範例,請參閱測試VPC網域

除了此連線需求之外,還可VPCs讓您透過安全性群組管理網域的存取權。對於許多使用案例,這個安全功能的組合已足夠,而您可能感覺可安心將開放的存取政策套用到網域。

使用開放存取原則操作並意味著網際網路上的任何人都可以存取 OpenSearch 服務網域。相反,這意味著如果請求到達 OpenSearch 服務域,並且相關聯的安全組允許它,則域接受該請求。唯一的例外是,如果您使用精細的存取控制或指定IAM角色的存取原則。在這些情況下,如果網域要接受請求,安全群組必須允許它,並且它必須使用有效的憑證進行簽署。

注意

由於安全性群組已強制執行 IP 型存取原則,因此您無法將 IP 型存取原則套 OpenSearch 用至位於. VPC 如果您使用公有存取,IP 為基礎的政策仍然可用。

開始之前:VPC存取的先決條件

您必須先執行下列動作,才能啟用VPC與新 OpenSearch 服務網域之間的連線:

測試VPC網域

增強的安全性VPC可以使連接到您的域和運行基本測試成為一個挑戰。如果您已經有 OpenSearch Service VPC 網域,而不想建立VPN伺服器,請嘗試下列程序:

  1. 對於網域的存取政策,請選擇 Only use fine-grained access control (僅使用精細存取控制)。完成測試後,您隨時可以更新此設定。

  2. 在與您的 OpenSearch 服務網域相同VPC、子網路和安全群組中建立 Amazon Linux Amazon EC2 執行個體。

    由於此執行個體是用於進行測試,只需執行極少的工作,因此請選擇較便宜的執行個體類型,如 t2.micro。指派公有 IP 地址給執行個體,然後建立新的金鑰對或選擇現有的金鑰對。如果您建立新的金鑰,請將其下載到您的 ~/.ssh 目錄。

    若要進一步了解如何建立執行個體,請參閱開始使用 Amazon EC2 Linux 執行個體

  3. 網際網路閘道新增至您的VPC.

  4. 在您的路由表中VPC,新增路由。在「的地」中,指定包含電腦公用 IP 位址的CIDR區塊。對於 Target (目標),指定您剛建立的網際網路閘道。

    例如,您可以指定 123.123.123.123/32 以只用於您的電腦,或指定 123.123.123.0/24 以用於一個範圍的電腦。

  5. 對於安全群組,指定兩個傳入規則:

    Type 通訊協定 連接埠範圍 來源
    SSH TCP(六) 22 your-cidr-block
    HTTPS TCP(六) 443 your-security-group-id

    第一個規則可讓您SSH進入EC2執行個體。第二個允許EC2執行個體透過與 Ser OpenSearch vice 網域通訊HTTPS。

  6. 從終端機執行下列命令:

    ssh -i ~/.ssh/your-key.pem ec2-user@your-ec2-instance-public-ip -N -L 9200:vpc-domain-name.region.es.amazonaws.com:443

    此命令會建立通SSH道,透過EC2執行個體將要求轉送至 https://localhost:9200 至您的 OpenSearch 服務網域。在命令中指定連接埠 9200 會模擬本機 OpenSearch 安裝,但使用您想要的任何連接埠。 OpenSearch 服務只接受透過連接埠 80 (HTTP) 或 443 (HTTPS) 的連線。

    此命令不會提供任何意見回饋,並且無限期地執行。若要停止命令,請按 Ctrl + C

  7. 在您的網絡瀏覽器中導航到 https://localhost:9200/_dashboards/。您可能需要認可安全例外狀況。

    或者,您也可以使用 https://localhost:9200curlPostman 或您愛用的程式設計語言,傳送請求到

    提示

    如果因為憑證不相符而遇到 Curl 錯誤,請嘗試 --insecure​ 旗標。

在子網路中保留 IP 位VPC址

OpenSearch 服務會將網路介面放置在子網路中 VPC (VPC如果您啟用多個可用區域,則會將網域連線至 VPC 每個網路界面都與 IP 地址關聯。建立 OpenSearch Service 網域之前,每個子網路中必須有足夠數目的可用 IP 位址,以容納網路介面。

以下是基本公式: OpenSearch Service 在每個子網路中保留的 IP 位址數量是資料節點數目的三倍,除以可用區域數目。

範例

  • 如果某個網域有 9 個資料節點和 3 個可用區域,則每個子網路的 IP 計數為 9 * 3 / 3 = 9。

  • 如果某個網域有 8 個資料節點和 2 個可用區域,則每個子網路的 IP 計數為 8 * 3 / 2 = 12。

  • 如果某個網域有 6 個資料節點和 1 個可用區域,則每個子網路的 IP 計數為 6 * 3 / 1 = 18。

當您建立網域時, OpenSearch Service 會保留 IP 位址、針對網域使用部分位址,並保留其餘的 IP 位址供藍色/綠色部署使用。您可以在 Amazon EC2 主控台的「網路界面」區段中查看網路界面及其相關聯的 IP 地址。「描述」欄會顯示與網路介面相關聯的 OpenSearch 服務網域。

提示

建議您為 OpenSearch 服務保留的 IP 位址建立專用子網路。透過使用專用的子網路,可避免與其他應用程式和服務重疊,並確保您可以預留額外的 IP 地址供未來若需要擴展叢集時使用。若要深入了解,請參閱在 VPC.

用VPC於存取的服務連結角色

服務連結角色是一種獨特的IAM角色類型,可將權限委派給服務,以便它可以代表您建立和管理資源。 OpenSearch 服務需要服務連結角色才能存取您的VPC、建立網域端點,以及將網路介面放置在您VPC的子網路中。

OpenSearch 當您使用服務主控台在中建立網域時, OpenSearch 服務會自動建立角色VPC。若要讓此自動建立成功,您必須有 iam:CreateServiceLinkedRole 動作的許可。若要深入了解,請參閱IAM使用者指南中的服務連結角色權限

OpenSearch Service 建立角色之後,您可以使用IAM主控台檢視它 (AWSServiceRoleForAmazonOpenSearchService)。

如需此角色許可以及如何刪除它的完整資訊,請參閱針對 Amazon OpenSearch 服務使用服務連結角色