

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 단일 리전에서의 Amazon MSK 다중 VPC 프라이빗 연결
<a name="aws-access-mult-vpc"></a>

Amazon Managed Streaming for Apache Kafka(Amazon MSK) 클러스터에 대한 다중 VPC 프라이빗 연결([AWS PrivateLink](https://docs.aws.amazon.com/vpc/latest/privatelink/what-is-privatelink.html) 제공)은 다양한 Virtual Private Cloud(VPCs) 및 AWS 계정에서 호스팅되는 Kafka 클라이언트를 Amazon MSK 클러스터에 더 빠르게 연결할 수 있는 기능입니다.

다중 VPC 프라이빗 연결은 다중 VPC 및 크로스 계정 연결을 위한 네트워킹 인프라를 간소화하는 관리형 솔루션입니다. 클라이언트는 AWS 네트워크 내에서 모든 트래픽을 유지하면서 PrivateLink를 통해 Amazon MSK 클러스터에 연결할 수 있습니다. Amazon MSK 클러스터에 대한 다중 VPC 프라이빗 연결은 Amazon MSK를 사용할 수 있는 모든 AWS 리전에서 사용할 수 있습니다.

**Topics**
+ [다중 VPC 프라이빗 연결이란 무엇인가요?](#mvpc-what-is)
+ [다중 VPC 프라이빗 연결의 이점](#mvpc-benefits)
+ [다중 VPC 프라이빗 연결에 대한 요구 사항과 제한](#mvpc-requirements)
+ [다중 VPC 프라이빗 연결을 사용하여 시작하기](mvpc-getting-started.md)
+ [클러스터에서 권한 부여 체계 업데이트](mvpc-cross-account-update-authschemes.md)
+ [Amazon MSK 클러스터에 대한 관리형 VPC 연결 거부](mvpc-cross-account-reject-connection.md)
+ [Amazon MSK 클러스터에 대한 관리형 VPC 연결 삭제](mvpc-cross-account-delete-connection.md)
+ [다중 VPC 프라이빗 연결에 대한 권한](mvpc-cross-account-permissions.md)

## 다중 VPC 프라이빗 연결이란 무엇인가요?
<a name="mvpc-what-is"></a>

Amazon MSK에 대한 다중 VPC 프라이빗 연결은 서로 다른 Virtual Private Cloud(VPCs) 및 AWS 계정에서 호스팅되는 Apache Kafka 클라이언트를 MSK 클러스터에 연결할 수 있는 연결 옵션입니다.

Amazon MSK는 [클러스터 정책](mvpc-cluster-owner-action-policy.md)으로 크로스 계정 액세스를 간소화합니다. 이러한 정책을 통해 클러스터 소유자는 다른 AWS 계정에 MSK 클러스터에 대한 프라이빗 연결을 설정할 수 있는 권한을 부여할 수 있습니다.

## 다중 VPC 프라이빗 연결의 이점
<a name="mvpc-benefits"></a>

다중 VPC 프라이빗 연결은 [다른 연결 솔루션](https://docs.aws.amazon.com/msk/latest/developerguide/aws-access.html)에 비해 몇 가지 이점이 있습니다.
+ 프라이빗 AWS PrivateLink 연결 솔루션의 운영 관리를 자동화합니다.
+ 이 솔루션은 연결된 VPC 간 IP 중복을 허용하므로 다른 VPC 연결 솔루션과 관련된 중복되지 않는 IP, 복잡한 피어링, 라우팅 테이블을 유지할 필요가 없습니다.

MSK 클러스터에 대한 클러스터 정책을 사용하여 MSK 클러스터에 대한 교차 계정 프라이빗 연결을 설정할 권한이 있는 AWS 계정을 정의합니다. 크로스 계정 관리자는 적절한 역할 또는 사용자에게 권한을 위임할 수 있습니다. IAM 클라이언트 인증과 함께 사용하는 경우 클러스터 정책을 사용하여 연결 클라이언트에 대해 세분화된 단위로 Kafka 데이터 영역 권한을 정의할 수도 있습니다.

## 다중 VPC 프라이빗 연결에 대한 요구 사항과 제한
<a name="mvpc-requirements"></a>

다중 VPC 프라이빗 연결을 실행하려면 다음 MSK 클러스터 요구 사항을 참고하세요.
+ 다중 VPC 프라이빗 연결은 Apache Kafka 2.7.1 이상에서만 지원됩니다. MSK 클러스터와 함께 사용하는 모든 클라이언트가 클러스터와 호환되는 Apache Kafka 버전을 실행하고 있는지 확인합니다.
+ 다중 VPC 프라이빗 연결은 인증 유형 IAM, TLS, SASL/SCRAM을 지원합니다. 인증되지 않은 클러스터는 다중 VPC 프라이빗 연결을 사용할 수 없습니다.
+ SASL/SCRAM 또는 mTLS 액세스 제어 방법을 사용하는 경우 클러스터에 대해 Apache Kafka ACL을 설정해야 합니다. 먼저 클러스터에 대한 Apache Kafka ACL을 설정합니다. 그런 다음 클러스터의 구성을 업데이트하여 클러스터에 대해 `allow.everyone.if.no.acl.found` 속성이 false로 설정되도록 합니다. 클러스터 구성을 업데이트하는 방법에 대한 자세한 내용은 [브로커 구성 작업](msk-configuration-operations.md) 섹션을 참조하세요. IAM 액세스 제어를 사용 중이고 권한 부여 정책을 적용하거나 업데이트하려는 경우 [IAM 액세스 제어](iam-access-control.md) 섹션을 참조하세요. Apache Kafka ACL에 대한 자세한 내용은 [Apache Kafka ACL](msk-acls.md) 섹션을 참조하세요.
+ 다중 VPC 프라이빗 연결은 t3.small 인스턴스 유형을 지원하지 않습니다.
+ 다중 VPC 프라이빗 연결은 AWS 리전 간에 지원되지 않으며 동일한 리전 내의 AWS 계정에서만 지원됩니다.
+ 다중 VPC 프라이빗 연결을 설정하려면 클러스터 서브넷과 동일한 수의 클라이언트 서브넷이 있어야 합니다. 또한 클라이언트 서브넷과 클러스터 서브넷의 [가용 영역 ID](https://docs.aws.amazon.com/ram/latest/userguide/working-with-az-ids.html)가 동일한지 확인해야 합니다.
+ Amazon MSK는 Zookeeper 노드에 대한 다중 VPC 프라이빗 연결을 지원하지 않습니다.

# 다중 VPC 프라이빗 연결을 사용하여 시작하기
<a name="mvpc-getting-started"></a>

**Topics**
+ [1단계: 계정 A의 MSK 클러스터에서 클러스터의 IAM 인증 체계를 위한 다중 VPC 연결을 활성화](mvpc-cluster-owner-action-turn-on.md)
+ [2단계: MSK 클러스터에 클러스터 정책 연결](mvpc-cluster-owner-action-policy.md)
+ [3단계: 크로스 계정 사용자 작업을 통해 클라이언트 관리형 VPC 연결 구성](mvpc-cross-account-user-action.md)

이 자습서에서는 다중 VPC 연결을 사용하여 Apache Kafka 클라이언트를 클러스터의 내부 AWS및 VPC 외부에서 MSK 클러스터에 비공개로 연결하는 방법의 예로 일반적인 사용 사례를 사용합니다. 이 프로세스를 수행하려면 크로스 계정 사용자가 필요한 클라이언트 권한을 포함하여 각 클라이언트에 대한 MSK 관리형 VPC 연결 및 구성을 생성해야 합니다. 또한 이 프로세스에서는 MSK 클러스터 소유자가 MSK 클러스터에서 PrivateLink 연결을 활성화하고 클러스터에 대한 액세스를 제어하기 위해 인증 체계를 선택해야 합니다.

이 자습서의 다른 부분에서는 이 예제에 적용되는 옵션을 선택합니다. 이 옵션이 MSK 클러스터 또는 클라이언트 인스턴스를 설정하는 데 사용되는 유일한 옵션이라는 의미는 아닙니다.

이 사용 사례의 네트워크 구성은 다음과 같습니다.
+ 크로스 계정 사용자(Kafka 클라이언트)와 MSK 클러스터가 동일한 AWS 네트워크/리전에 있지만 서로 다른 계정에 있습니다.
  + 계정 A의 MSK 클러스터
  + 계정 B의 Kafka 클라이언트
+ 크로스 계정 사용자는 IAM 인증 체계를 사용하여 MSK 클러스터에 비공개로 연결합니다.

이 자습서에서는 Apache Kafka 버전 2.7.1 이상으로 생성된 프로비저닝된 MSK 클러스터가 있다고 가정합니다. 구성 프로세스를 시작하기 전에 MSK 클러스터가 활성 상태여야 합니다. 잠재적인 데이터 손실이나 가동 중지를 방지하기 위해 다중 VPC 프라이빗 연결을 사용하여 클러스터에 연결할 클라이언트는 클러스터와 호환되는 Apache Kafka 버전을 사용해야 합니다.

다음 다이어그램은 다른 AWS 계정의 클라이언트에 연결된 Amazon MSK 다중 VPC 연결의 아키텍처를 보여줍니다.

![\[단일 리전의 다중 VPC 네트워크 다이어그램\]](http://docs.aws.amazon.com/ko_kr/msk/latest/developerguide/images/mvpc-network.png)


# 1단계: 계정 A의 MSK 클러스터에서 클러스터의 IAM 인증 체계를 위한 다중 VPC 연결을 활성화
<a name="mvpc-cluster-owner-action-turn-on"></a>

MSK 클러스터 소유자는 클러스터가 생성된 후 활성 상태에서 MSK 클러스터에 대한 구성 설정을 해야 합니다.

클러스터 소유자는 클러스터에서 활성화될 모든 인증 체계에 대해 활성 클러스터에서 다중 VPC 프라이빗 연결을 활성화합니다. 이는 [UpdateSecurity API](https://docs.aws.amazon.com/msk/1.0/apireference/clusters-clusterarn-security.html) 또는 MSK 콘솔을 사용하여 수행할 수 있습니다. 다중 VPC 프라이빗 연결은 여러 인증 체계 SASL/SCRAM, IAM, TLS를 지원합니다. 인증되지 않은 클러스터에는 다중 VPC 프라이빗 연결을 활성화할 수 없습니다.

이 사용 사례에서는 IAM 인증 체계를 사용하도록 클러스터를 구성합니다.

**참고**  
SASL/SCRAM 인증 체계를 사용하도록 MSK 클러스터를 구성하는 경우 Apache Kafka ACL 속성 “`allow.everyone.if.no.acl.found=false`”는 필수입니다. [Apache Kafka ACLs](https://docs.aws.amazon.com/msk/latest/developerguide/msk-acls.html)를 참조하세요.

다중 VPC 프라이빗 연결 설정을 업데이트하면 Amazon MSK는 브로커 구성을 업데이트하는 브로커 노드의 롤링 재부팅을 시작합니다. 이 작업을 완료하는 데 최대 30분 이상 소요될 수 있습니다. 연결이 업데이트되는 동안에는 클러스터에 다른 업데이트를 수행할 수 없습니다.

**콘솔을 사용하여 계정 A의 클러스터에서 선택한 인증 체계에 대해 다중 VPC를 활성화합니다.**

1. [https://console.aws.amazon.com/msk/](https://docs.aws.amazon.com/msk/latest/developerguide/msk-acls.html)에서 클러스터가 있는 계정에 대해 Amazon MSK 콘솔을 엽니다.

1. 탐색 창의 **MSK 클러스터에서** **클러스터**를 선택하여 계정의 클러스터 목록을 표시합니다.

1. 다중 VPC 프라이빗 연결을 구성할 클러스터를 선택합니다. 클러스터는 활성 상태여야 합니다.

1. 클러스터 **속성** 탭을 선택한 다음 **네트워크** 설정으로 이동합니다.

1. **편집** 드롭다운 메뉴를 선택하고 **다중 VPC 연결 켜기**를 선택합니다.

1. 이 클러스터에 대해 활성화하려는 인증 유형을 하나 이상 선택합니다. 이 사용 사례에서는 **IAM 역할** 기반 인증을 선택합니다.

1. **변경 사항 저장**을 선택합니다.

**Example - 클러스터에서 다중 VPC 프라이빗 연결 인증 체계를 활성화하는 UpdateConnectivity API**  
MSK 콘솔 대신 [UpdateConnectivity API](https://docs.aws.amazon.com/msk/1.0/apireference/clusters-clusterarn-connectivity.html)를 사용하여 다중 VPC 프라이빗 연결을 활성화하고 활성 클러스터에서 인증 체계를 구성할 수 있습니다. 다음 예제는 클러스터에 대해 설정된 IAM 인증 체계를 보여줍니다.  

```
{
  "currentVersion": "K3T4TT2Z381HKD",
  "connectivityInfo": {
    "vpcConnectivity": {
      "clientAuthentication": {
        "sasl": {
          "iam": {
            "enabled": TRUE
            }
        }
      }
    }
  }
}
```

Amazon MSK는 프라이빗 연결에 필요한 네트워킹 인프라를 생성합니다. 또한 Amazon MSK는 프라이빗 연결이 필요한 각 인증 유형에 대해 새 부트스트랩 브로커 엔드포인트 세트를 생성합니다. 일반 텍스트 인증 체계는 다중 VPC 프라이빗 연결을 지원하지 않는다는 점에 유의하세요.

# 2단계: MSK 클러스터에 클러스터 정책 연결
<a name="mvpc-cluster-owner-action-policy"></a>

클러스터 소유자는 클러스터 정책([리소스 기반 정책](https://docs.aws.amazon.com/msk/latest/developerguide/security_iam_service-with-iam.html#security_iam_service-with-iam-resource-based-policies)이라고도 함)을 MSK 클러스터에 연결하여 다중 VPC 프라이빗 연결을 활성화할 수 있습니다. 클러스터 정책은 클라이언트가 다른 계정에서 클러스터에 액세스할 수 있는 권한을 부여합니다. 클러스터 정책을 편집하기 전에 MSK 클러스터에 액세스할 수 있는 권한이 있어야 하는 계정의 계정 ID가 필요합니다. [Amazon MSK가 IAM과 작동하는 방식](https://docs.aws.amazon.com/msk/latest/developerguide/security_iam_service-with-iam.html)을 참조하세요.

클러스터 소유자는 계정 B의 크로스 계정 사용자가 클러스터에 대한 부트스트랩 브로커를 가져오고 계정 A의 MSK 클러스터에서 다음 작업을 할 수 있도록 권한을 부여하는 클러스터 정책을 MSK 클러스터에 연결해야 합니다.
+ CreateVpcConnection
+ GetBootstrapBrokers
+ DescribeCluster
+ DescribeClusterV2

**Example**  
참고로 다음은 MSK 콘솔 IAM 정책 편집기에 표시되는 기본 정책과 유사한 기본 클러스터 정책에 대한 JSON의 예제입니다. 다음 정책은 클러스터, 주제 및 그룹 수준 액세스에 대한 권한을 부여합니다.    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "123456789012"
      },
      "Action": [
        "kafka:CreateVpcConnection",
        "kafka:GetBootstrapBrokers",
        "kafka:DescribeCluster",
        "kafka:DescribeClusterV2",
        "kafka-cluster:*"
      ],
      "Resource": "arn:aws:kafka:us-east-1:111122223333:cluster/testing/de8982fa-8222-4e87-8b20-9bf3cdfa1521-2"
    },
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "123456789012"
      },
      "Action": "kafka-cluster:*",
      "Resource": "arn:aws:kafka:us-east-1:111122223333:topic/testing/*"
    },
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "123456789012"
      },
      "Action": "kafka-cluster:*",
      "Resource": "arn:aws:kafka:us-east-1:111122223333:group/testing/*"
    }
  ]
}
```

**MSK 클러스터에 클러스터 정책 연결**

1. Amazon MSK 콘솔의 **MSK 클러스터**에서 **클러스터**를 선택합니다.

1. **보안 설정**까지 아래로 스크롤하여 **클러스터 편집** 정책을 선택합니다.

1. 콘솔의 **클러스터 정책 편집** 화면에서 **다중 VPC 연결을 위한 기본 정책**을 선택합니다.

1. **계정 ID** 필드에 이 클러스터에 액세스할 수 있는 권한이 있어야 하는 각 계정의 계정 ID를 입력합니다. ID를 입력하면 ID가 표시된 정책 JSON 구문에 자동으로 복사됩니다. 예제 클러스터 정책에서 계정 ID는 *111122223333*입니다.

1. **변경 사항 저장**을 선택합니다.

클러스터 정책 API에 대한 자세한 내용은 [Amazon MSK 리소스 기반 정책](https://docs.aws.amazon.com/msk/latest/developerguide/security_iam_service-with-iam.html#security_iam_service-with-iam-resource-based-policies)을 참조하세요.

# 3단계: 크로스 계정 사용자 작업을 통해 클라이언트 관리형 VPC 연결 구성
<a name="mvpc-cross-account-user-action"></a>

MSK 클러스터와 다른 계정의 클라이언트 간에 다중 VPC 프라이빗 연결을 설정하려면 크로스 계정 사용자가 클라이언트에 대한 관리형 VPC 연결을 생성합니다. 이 절차를 반복하여 여러 클라이언트를 MSK 클러스터에 연결할 수 있습니다. 이 사용 사례에서는 하나의 클라이언트만 구성합니다.

클라이언트는 지원되는 인증 체계인 IAM, SASL/SCRAM 또는 TLS를 사용할 수 있습니다. 각 관리형 VPC 연결에 하나의 인증 체계만 연결할 수 있습니다. 클라이언트 인증 체계는 클라이언트가 연결할 MSK 클러스터에서 구성해야 합니다

 이 사용 사례에서는 계정 B의 클라이언트가 IAM 인증 체계를 사용하도록 클라이언트 인증 체계를 구성합니다.

**사전 조건**

이 프로세스에는 다음 항목이 필요합니다.
+ 이전에 만든 클러스터 정책으로, 계정 B의 클라이언트가 계정 A의 MSK 클러스터에서 작업을 수행할 수 있는 권한을 부여합니다.
+ `kafka:CreateVpcConnection`, `ec2:CreateTags`, `ec2:CreateVPCEndpoint` 및 `ec2:DescribeVpcAttribute` 작업에 대한 권한을 부여하는 계정 B의 클라이언트에 연결된 자격 증명 정책입니다.

**Example**  
참고로 다음은 기본 클라이언트 ID 정책에 대한 JSON의 예제입니다.    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "kafka:CreateVpcConnection",
        "ec2:CreateTags",
        "ec2:CreateVPCEndpoint",
        "ec2:DescribeVpcAttribute"
      ],
      "Resource": "*"
    }
  ]
}
```

**계정 B에서 클라이언트를 위한 관리형 VPC 연결을 만들려면 다음을 수행합니다.**

1. 클러스터 관리자로부터 계정 B의 클라이언트가 연결할 계정 A에 있는 MSK 클러스터의 **클러스터 ARN**을 가져옵니다. 나중에 사용할 클러스터 ARN을 기록해 둡니다.

1. 클라이언트 계정 B의 MSK 콘솔에서 **관리형 VPC 연결**을 선택한 다음 **연결 생성**을 선택합니다.

1. **연결 설정** 창에서 클러스터 ARN을 클러스터 ARN 텍스트 필드에 붙여넣은 다음 **확인**을 선택합니다.

1. 계정 B에서 클라이언트에 대한 **인증 유형**을 선택합니다. 이 사용 사례의 경우 클라이언트 VPC 연결을 생성할 때 IAM을 선택합니다.

1. 클라이언트에 대한 **VPC**를 선택합니다.

1. 최소 2개의 가용 **영역**과 관련 **서브넷**을 선택합니다. AWS Management Console 클러스터 세부 정보에서 또는 [DescribeCluster](https://docs.aws.amazon.com/msk/1.0/apireference/clusters-clusterarn.html#DescribeCluster) API 또는 [describe-cluster](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/kafka/describe-cluster.html) AWS CLI 명령을 사용하여 가용 영역 IDs를 가져올 수 있습니다. 클라이언트 서브넷에 지정하는 영역 ID는 클러스터 서브넷의 영역 ID와 일치해야 합니다. 서브넷의 값이 누락된 경우 먼저 MSK 클러스터와 동일한 영역 ID를 가진 서브넷을 생성합니다.

1. 이 VPC 연결에 사용할 **보안 그룹**을 선택합니다. 기본 보안 그룹을 사용할 수 있습니다. 보안 그룹 구성에 대한 자세한 내용은 [보안 그룹을 사용하여 리소스에 대한 트래픽 제어](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html)를 참조하세요.

1. **연결 생성**을 선택합니다.

1. 크로스 계정 사용자의 MSK 콘솔(**클러스터** 세부 정보 > **관리형 VPC 연결**)에서 새 부트스트랩 브로커 문자열 목록을 가져오려면 “**클러스터 연결 문자열**” 아래에 표시된 부트스트랩 브로커 문자열을 참조하세요. 클라이언트 계정 B에서 부트스트랩 브로커 목록은 [GetBootstrapBrokers](https://docs.aws.amazon.com/msk/1.0/apireference/clusters-clusterarn-bootstrap-brokers.html#GetBootstrapBrokers) API를 호출하거나 콘솔 클러스터 세부 정보에서 부트스트랩 브로커 목록을 확인하여 볼 수 있습니다.

1. 다음과 같이 VPC 연결과 관련된 보안 그룹을 업데이트합니다.

   1. 계정 B 네트워크의 IP 범위에 대한 모든 트래픽을 허용하도록 PrivateLink VPC에 대한 **인바운드 규칙**을 설정합니다.

   1. [선택 사항] MSK 클러스터에 대한 **아웃바운드 규칙** 연결을 설정합니다. VPC 콘솔에서 **보안 그룹**을 선택하고 **아웃바운드 규칙 편집**을 선택한 다음 포트 범위 14001\$114100에 대한 **사용자 지정 TCP 트래픽**에 대한 규칙을 추가합니다. 다중 VPC Network Load Balancer는 14001\$114100 포트 범위에서 수신 대기합니다. [Network Load Balancers](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/network-load-balancers.html)를 참조하세요.

1. 다중 VPC 프라이빗 연결을 위한 새 부트스트랩 브로커를 사용하여 계정 A의 MSK 클러스터에 연결하도록 계정 B의 클라이언트를 구성합니다. [데이터 생성 및 소비](https://docs.aws.amazon.com/msk/latest/developerguide/produce-consume.html)를 참조하세요.

인증이 완료되면 Amazon MSK는 지정된 각 VPC 및 인증 체계에 대해 관리형 VPC 연결을 생성합니다. 선택한 보안 그룹이 각 연결과 관련이 있습니다. 이 관리형 VPC 연결은 Amazon MSK에서 브로커에 비공개로 연결하도록 구성합니다. 새로운 부트스트랩 브로커 세트를 사용하여 Amazon MSK 클러스터에 비공개로 연결할 수 있습니다.

# 클러스터에서 권한 부여 체계 업데이트
<a name="mvpc-cross-account-update-authschemes"></a>

다중 VPC 프라이빗 연결은 여러 인증 체계 SASL/SCRAM, IAM, TLS를 지원합니다. 클러스터 소유자는 하나 이상의 인증 체계에 대한 프라이빗 연결을 활성화/비활성화할 수 있습니다. 이 작업을 수행하려면 클러스터가 활성 상태여야 합니다.

**Amazon MSK 콘솔을 사용하여 인증 체계를 사용 설정하려면 다음을 수행합니다.**

1. 편집하려는 클러스터에 대해 [AWS Management Console](https://console.aws.amazon.com/msk)에서 Amazon MSK 콘솔을 엽니다.

1. 탐색 창의 **MSK 클러스터에서** **클러스터**를 선택하여 계정의 클러스터 목록을 표시합니다.

1. 편집하려는 클러스터를 선택합니다. 클러스터는 활성 상태여야 합니다.

1. 클러스터 **속성** 탭을 선택한 다음 **네트워크 설정**으로 이동합니다.

1. 새 인증 체계를 활성화하려면 **편집** 드롭다운 메뉴를 선택하고 **다중 VPC 연결 켜기**를 선택합니다.

1. 이 클러스터에 대해 활성화하려는 인증 유형을 하나 이상 선택합니다.

1. **선택 켜기**를 선택합니다.

새 인증 체계를 사용 설정할 때 새 인증 체계에 대한 관리형 VPC 연결도 새로 만들고 클라이언트가 새 인증 체계에 특정한 부트스트랩 브로커를 사용하도록 업데이트해야 합니다.

**Amazon MSK 콘솔을 사용하여 인증 체계를 비활성화하려면 다음을 수행합니다.**
**참고**  
인증 체계에 대한 다중 VPC 프라이빗 연결을 비활성화하면 관리형 VPC 연결을 포함한 모든 연결 관련 인프라가 삭제됩니다.

인증 체계에 대한 다중 VPC 프라이빗 연결을 비활성화하면 클라이언트 측의 기존 VPC 연결이 비활성 상태로 변경되고 클러스터 측의 관리형 VPC 연결을 포함한 클러스터 측의 PrivateLink 인프라가 제거됩니다. 크로스 계정 사용자는 비활성 VPC 연결만 삭제할 수 있습니다. 클러스터에서 프라이빗 연결이 다시 활성화된 경우 크로스 계정 사용자는 클러스터에 대한 새 연결을 생성해야 합니다.

1. [AWS Management Console](https://console.aws.amazon.com/msk)에서 Amazon MSK 콘솔을 엽니다.

1. 탐색 창의 **MSK 클러스터에서** **클러스터**를 선택하여 계정의 클러스터 목록을 표시합니다.

1. 편집하려는 클러스터를 선택합니다. 클러스터는 활성 상태여야 합니다.

1. 클러스터 **속성** 탭을 선택한 다음 **네트워크 설정**으로 이동합니다.

1. 인증 체계를 비활성화하려면 **편집** 드롭다운 메뉴를 선택하고 **다중 VPC 연결 끄기**를 선택합니다.

1. 이 클러스터에 대해 비활성화하려는 인증 유형을 하나 이상 선택합니다.

1. **선택 끄기**를 선택합니다.

**Example API를 사용하여 인증 체계를 켜거나 끄려면 다음을 수행합니다.**  
MSK 콘솔 대신 [UpdateConnectivity API](https://docs.aws.amazon.com/msk/1.0/apireference/clusters-clusterarn-connectivity.html)를 사용하여 다중 VPC 프라이빗 연결을 활성화하고 활성 클러스터에서 인증 체계를 구성할 수 있습니다. 다음 예제는 클러스터에 설정된 SASL/SCRAM 및 IAM 인증 체계를 보여줍니다.  
새 인증 체계를 사용 설정할 때 새 인증 체계에 대한 관리형 VPC 연결도 새로 만들고 클라이언트가 새 인증 체계에 특정한 부트스트랩 브로커를 사용하도록 업데이트해야 합니다.  
인증 체계에 대한 다중 VPC 프라이빗 연결을 비활성화하면 클라이언트 측의 기존 VPC 연결이 비활성 상태로 변경되고 관리형 VPC 연결을 포함하여 클러스터 측의 PrivateLink 인프라가 제거됩니다. 크로스 계정 사용자는 비활성 VPC 연결만 삭제할 수 있습니다. 클러스터에서 프라이빗 연결이 다시 활성화된 경우 크로스 계정 사용자는 클러스터에 대한 새 연결을 생성해야 합니다.  

```
Request:
{
  "currentVersion": "string",
  "connnectivityInfo": {
    "publicAccess": {
      "type": "string"
    },
    "vpcConnectivity": {
      "clientAuthentication": {
        "sasl": {
          "scram": {
            "enabled": TRUE
          },
          "iam": {
            "enabled": TRUE
          }        
        },
        "tls": {
          "enabled": FALSE
        }
      }
    }
  }
}

Response:
{
  "clusterArn": "string",
  "clusterOperationArn": "string"
}
```

# Amazon MSK 클러스터에 대한 관리형 VPC 연결 거부
<a name="mvpc-cross-account-reject-connection"></a>

클러스터 관리자 계정의 Amazon MSK 콘솔에서 클라이언트 VPC 연결을 거부할 수 있습니다. 클라이언트 VPC 연결이 거부되려면 사용 가능 상태여야 합니다. 더 이상 클러스터에 연결할 수 있는 권한이 없는 클라이언트의 관리형 VPC 연결을 거부할 수 있습니다. 클라이언트에 연결되는 새 관리형 VPC 연결을 방지하려면 클러스터 정책에서 클라이언트에 대한 액세스를 거부합니다. 거부된 연결은 연결 소유자가 삭제할 때까지 비용이 계속 발생합니다. [Amazon MSK 클러스터에 대한 관리형 VPC 연결 삭제](https://docs.aws.amazon.com/msk/latest/developerguide/mvpc-cross-account-delete-connection.html)를 참조하세요.

**MSK 콘솔을 사용하여 클라이언트 VPC 연결을 거부하려면 다음을 수행합니다.**

1. [AWS Management Console](https://console.aws.amazon.com/msk)에서 Amazon MSK 콘솔을 엽니다.

1. 탐색 창에서 **클러스터**를 선택하고 **네트워크 설정 > 클라이언트 VPC 연결** 목록으로 스크롤합니다.

1. 거부하려는 연결을 선택하고 클라이언트 **VPC 연결 거부**를 선택합니다.

1. 선택한 클라이언트 VPC 연결을 거부할지 확인합니다.

API를 사용하여 관리형 VPC 연결을 거부하려면 `RejectClientVpcConnection` API를 사용합니다.

# Amazon MSK 클러스터에 대한 관리형 VPC 연결 삭제
<a name="mvpc-cross-account-delete-connection"></a>

크로스 계정 사용자는 클라이언트 계정 콘솔에서 MSK 클러스터에 대한 관리형 VPC 연결을 삭제할 수 있습니다. 클러스터를 소유한 사용자는 관리형 VPC 연결을 소유하지 않으므로 클러스터 관리자 계정에서 연결을 삭제할 수 없습니다. VPC 연결이 삭제되면 더 이상 비용이 발생하지 않습니다.

**MSK 콘솔을 사용하여 관리형 VPC 연결을 삭제하려면 다음을 수행합니다.**

1. 클라이언트 계정의 [AWS Management Console](https://console.aws.amazon.com/msk)에서 Amazon MSK 콘솔을 엽니다.

1. 탐색 창에서 **관리형 VPC 연결**을 선택합니다.

1. 연결 목록에서 삭제하려는 연결을 선택합니다.

1. VPC 연결을 삭제할 것인지 확인합니다.

API를 사용해 관리형 VPC 연결을 삭제하려면 `DeleteVpcConnection` API를 사용합니다.

# 다중 VPC 프라이빗 연결에 대한 권한
<a name="mvpc-cross-account-permissions"></a>

이 섹션에서는 다중 VPC 프라이빗 연결 기능을 사용하는 클라이언트와 클러스터에 필요한 권한을 요약합니다. 다중 VPC 프라이빗 연결은 클라이언트 관리자가 MSK 클러스터에 대한 관리형 VPC 연결이 가능한 각 클라이언트에 대한 권한을 생성해야 합니다. 또한 MSK 클러스터 관리자는 MSK 클러스터에서 PrivateLink 연결을 활성화하고 인증 체계를 선택하여 클러스터에 대한 액세스를 제어해야 합니다.

**클러스터 인증 유형 및 주제 액세스 권한**  
MSK 클러스터에서 활성화된 인증 체계에 대해 다중 VPC 프라이빗 연결 기능을 사용 설정합니다. [다중 VPC 프라이빗 연결에 대한 요구 사항과 제한](aws-access-mult-vpc.md#mvpc-requirements)을 참조하세요. SASL/SCRAM 인증 체계를 사용하도록 MSK 클러스터를 구성하는 경우 Apache Kafka ACL 속성 `allow.everyone.if.no.acl.found=false`는 필수입니다. 클러스터에 대해 [Apache Kafka ACL](msk-acls.md)을 설정한 후 클러스터의 구성을 업데이트하여 클러스터에 대해 `allow.everyone.if.no.acl.found` 속성이 false로 설정되도록 합니다. 클러스터 구성을 업데이트하는 방법에 대한 자세한 내용은 [브로커 구성 작업](msk-configuration-operations.md) 섹션을 참조하세요.

**크로스 계정 클러스터 정책 권한**  
Kafka 클라이언트가 MSK 클러스터와 다른 AWS 계정에 있는 경우 클라이언트 루트 사용자에게 교차 계정 연결을 승인하는 클러스터 기반 정책을 MSK 클러스터에 연결합니다. MSK 콘솔의 IAM 정책 편집기(클러스터 **보안 설정** > **클러스터 정책 편집**)를 사용하여 다중 VPC 클러스터 정책을 편집하거나 다음 API를 사용하여 클러스터 정책을 관리할 수 있습니다.

**PutClusterPolicy**  
클러스터 정책을 클러스터에 연결합니다. 이 API를 사용하여 지정된 MSK 클러스터 정책을 생성하거나 업데이트할 수 있습니다. 정책을 업데이트하는 경우 요청 페이로드에 currentVersion 필드가 필수입니다.

**GetClusterPolicy**  
클러스터에 연결된 클러스터 정책 문서의 JSON 텍스트를 검색합니다.

**DeleteClusterPolicy**  
클러스터 정책을 삭제합니다.

다음은 MSK 콘솔 IAM 정책 편집기에 표시된 것과 유사한 기본 클러스터 정책에 대한 JSON의 예제입니다. 다음 정책은 클러스터, 주제 및 그룹 수준 액세스에 대한 권한을 부여합니다.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [{
        "Effect": "Allow",
        "Principal": {
            "AWS": [
                "123456789012"
            ]
        },
        "Action": [
            "kafka-cluster:*",
            "kafka:CreateVpcConnection",
            "kafka:GetBootstrapBrokers",
            "kafka:DescribeCluster",
            "kafka:DescribeClusterV2"
        ],
        "Resource": [
            "arn:aws:kafka:us-east-1:123456789012:cluster/testing/de8982fa-8222-4e87-8b20-9bf3cdfa1521-2",
            "arn:aws:kafka:us-east-1:123456789012:topic/testing/*",
            "arn:aws:kafka:us-east-1:123456789012:group/testing/*"
        ]
    }]
}
```

------

**MSK 클러스터에 대한 다중 VPC 프라이빗 연결을 위한 클라이언트 권한**  
Kafka 클라이언트와 MSK 클러스터 간에 다중 VPC 프라이빗 연결을 설정하려면 클라이언트에 대한 `kafka:CreateVpcConnection`, `ec2:CreateTags`, `ec2:CreateVPCEndpoint` 작업에 대한 권한을 부여하는 연결된 ID 정책이 필요합니다. 참고로 다음은 기본 클라이언트 ID 정책에 대한 JSON의 예제입니다.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "kafka:CreateVpcConnection",
        "ec2:CreateTags",
        "ec2:CreateVPCEndpoint"
      ],
      "Resource": "*"
    }
  ]
}
```

------