

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

# 設定 Amazon Kendra 以使用 Amazon VPC
<a name="vpc-configuration"></a>

Amazon Kendra 可以連線到您使用 建立的虛擬私有雲端 (VPC)， Amazon Virtual Private Cloud 以索引存放在私有雲端中執行的資料來源中的內容。建立資料來源連接器時，您可提供包含資料來源之子網路的安全群組與子網路識別碼。利用此資訊， 會 Amazon Kendra 建立彈性網路界面，用來安全地與 VPC 中的資料來源通訊。

若要使用 設定 Amazon Kendra 資料來源連接器 Amazon VPC，您可以使用 AWS 管理主控台 或 [CreateDataSource](https://docs.aws.amazon.com/kendra/latest/APIReference/API_CreateDataSource.html) API 操作。若使用主控台，則可在連接器組態程序中連接 VPC。

**注意**  
設定資料來源連接器時， Amazon VPC 此功能是選用的 Amazon Kendra 。如果您的資料來源可從公有網際網路存取，則不需要啟用 Amazon VPC 此功能。並非所有 Amazon Kendra 資料來源連接器皆支援 Amazon VPC。

如果您的資料來源未在 上執行 Amazon VPC ，且無法從公有網際網路存取，則請先使用虛擬私有網路 (VPN) 將資料來源連線至 VPC。然後，您可以使用 Amazon VPC 和 的組合 Amazon Kendra ，將資料來源連接到 AWS Virtual Private Network。如需設定 VPN 的詳細資訊，請參閱 [Site-to-Site VPN 文件](https://docs.aws.amazon.com/vpn/)。

**Topics**
+ [

# 設定 Amazon Kendra 連接器的 Amazon VPC 支援
](connector-vpc-steps.md)
+ [

# 設定要連線的 Amazon Kendra 資料來源 Amazon VPC
](connector-vpc-setup.md)
+ [

# 連線至 VPC 中的資料庫
](vpc-example.md)
+ [

# 故障診斷 VPC 連線問題
](vpc-connector-troubleshoot.md)

# 設定 Amazon Kendra 連接器的 Amazon VPC 支援
<a name="connector-vpc-steps"></a>

若要設定 Amazon VPC 搭配您的 Amazon Kendra 連接器使用，請執行下列步驟。

**Topics**
+ [

## 步驟 1. 建立 的 Amazon VPC 子網路 Amazon Kendra
](#connector-vpc-prerequisites-1)
+ [

## 步驟 2. 建立 Amazon VPC 的安全群組 Amazon Kendra
](#connector-vpc-prerequisites-2)
+ [

## 步驟 3。設定外部資料來源和 Amazon VPC
](#connector-vpc-prerequisites-3)

## 步驟 1. 建立 的 Amazon VPC 子網路 Amazon Kendra
<a name="connector-vpc-prerequisites-1"></a>

建立或選擇可用於存取資料來源的 Amazon Kendra 現有 Amazon VPC 子網路。準備的子網路必須位於下列其中一個 AWS 區域 和可用區域：
+ 美國西部 (奧勒岡)/us-west-2—usw2-az1、usw2-az2、usw2-az3
+ 美國東部 (維吉尼亞北部)/us-east-1—use1-az1、use1-az2、use1-az4
+ 美國東部 （俄亥俄）/us-east-2—use2-az1、use2-az2、use2-az3
+ 亞太區域 （東京）/ap-northeast-1—apne1-az1、apne1-az2、apne1-az4
+ 亞太區域 （孟買）/ap-south-1—aps1-az1、aps1-az2、aps1-az3
+ 亞太區域 （新加坡）/ap-southeast-1—apse1-az1、apse1-az2、apse1-az3
+ 亞太地區 (雪梨)/ap-southeast-2—apse2-az1、apse2-az2、apse2-az3
+ 加拿大 （中部）/ca-central-1—cac1-az1、cac1-az2、cac1-az4
+ 歐洲 （愛爾蘭）/eu-west-1—euw1-az1、uew1-az2、euw1-az3
+ 歐洲 （倫敦）/eu-west-2—euw2-az1、euw2-az2、euw2-az3

您的資料來源必須可由提供給 Amazon Kendra 連接器的子網路存取。

如需如何設定 Amazon VPC 子網路的詳細資訊，請參閱《*Amazon VPC 使用者指南*》中的 [的子網路 Amazon VPC](https://docs.aws.amazon.com/vpc/latest/userguide/configure-subnets.html)。

如果 Amazon Kendra 必須在兩個或多個子網路之間路由連線，您可以準備多個子網路。例如，包含資料來源的子網路可能已無可用 IP 位址。在這種情況下，您可以 Amazon Kendra 提供額外的子網路，其具有足夠的 IP 地址並連接到第一個子網路。若您列出多個子網路，這些子網路必須能彼此通訊。

## 步驟 2. 建立 Amazon VPC 的安全群組 Amazon Kendra
<a name="connector-vpc-prerequisites-2"></a>

若要將 Amazon Kendra 資料來源連接器連接到 Amazon VPC，您必須從 VPC 準備一或多個安全群組，以指派給 Amazon Kendra。這些安全群組將與 Amazon Kendra建立的彈性網路介面相關聯。此網路界面控制存取 Amazon VPC 子網路 Amazon Kendra 時往返的傳入和傳出流量。

請確保安全群組的傳出規則允許來自 Amazon Kendra 資料來源連接器的流量存取子網路及要同步的資料來源。例如，您可能會使用 MySQL 連接器從 MySQL 資料庫同步資料。如果您使用的是預設連接埠，安全群組必須允許 在執行資料庫的主機上 Amazon Kendra 存取連接埠 3306。

建議您使用下列值設定預設安全群組 Amazon Kendra ，以便 使用：
+ **傳入規則** — 若保持空白，將封鎖所有傳入流量。
+ **傳出規則** – 新增一個規則以允許所有傳出流量，讓 Amazon Kendra 可以從資料來源啟動同步請求。
  + **IP 版本** — IPv4
  + **類型** — 所有流量
  + **通訊協定** — 所有流量
  + **連接埠範圍** — 全部
  + **目的地** – 0.0.0.0/0

如需如何設定 Amazon VPC 安全群組的詳細資訊，請參閱《*Amazon VPC 使用者指南*》中的[安全群組規則](https://docs.aws.amazon.com/vpc/latest/userguide/security-group-rules.html)。

## 步驟 3。設定外部資料來源和 Amazon VPC
<a name="connector-vpc-prerequisites-3"></a>

請確定您的外部資料來源具有正確的許可組態和網路設定 Amazon Kendra ，以供 存取。您可在各連接器頁面的先決條件區段中找到設定資料來源的詳細指引。

此外，請檢查您的 Amazon VPC 設定，並確保可從您將指派的子網路存取外部資料來源 Amazon Kendra。若要這樣做，建議您在具有相同安全群組的相同子網路中建立 Amazon EC2 執行個體，並測試從此 Amazon EC2 執行個體存取資料來源的權限。如需詳細資訊，請參閱[疑難排解 Amazon VPC 連線](https://docs.aws.amazon.com/kendra/latest/dg/vpc-connector-troubleshoot.html)。

# 設定要連線的 Amazon Kendra 資料來源 Amazon VPC
<a name="connector-vpc-setup"></a>

在 中新增資料來源時 Amazon Kendra， Amazon VPC 如果選取的資料來源連接器支援此功能，則可以使用 功能。

您可以使用 AWS 管理主控台 或 Amazon Kendra API，在啟用 Amazon VPC 的情況下設定新的 Amazon Kendra 資料來源。具體而言，請使用 [https://docs.aws.amazon.com/kendra/latest/APIReference/API_CreateDataSource.html](https://docs.aws.amazon.com/kendra/latest/APIReference/API_CreateDataSource.html) API 操作，並在 `VpcConfiguration` 參數中提供以下資訊：
+ `SubnetIds` – Amazon VPC 子網路的識別符清單
+ `SecurityGroupIds` – Amazon VPC 安全群組的識別符清單

如果您使用 主控台，請在連接器組態期間提供必要 Amazon VPC 資訊。若要使用主控台為連接器啟用 Amazon VPC 功能，請先選取一個 Amazon VPC。接著，請提供 Amazon VPC 子網路與 Amazon VPC 安全群組的識別碼。您可以選取您在[設定 Amazon VPC](https://docs.aws.amazon.com/kendra/latest/dg/connector-vpc-steps.html) 中建立的 Amazon VPC 子網路與 Amazon VPC 安全群組，或使用任何現有的子網路與安全群組。

**Topics**
+ [

## 檢視 Amazon VPC 識別符
](#viewing-vpc-identifiers)
+ [

## 檢查您的資料來源 IAM 角色
](#vpc-iam-roles)

## 檢視 Amazon VPC 識別符
<a name="viewing-vpc-identifiers"></a>

子網路和安全群組的識別符是在 Amazon VPC 主控台中設定。若要檢視識別碼，請依照以下程序進行。

**檢視子網路識別碼**

1. 登入 AWS 管理主控台 ，並在 [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/)：// 開啟 Amazon VPC 主控台。

1. 在導覽窗格中，選取**子網路**。

1. 從**子網路**清單中，選取包含資料庫伺服器的子網路。

1. 在**詳細資訊**分頁中，記下**子網路 ID** 欄位中的識別碼。

**檢視安全群組識別碼**

1. 登入 AWS 管理主控台 並開啟位於 https：//[https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) 的 Amazon VPC 主控台。

1. 在導覽窗格中，選取**安全群組**。

1. 在安全群組清單中，選取您需要其識別碼的安全群組。

1. 在**詳細資訊**分頁中，記下**安全群組**欄位中的識別碼。

## 檢查您的資料來源 IAM 角色
<a name="vpc-iam-roles"></a>

請確定您的資料來源連接器 AWS Identity and Access Management IAM) 角色包含存取 的許可 Amazon VPC。

如果您使用 主控台為您的角色建立新的 IAM 角色， Amazon Kendra 會自動代表您將正確的許可新增至您的 IAM 角色。如果您使用 API 或使用現有 IAM 角色，請檢查您的角色是否包含存取許可 Amazon VPC。若要驗證您是否具有正確的許可，請參閱 [IAM VPC 的角色](https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html#iam-roles-vpc)。

您可修改現有資料來源，使其使用不同的 Amazon VPC 子網路。不過，請檢查資料來源 IAM 的角色，並視需要修改，以反映 Amazon Kendra 資料來源連接器正常運作的變更。

# 連線至 VPC 中的資料庫
<a name="vpc-example"></a>

下列範例示範如何連接在虛擬私有雲端 (VPC) 中執行的MySQL資料庫。此範例假設您是從預設 VPC 開始，而且您需要建立MySQL資料庫。如果您已經有 VPC，請確定已如所示進行設定。如果您有MySQL資料庫，您可以使用該資料庫，而不是建立新的資料庫。

**Topics**
+ [

## 步驟 1：設定 VPC
](#vpc-example-1)
+ [

## 步驟 2：建立和設定安全群組
](#vpc-example-2)
+ [

## 步驟 3：建立資料庫
](#vpc-example-3)
+ [

## 步驟 4：建立資料來源連接器
](#vpc-example-4)

## 步驟 1：設定 VPC
<a name="vpc-example-1"></a>

設定您的 VPC，以便您擁有私有子網路和安全群組 Amazon Kendra ，讓 存取子網路中執行的MySQL資料庫。VPC 組態中提供的子網路必須位於美國西部 （奧勒岡） 區域、美國東部 （維吉尼亞北部） 區域或歐洲 （愛爾蘭） 區域。

**使用 設定 VPC Amazon VPC**

1. 登入 AWS 管理主控台 並開啟位於 https：//[https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) 的 Amazon VPC 主控台。

1. 從導覽窗格中，選擇**路由表**，然後選擇**建立路由表**。

1. 在**名稱**欄位中，輸入 **Private subnet route table**。從 **VPC** 下拉式清單中，選取您的 VPC，然後選擇**建立路由表**。選擇**關閉**以返回路由表清單。

1. 從導覽窗格中，選擇 **NAT 閘道**，然後選擇**建立 NAT 閘道**。

1. 從**子網路**下拉式清單中，選擇公有子網路的子網路。請記下子網路 ID。

1. 如果您沒有彈性 IP 地址，請選擇**建立新 EIP**，選擇**建立 NAT 閘道**，然後選擇**關閉**。

1. 從導覽窗格中，選擇**路由表**。

1. 從路由表清單中，選擇您在步驟 3 中建立的**私有子網路路由表**。在**動作**中，選擇**編輯路由**。

1. 選擇 **Add route** (新增路由)。針對目的地，輸入 **0.0.0.0/0** 以允許所有傳出流量流向網際網路。針對**目標**，選擇 **NAT 閘道**，然後選擇您在步驟 4 中建立的閘道。選擇**儲存變更**，然後選擇**關閉**。

1. 在**動作**中，選擇**編輯子網路關聯**。

1. 選擇您要成為私有的子網路。請勿選擇具有您先前記下之 NAT 閘道的子網路。完成後，請選擇**儲存關聯**。

## 步驟 2：建立和設定安全群組
<a name="vpc-example-2"></a>

接著，為您的資料庫設定安全群組。

**建立和設定安全群組**

1. 登入 AWS 管理主控台 ，並在 [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/)：// 開啟 Amazon VPC 主控台。

1. 從 VPC 的描述中，記下 IPv4 CIDR。

1. 從導覽窗格中，選擇**安全群組**，然後選擇**建立安全群組**。

1. 針對 **Security group name (安全群組名稱)**，輸入 **DataSourceInboundSecurityGroup**。提供描述，然後從清單中選擇您的 VPC。選擇**建立安全群組**，然後選擇**關閉**。

1. 選擇 **Inbound Rules** (傳入規則) 索引標籤。

1. 選擇**編輯傳入規則**，然後選擇**新增規則**

1. 針對資料庫，輸入連接埠**範圍的連接埠**號碼。例如，MySQL它的 為 **3306**，而 HTTPS 的 則為 **443**。針對**來源**，輸入 VPC 的無類別網域間路由 (CIDR)。選擇**儲存規則**，然後選擇**關閉**。

安全群組允許 VPC 內的任何人連線至資料庫，並允許對外連線至網際網路。

## 步驟 3：建立資料庫
<a name="vpc-example-3"></a>

建立資料庫以保留您的文件，或者您可以使用現有的資料庫。

如需如何建立MySQL資料庫的說明，請參閱 [https://docs.aws.amazon.com/kendra/latest/dg/data-source-mysql.html](https://docs.aws.amazon.com/kendra/latest/dg/data-source-mysql.html)。

## 步驟 4：建立資料來源連接器
<a name="vpc-example-4"></a>

設定 VPC 並建立資料庫後，您可以為資料庫建立資料來源連接器。如需 Amazon Kendra 支援的資料庫連接器相關資訊，請參閱[支援的連接器](https://docs.aws.amazon.com/kendra/latest/dg/data-sources.html)。

針對資料庫，請確定您已設定 VPC、您在 VPC 中建立的私有子網路，以及您在 VPC 中建立的安全群組。

# 故障診斷 VPC 連線問題
<a name="vpc-connector-troubleshoot"></a>

如果您在虛擬私有雲端 (VPC) 連線中遇到任何問題，請檢查您的 IAM 許可、安全群組設定和子網路路由表是否已正確設定。

資料來源連接器同步失敗的一個潛在原因是，資料來源可能無法從您指派的子網路連線 Amazon Kendra。若要疑難排解此問題，建議您使用相同的 Amazon VPC 設定建立 Amazon EC2 執行個體。然後，嘗試使用 REST API 呼叫或其他方法 （根據您的資料來源的特定類型） 從此 Amazon EC2 執行個體存取資料來源。

如果您成功從您建立的 Amazon EC2 執行個體存取資料來源，這表示可以從此子網路存取您的資料來源。因此，您的同步問題與無法存取資料來源無關 Amazon VPC。

如果您無法從 VPC 組態存取 Amazon EC2 執行個體，並使用您建立的 Amazon EC2 執行個體進行驗證，則需要進一步疑難排解。例如，如果您的 Amazon S3 連接器的同步失敗，並出現連線問題的相關錯誤，則可以使用指派給 Amazon S3 連接器的相同 Amazon VPC 組態來設定 Amazon EC2 執行個體。然後，使用此 Amazon EC2 執行個體來測試您的 Amazon VPC 是否已正確設定。

以下是設定 Amazon EC2 執行個體以疑難排解與 Amazon S3 資料來源 Amazon VPC 連線的範例。

**Topics**
+ [

## 步驟 1：啟動 Amazon EC2 執行個體
](#vpc-connector-troubleshoot-1)
+ [

## 步驟 2：連線至 Amazon EC2 執行個體
](#vpc-connector-troubleshoot-2)
+ [

## 步驟 3：測試 Amazon S3 存取
](#vpc-connector-troubleshoot-3)

## 步驟 1：啟動 Amazon EC2 執行個體
<a name="vpc-connector-troubleshoot-1"></a>

1. 登入 AWS 管理主控台 ，並在 [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)：// 開啟 Amazon EC2 主控台。

1. 選取**啟動執行個體**。

1. 選擇**網路設定**，然後選擇**編輯**，然後執行下列動作：

   1. 選擇您指派的相同 VPC 和**子網路** Amazon Kendra。

   1. 針對**防火牆 (安全群組)**，選擇**選取現有的安全群組**。然後，選取您指派的安全群組 Amazon Kendra。
**注意**  
安全群組應允許傳出流量到 Amazon S3。

   1. 將**自動指派公有 IP** 設定為**停用**。

   1. 在**進階詳細資訊**中，執行下列動作：
      + 針對 **IAM 執行個體描述**檔，選取**建立新的 IAM 描述檔**，以建立 IAM 執行個體描述檔並將其連接至您的執行個體。請確定設定檔具有存取許可 Amazon S3。如需詳細資訊，請參閱 [中的如何授予 Amazon EC2 執行個體存取 儲存 Amazon S3 貯體的權限？](https://repost.aws/knowledge-center/ec2-instance-access-s3-bucket) AWS re:Post。
      + 將所有其他設定保留為預設值。

   1. 檢閱並啟動 Amazon EC2 執行個體。

## 步驟 2：連線至 Amazon EC2 執行個體
<a name="vpc-connector-troubleshoot-2"></a>

 Amazon EC2 執行個體執行後，請前往執行個體詳細資訊頁面並連接至執行個體。若要這樣做，請使用 Linux [執行個體使用者指南中的連線至執行個體中的步驟，而不需要使用 EC2 Instance Connect Endpoint 的公有 IPv4 地址](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/connect-with-ec2-instance-connect-endpoint.html)。 *Amazon EC2 *

## 步驟 3：測試 Amazon S3 存取
<a name="vpc-connector-troubleshoot-3"></a>

連線至 Amazon EC2 執行個體終端機後，請執行 AWS CLI 命令來測試從此私有子網路到儲存 Amazon S3 貯體的連線。

若要測試 Amazon S3 存取，請在 中輸入下列 AWS CLI 命令 AWS CLI： `aws s3 ls`

 AWS CLI 命令執行後，請檢閱下列項目：
+ 如果您已正確設定必要的 IAM 許可，且 Amazon S3 設定正確，您應該會看到儲存 Amazon S3 貯體的清單。
+ 如果您看到許可錯誤，例如 `Access Denied`，yourVPC 組態可能是正確的，但 IAM 許可或 Amazon S3 儲存貯體政策發生錯誤。

如果命令逾時，則您的連線可能會因為 VPC 設定不正確而逾時，且 Amazon EC2 執行個體無法從您的子網路存取 Amazon S3。重新設定 VPC，然後再試一次。