

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

# 設定雙堆疊網路類型
<a name="serverless-config-dual-stack"></a>

 對於使用 Kafka 3.6.0 版或更新版本的現有 MSK Serverless 叢集，Amazon MSK 支援雙堆疊網路類型，無需額外費用。透過雙堆疊聯網，您的叢集可以使用 IPv4 和 IPv6 地址。雙堆疊端點也支援 IPv4，因此可維持回溯相容性。Amazon MSK 透過雙堆疊網路類型提供 IPv6 支援，而不是IPv6-only。

 根據預設，用戶端會使用 IPv4 網路類型連線至 Amazon MSK 叢集。根據預設，您建立的所有新叢集也會使用 IPv4。若要將叢集的網路類型更新為雙堆疊，請確定您已滿足下節所述的先決條件。然後，使用 [UpdateConnectivity](https://docs.aws.amazon.com/msk/1.0/apireference/clusters-clusterarn-connectivity.html#UpdateConnectivity) API 更新雙堆疊的連線。

**注意**  
將叢集更新為使用雙堆疊網路類型後，就無法切換回 IPv4 網路類型。

**Topics**
+ [

## 使用雙堆疊網路類型的先決條件
](#msks-ipv6-prerequisites)
+ [

## MSK Serverless 的 IAM 許可
](#msks-ipv6-iam-permissions)
+ [

## 使用叢集的雙堆疊網路類型
](#update-msks-network-type)
+ [

## 使用雙堆疊網路類型的考量
](#msks-dual-stack-considerations)

## 使用雙堆疊網路類型的先決條件
<a name="msks-ipv6-prerequisites"></a>

為叢集設定雙堆疊網路類型之前，請確定您在叢集建立期間提供的所有子網路都必須支援雙堆疊網路類型。如果叢集中的一個子網路不支援雙堆疊，您將無法將叢集的網路類型更新為雙堆疊。

## MSK Serverless 的 IAM 許可
<a name="msks-ipv6-iam-permissions"></a>

您必須具備下列 IAM 許可：
+  `ec2:DescribeSubnets` 
+  `ec2:ModifyVpcEndpoint` 

如需執行所有 Amazon MSK 動作所需的完整許可清單，請參閱 AWS 受管政策：[AmazonMSKFullAccess。](https://docs.aws.amazon.com/msk/latest/developerguide/security-iam-awsmanpol.html#security-iam-awsmanpol-AmazonMSKFullAccess)

## 使用叢集的雙堆疊網路類型
<a name="update-msks-network-type"></a>

您可以使用 AWS 管理主控台 AWS CLI、 或 AWS SDK 更新 MSK Serverless 叢集的網路類型。

------
#### [ Using AWS 管理主控台 ]

1. 開啟 Amazon MSK 主控台，網址為 [https://console.aws.amazon.com/msk/home?region=us-east-1\$1/home/](https://console.aws.amazon.com/msk/home?region=us-east-1#/home/)。

1. 選擇您要為其設定雙堆疊網路類型的 MSK Serverless 叢集。

1. 在叢集詳細資訊頁面上，選擇**屬性**。

1. 在**網路設定**中，選擇**編輯網路類型**。

1. 針對**網路類型**，選擇**雙堆疊**。

1. 選擇**儲存變更**。

------
#### [ Using AWS CLI ]

您可以使用 [ update-connectivity](https://docs.aws.amazon.com/cli/latest/reference/kafka/update-connectivity.html) API，將現有 MSK Serverless 叢集的網路類型更新為雙堆疊。下列範例使用 ` update-connectivity`命令將叢集的網路類型設定為雙堆疊。

在下列範例中，將範例叢集 ARN arn：aws：kafka：*us-east-1*：* 123456789012*：cluster/*myCluster* /*12345678-1234-1234-1234-123456789012 -1*，取代為您實際的 MSK 叢集 ARN。若要取得目前的叢集版本，請使用 [describe-cluster](https://docs.aws.amazon.com/cli/latest/reference/kafka/describe-cluster.html) 命令。

```
aws kafka update-connectivity \
    --cluster-arn "arn:aws:kafka:us-east-1:123456789012:cluster/myCluster/12345678-1234-1234-1234-123456789012-1" \
    --current-version "KTVPDKIKX0DER" \
    --connectivity-info '{
        "networkType": "DUAL"
    }
```

------
#### [ Using AWS SDK ]

下列範例使用 [UpdateConnectivity](https://docs.aws.amazon.com/msk/1.0/apireference/clusters-clusterarn-connectivity.html#UpdateConnectivity) API 將叢集的網路類型設定為雙堆疊。

在下列範例中，將範例叢集 ARN arn：aws：kafka：*us-east-1*：*123456789012*：cluster/*myCluster*/*12345678-1234-1234-1234-123456789012-1* 取代為您實際的 MSK 叢集 ARN。若要取得目前的叢集版本，請使用 [DescribeCluster](https://docs.aws.amazon.com/msk/1.0/apireference/clusters-clusterarn.html#DescribeCluster) API。

```
import boto3

client = boto3.client("kafka")

response = client.update_connectivity(
    ClusterArn="arn:aws:kafka:us-east-1:123456789012:cluster/myCluster/12345678-1234-1234-1234-123456789012-1",
    CurrentVersion="KTVPDKIKX0DER",
    ConnectivityInfo={
        "NetworkType": "DUAL"
    }
)
print("Connectivity update initiated:", response)
```

------

## 使用雙堆疊網路類型的考量
<a name="msks-dual-stack-considerations"></a>
+ IPv6 支援目前僅適用於雙堆疊模式 (IPv4 \$1 IPv6)，不能IPv6-only使用。
+ 雙堆疊網路類型不適用於多 VPC 私有連線。
+ 只有在現有叢集的所有子網路都支援雙堆疊網路類型時，才能將網路類型從 IPv4 變更為雙堆疊。
+ 啟用雙堆疊後，您無法還原為 IPv4 網路類型。若要切換回，您必須刪除並重新建立叢集。
+ 您必須具備下列 IAM 許可：
  + `ec2:DescribeSubnets` 和 ` ec2:ModifyVpcEndpoint`