

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

# Amazon Aurora 中自訂端點的考量
<a name="Aurora.Endpoints.Custom.Considerations"></a>

使用下列各節來管理、指定屬性，以及使用自訂端點的成員資格規則。

**Topics**
+ [管理自訂端點](#Aurora.Endpoints.Custom.Managing)
+ [指定自訂端點的屬性](#Aurora.Endpoints.Custom.Properties)
+ [自訂端點的成員資格規則](#Aurora.Endpoints.Custom.Membership)

## 管理自訂端點
<a name="Aurora.Endpoints.Custom.Managing"></a>

由於新建立的 Aurora 叢集沒有自訂端點，則您必須自行建立和管理這些物件。您可以使用 AWS 管理主控台 AWS CLI或 Amazon RDS API 來執行此操作。

**注意**  
您還必須為從快照還原的 Aurora 叢集建立和管理自訂端點。快照中不會包含自訂端點。如果還原的叢集位於與原始叢集相同的區域，您會在還原之後建立它們，並選擇端點名稱。

若要從 使用自訂端點 AWS 管理主控台，您可以導覽至 Aurora 叢集的詳細資訊頁面，並使用**自訂端點**區段下的控制項。

若要從 使用自訂端點 AWS CLI，您可以使用下列操作：
+ [create-db-cluster-endpoint](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-cluster-endpoint.html)
+ [describe-db-cluster-endpoints](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-cluster-endpoints.html)
+ [modify-db-cluster-endpoint](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-cluster-endpoint.html)
+ [delete-db-cluster-endpoint](https://docs.aws.amazon.com/cli/latest/reference/rds/delete-db-cluster-endpoint.html)

若要透過 Amazon RDS API 使用自訂端點，您可以使用下列函數：
+ [CreateDBClusterEndpoint](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBClusterEndpoint.html)
+ [DescribeDBClusterEndpoints](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBClusterEndpoints.html)
+ [ModifyDBClusterEndpoint](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBClusterEndpoint.html)
+ [DeleteDBClusterEndpoint](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DeleteDBClusterEndpoint.html)

## 指定自訂端點的屬性
<a name="Aurora.Endpoints.Custom.Properties"></a>

自訂端點名稱的長度上限為 63 個字元。名稱格式如下：

```
{{endpoint_name}}.cluster-custom-{{customer_DNS_identifier}}.{{AWS_Region}}.rds.amazonaws.com
```

您不可以對同一 AWS 區域中的一個以上叢集重複使用相同的自訂端點名稱。自訂 DNS 識別符是與特定 AWS 帳戶 中的 相關聯的唯一識別符 AWS 區域。

每個自訂端點有相關聯的類型，決定哪些資料庫執行個體符合資格可與該端點產生關聯。目前，類型可以是 `READER` 或 `ANY`。自訂端點類型適用下列考量：
+ 您無法在 AWS 管理主控台中選取自訂端點類型。您透過 建立的所有自訂端點 AWS 管理主控台 都有 類型`ANY`。

  您可以使用 AWS CLI 或 Amazon RDS API 來設定和修改自訂端點類型。
+ 僅讀取器資料庫執行個體可以成為 `READER` 自訂端點的一部分。
+ 讀取器和寫入器資料庫執行個體都可以是 `ANY` 自訂端點。Aurora 會以相同概率，將 `ANY` 類型之叢集端點的連線導向任何相關的資料庫執行個體。`ANY` 類型適用於使用任何複寫拓撲的叢集。
+  如果您嘗試使用未適當根據叢集的複寫組態的類型來建立自訂端點，Aurora 會傳回錯誤。

## 自訂端點的成員資格規則
<a name="Aurora.Endpoints.Custom.Membership"></a>

 新增資料庫執行個體至自訂端點或將它從自訂端點移除時，對該資料庫執行個體的任何現有連線會保持作用中。

 您可以定義要從自訂端點包括或排除的資料庫執行個體清單。我們將這些清單分別稱為*靜態*和*排除*清單。您可以使用包含/排除機制來進一步細分資料庫執行個體的群組，以及確定自訂端點集涵蓋叢集中的所有資料庫執行個體。每個自訂端點只能包含這些清單類型的其中一個。

在 中 AWS 管理主控台：
+ 此選擇會以核取方塊 **Attach future instances added to this cluster** (連線新增至此叢集的未來執行個體) 呈現。將該核取方塊保持未選取時，自訂端點會使用僅包含頁面上所指定資料庫執行個體的靜態清單。選取該核取方塊時，自訂端點會使用排除清單。在此情況下，自訂端點會呈現叢集中的所有資料庫執行個體 (包括您未來所新增的任何項目)，在頁面上保持未選取的那些除外。
+ 主控台不允許您指定端點類型。使用主控台建立的任何自訂端點都屬於類型 `ANY`。

  因此，當資料庫執行個體由於容錯移轉或升級而在寫入器與讀取器之間變更角色時，Aurora 不會變更自訂端點的成員資格。

在 AWS CLI 和 Amazon RDS API 中：
+ 您可以指定端點類型。因此，當端點類型設為 `READER` 時，端點成員資格會在容錯移轉和升級期間自動調整。

  例如，類型 `READER` 的自訂端點包含一個 Aurora 複本，隨後會將其提升為寫入器資料庫執行個體。新的寫入器執行個體不再是自訂端點的一部分。
+ 您可以將個別成員新增至清單，並在其變更角色後，將其從清單中移除。使用 [modify-db-cluster-endpoint](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/modify-db-cluster-endpoint.html) AWS CLI 命令或 [ModifyDBClusterEndpoint](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBClusterEndpoint.html) API 操作。

您可以將一個資料庫執行個體與多個自訂端點建立關聯。例如，假設您將新資料庫執行個體新增至叢集，或是 Aurora 透過自動擴展機制自動新增資料庫執行個體。在這些情況下，資料庫執行個體會新增至符合其資格的所有自訂端點。資料庫執行個體新增至其中的目標端點會根據 `READER` 或 `ANY` 的自訂端點類型，以及為每個端點定義的任何靜態或排除清單。例如，如果端點包含資料庫執行個體的靜態清單，新增加的 Aurora 複本不會新增至該端點。相反地，如果端點有排除清單，新增加的 Aurora 複本如果名稱未列在排除清單，且其角色符合自訂端點的類型，即會新增至端點。

如果 Aurora 複本變得無法使用，則會保持與任何自訂端點相關聯。例如，當它狀況不良、已停止、重新開機等等，它會保留部分自訂端點。不過，除非它再次變得可供使用，否則您無法透過這些端點連線至它。