

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

# Amazon MSK 클러스터의 사용자 지정 도메인 이름 구성
<a name="custom-domain-names"></a>

기본 AWS생성 브로커 주소 대신 사용자 지정 도메인 이름을 알리도록 MSK 프로비저닝 클러스터를 구성할 수 있습니다. 사용자 지정 도메인 이름은 Amazon MSK 구성에서 한 번 정의되며 조정 작업 중에 추가된 새 브로커를 포함하여 클러스터의 모든 브로커에 자동으로 적용됩니다. ZooKeeper 및 KRaft 메타데이터 관리 모드에서 모두 작동합니다.

**Topics**
+ [사용자 지정 도메인 이름의 작동 방식](#custom-domain-names-how-it-works)
+ [사전 조건](#custom-domain-names-prerequisites)
+ [사용자 지정 도메인 이름 엔드 투 엔드 설정](custom-domain-setup.md)

## 사용자 지정 도메인 이름의 작동 방식
<a name="custom-domain-names-how-it-works"></a>

Amazon MSK 구성에 `custom.advertised.listeners` 속성을 추가하면 Amazon MSK는 다음을 수행합니다.

1. 구성(리스너 이름, 형식 및 고유성)을 검증합니다.

1. 각 브로커의 `{broker_id}` 템플릿을 해결합니다.

1. 한 번에 하나의 브로커인 롤링 재시작을 통해 구성을 적용합니다.

속성은 다음 형식을 취합니다.

```
custom.advertised.listeners=LISTENER_NAME://hostname-pattern:port+{broker_id}
```

예를 들어 브로커가 3개인 IAM 클러스터의 경우:

```
custom.advertised.listeners=CLIENT_IAM://b-{broker_id}.example.com:9000+{broker_id}
```

이렇게 하면 다음 주소로 확인됩니다.
+ 브로커 1: `b-1.example.com:9001`
+ 브로커 2: `b-2.example.com:9002`
+ 브로커 3: `b-3.example.com:9003`

`{broker_id}` 템플릿 변수는 필수이며 각 브로커가 고유한 주소로 확인되도록 포트에 나타나야 합니다. 연`+`산자는 브로커 ID를 기본 포트에 추가합니다(9000 \+ 1 = 9001, 9000 \+ 2 = 9002, 9000 \+ 10 = 9010).

클러스터에 여러 클라이언트 대상 리스너가 있는 경우 쉼표로 구분하여 서로 다른 도메인을 할당할 수 있습니다.

```
custom.advertised.listeners=CLIENT_IAM://b-{broker_id}.iam.example.com:9000+{broker_id},CLIENT_SASL_SCRAM://b-{broker_id}.scram.example.com:19000+{broker_id}
```

각 리스너는 하나의 사용자 지정 도메인에 매핑됩니다. 동일한 리스너에 여러 도메인을 할당할 수 없습니다. 그러나 리스너는 각 도메인 이름이 브로커당 고유한 `host:port` 조합으로 확인되는 한 동일한 도메인 이름을 공유할 수 있습니다. 예를 들어 두 리스너는 포트별로 공유하고 `b-{broker_id}.example.com` 다를 수 있습니다.

```
custom.advertised.listeners=CLIENT_IAM://b-{broker_id}.example.com:9000+{broker_id},CLIENT_SASL_SCRAM://b-{broker_id}.example.com:19000+{broker_id}
```

이 동작은 ZooKeeper 및 KRaft 메타데이터 관리 모드에서 동일합니다.

**구성을 적용하기 전에 네트워킹 확인**  
`custom.advertised.listeners`를 적용하면 사용자 지정 도메인 이름이 재정의된 리스너의 기본 주소를 대체합니다. 따라서 구성을 적용하기 전에 네트워킹 계층을 마련하고 확인해야 합니다. 네트워킹 및 신뢰 계층이 없고, 확인 가능하며, 연결 가능하고, 클라이언트에서 신뢰할 수 없는 경우 클라이언트는 다시 연결할 수 없습니다. 이는 클라이언트가 이전에 연결된 경우에도 마찬가지입니다. 클라이언트가 사용자 지정 도메인을 확인할 수 없는 경우 연결이 끊어집니다.

## 사전 조건
<a name="custom-domain-names-prerequisites"></a>

클러스터에서 사용자 지정 도메인 이름을 구성하기 전에 다음이 true인지 확인합니다.
+ 클러스터는 `ACTIVE` 상태의 MSK 프로비저닝된 클러스터(Standard 또는 Express 브로커)입니다.
+ 각 리스너는 클러스터의 인증 유형에 해당합니다. , `CLIENT`, , , `CLIENT_SECURE`, 및 클라이언트 리스너에 대해서만 사용자 지정 광고 엔드포인트`CLIENT_SECURE_PUBLIC``CLIENT_SASL_SCRAM`를 설정할 수 `CLIENT_SASL_SCRAM_PUBLIC` `CLIENT_IAM`있습니다`CLIENT_IAM_PUBLIC`. 내부 리스너(`REPLICATION` 및 `CONTROLLER`)는 지원되지 않으며 검증 시 거부됩니다. 지정한 리스너도 클러스터에 바인딩(활성)되어 있어야 합니다. 예를 들어 클러스터가 IAM 인증만 사용하는 경우 지정`CLIENT_SECURE`이 거부되고 오류 메시지에 클러스터에 유효한 클라이언트 리스너가 나열됩니다.
+ 구성을 적용하기 전에 네트워킹 계층이 마련되어 확인됩니다. 이를 적용하면 메타데이터를 새로 고치는 모든 클라이언트가 사용자 지정 도메인 주소를 받습니다. 클라이언트가 사용자 지정 도메인을 확인할 수 없는 경우 연결이 끊어집니다. 구성을 적용하기 전에 네트워킹 계층이 설정되어 있고 모든 클라이언트에서 연결할 수 있는지 확인합니다. Network Load Balancer, Route 53 및 AWS Certificate Manager 설정에 대한 다이어그램으로 표시된 전체 연습은 AWS 빅 데이터 블로그의 [Amazon MSK 클러스터에 대한 사용자 지정 도메인 이름 구성을 참조하세요](https://aws.amazon.com/blogs/big-data/configure-a-custom-domain-name-for-your-amazon-msk-cluster/).