> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-trino-dialect.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# ClickPipes에 MSK를 노출하기 위한 AWS PrivateLink 설정

> MSK multi-VPC 연결을 통해 프라이빗 MSK를 ClickPipes에 노출하는 설정 단계입니다.

<div id="overview">
  ## 개요
</div>

이 가이드는 [ClickPipes reverse private endpoint](/ko/integrations/clickpipes/networking/aws-privatelink#msk-multi-vpc)와 함께 사용할 **MSK multi-VPC** 설정을 시작하는 방법을 설명합니다.

ClickPipes는 클라이언트 VPC를 소유하고 관리형 VPC 연결을 생성합니다. 네트워크 연결을 설정하려면 MSK 클러스터에서 multi-VPC 프라이빗 연결을 활성화하고 cluster policy에서 ClickPipes AWS 계정을 승인하십시오.

<div id="requirements">
  ## 요구 사항
</div>

MSK 클러스터의 VPC는 ClickPipes 리전 중 하나에 있어야 합니다. 지원되는 리전 목록은 [ClickPipes 리전](/ko/integrations/clickpipes/networking/aws-privatelink#aws-privatelink-regions)을 참조하십시오.

<div id="enabling-multi-vpc-connectivity">
  ## multi-VPC 연결 활성화
</div>

<Tabs>
  <Tab title="AWS 콘솔" id="aws-console">
    1. MSK 클러스터로 이동합니다.
       * Amazon MSK 콘솔의 왼쪽 탐색 창에서 "Clusters"를 선택합니다.
       * multi-VPC 연결용으로 구성할 특정 MSK 클러스터를 선택합니다.
    2. MSK multi-VPC 연결을 활성화합니다.
       * **Connectivity** 탭에서 **Multi-VPC connectivity** 섹션을 찾습니다.
       * **Edit**를 클릭합니다.
       * **Turn-on MSK multi-VPC connectivity** 옵션을 활성화합니다.
       * 안내에 따라 진행합니다.
    3. ClickPipes 계정 주체를 클러스터 정책에 추가합니다.
       * **Configuration** 탭으로 이동합니다.
       * **Cluster policy** 섹션에서 **Edit**를 클릭합니다.
       * **IAM policy**에 `arn:aws:iam::072088201116:root`를 포함합니다. 예시:
         ```json theme={null}
         {
             "Version": "2012-10-17",
             "Statement": [
                 {
                     "Effect": "Allow",
                     "Principal": {
                         "AWS": [
                             "arn:aws:iam::072088201116:root"
                         ]
                     },
                     "Action": [
                         "kafka:CreateVpcConnection",
                         "kafka:GetBootstrapBrokers",
                         "kafka:DescribeCluster",
                         "kafka:DescribeClusterV2"
                     ],
                     "Resource": "<MSK_CLUSTER_ARN>"
                 }
             ]
         }
         ```
  </Tab>

  <Tab title="Terraform" id="terraform-msk">
    클러스터와 multi-VPC 연결 모두에 대해 MSK 인증 방법을 활성화합니다. 다음 예시에서는 SASL/IAM을 사용합니다. SASL/SCRAM을 사용하려면 대신 `scram = true`로 설정합니다.

    ```hcl theme={null}
    resource "aws_msk_cluster" "this" {
      # ... 기존 구성 ...

      client_authentication {
        sasl {
          iam = true
        }
      }

      broker_node_group_info {
        # ... 기존 구성 ...

        connectivity_info {
          vpc_connectivity {
            client_authentication {
              sasl {
                iam = true
              }
            }
          }
        }
      }
    }
    ```

    MSK 클러스터 정책에서 ClickPipes AWS 계정을 승인합니다.

    ```hcl theme={null}
    resource "aws_msk_cluster_policy" "clickpipes" {
      cluster_arn = aws_msk_cluster.this.arn

      policy = jsonencode({
        Version = "2012-10-17"
        Statement = [{
          Sid       = "ClickPipesMultiVpc"
          Effect    = "Allow"
          Principal = { AWS = "arn:aws:iam::072088201116:root" }
          Action = [
            "kafka:CreateVpcConnection",
            "kafka:GetBootstrapBrokers",
            "kafka:DescribeCluster",
            "kafka:DescribeClusterV2",
          ]
          Resource = aws_msk_cluster.this.arn
        }]
      })
    }
    ```

    클러스터에 이미 정책이 있다면 ClickPipes 권한을 추가할 때 기존 정책 구문을 유지합니다.
  </Tab>
</Tabs>

<Tip>
  클러스터 IAM 정책을 사용하면 ClickPipes가 ClickPipes에서 MSK 클러스터로의 연결을 시작할 수 있습니다.
  MSK 클러스터에 IAM 인증을 구성하려면 [IAM authentication documentation](/ko/integrations/clickpipes/kafka/best-practices#iam)을 참조하십시오.
</Tip>

<div id="creating-reverse-private-endpoint">
  ## Reverse Private Endpoint 생성하기
</div>

<Tabs>
  <Tab title="ClickPipes UI" id="clickpipes-ui">
    [ClickPipes 문서](/ko/integrations/clickpipes/networking/aws-privatelink#creating-clickpipe)의 Reverse Private Endpoint 생성 절차를 따르십시오.
  </Tab>

  <Tab title="Terraform" id="terraform-rpe">
    [ClickHouse Terraform 프로바이더](https://registry.terraform.io/providers/ClickHouse/clickhouse/latest/docs/resources/clickpipes_reverse_private_endpoint)를 사용하여 Reverse Private Endpoint를 생성합니다.

    ```hcl theme={null}
    resource "clickhouse_clickpipes_reverse_private_endpoint" "msk" {
      service_id         = var.clickhouse_service_id
      description        = "MSK multi-VPC reverse private endpoint"
      type               = "MSK_MULTI_VPC"
      msk_cluster_arn    = aws_msk_cluster.this.arn
      msk_authentication = "SASL_IAM" # Or "SASL_SCRAM"

      depends_on = [aws_msk_cluster_policy.clickpipes]
    }
    ```

    리소스 필드는 변경할 수 없습니다. 필드를 변경하면 Reverse Private Endpoint가 삭제된 후 다시 생성됩니다.
  </Tab>
</Tabs>
