

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

# 교차 계정 수집을 위한 OpenSearch Ingestion 파이프라인 구성
<a name="cross-account-pipelines"></a>

HTTP 및 OTel과 같은 푸시 기반 소스의 경우 Amazon OpenSearch Ingestion을 사용하면 Virtual Private Cloud(VPC) AWS 계정 에서 별도의 VPC의 파이프라인 엔드포인트로 파이프라인을 공유할 수 있습니다. 조직 내 다른 팀과 분석을 공유하는 팀은 로그 분석 공유와 같은 보다 간소화된 수단을 위해 이 기능을 사용합니다.

이 섹션에서는 다음 용어를 사용합니다.
+ **파이프라인 소유자** - OpenSearch Ingestion 파이프라인을 소유하고 관리하는 계정입니다. 하나의 계정만 파이프라인을 소유할 수 있습니다.
+ **계정 연결** - 공유 파이프라인에 연결하고 사용하는 계정입니다. 여러 계정을 동일한 파이프라인에 연결할 수 있습니다.

OpenSearch Ingestion 파이프라인을 공유하도록 VPCs를 구성하려면 여기에 설명된 대로 다음 작업을 AWS 계정완료합니다.
+ (파이프라인 소유자) [연결 계정에 파이프라인에 대한 액세스 권한 부여](#cross-account-pipelines-setting-up-grant-access)
+ (연결 계정) [각 연결 VPC에 대한 파이프라인 엔드포인트 연결 생성](#cross-account-pipelines-setting-up-create-pipeline-endpoints)

## 시작하기 전 준비 사항
<a name="cross-account-pipelines-before-you-begin"></a>

OpenSearch Ingestion 파이프라인을 공유하도록 VPCs를 구성하기 전에 다음 작업을 AWS 계정완료합니다.


****  

| Task | 세부 정보 | 
| --- | --- | 
|  하나 이상의 OpenSearch Ingestion 파이프라인 생성  |  최소 OpenSearch 컴퓨팅 유닛(OSU)을 2 이상으로 설정합니다. 자세한 내용은 [Amazon OpenSearch Ingestion 파이프라인 생성](creating-pipeline.md) 단원을 참조하십시오. 파이프라인을 업데이트는 방법에 대한 자세한 내용은 [Amazon OpenSearch Ingestion 파이프라인 업데이트](update-pipeline.md) 섹션을 참조하세요.  | 
|  OpenSearch Ingestion을 위한 하나 이상의 VPC 생성  |  교차 계정 파이프라인 공유를 활성화하려면 파이프라인 및 파이프라인 엔드포인트와 관련한 모든 VPC를 다음 DNS 값으로 구성해야 합니다.[See the AWS documentation website for more details](http://docs.aws.amazon.com/ko_kr/opensearch-service/latest/developerguide/cross-account-pipelines.html) 자세한 내용은 *Amazon VPC 사용 설명서*의 [VPC에 대한 DNS 속성](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-dns.html)을 참조하세요.  | 

## 연결 계정에 파이프라인에 대한 액세스 권한 부여
<a name="cross-account-pipelines-setting-up-grant-access"></a>

이 섹션의 절차에서는 OpenSearch Service 콘솔 및를 사용하여 리소스 정책을 생성하여 교차 계정 파이프라인 액세스를 AWS CLI 설정하는 방법을 설명합니다. *리소스 정책*을 사용하면 파이프라인 소유자가 파이프라인에 액세스 가능한 다른 계정을 지정할 수 있습니다. 파이프라인이 생성되면 파이프라인이 존재하는 한 또는 정책이 삭제될 때까지 파이프라인 정책이 존재합니다.

**참고**  
리소스 정책은 [IAM 권한](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/creating-pipeline.html#create-pipeline-permissions)을 사용한 표준 OpenSearch Ingestion 권한 부여를 대체하지 않습니다. 리소스 정책은 교차 계정 파이프라인 액세스를 활성화하기 위한 추가 권한 부여 메커니즘입니다.

**Topics**
+ [연결 계정에 파이프라인에 대한 액세스 권한 부여(콘솔)](#cross-account-pipelines-setting-up-grant-access-console)
+ [연결 계정에 파이프라인에 대한 액세스 권한 부여(CLI)](#cross-account-pipelines-setting-up-grant-access-cli)

### 연결 계정에 파이프라인에 대한 액세스 권한 부여(콘솔)
<a name="cross-account-pipelines-setting-up-grant-access-console"></a>

다음 절차에 따라 Amazon OpenSearch Service 콘솔을 사용하여 연결 계정에 파이프라인에 대한 액세스 권한을 부여합니다.

**파이프라인 엔드포인트 연결을 생성하려면**

1. Amazon OpenSearch Service 콘솔의 탐색 창에서 **수집**을 확장한 다음 **파이프라인**을 선택합니다.

1. **파이프라인** 섹션에서 연결 계정에 대한 액세스 권한을 부여하려는 파이프라인의 이름을 선택합니다.

1. **VPC 엔드포인트** 탭을 선택합니다.

1. **권한 있는 보안 주체** 섹션에서 **계정 권한 부여**를 선택합니다.

1. **AWS 계정 ID** 필드에 12자리 숫자 계정 ID를 입력한 다음 **권한 부여**를 선택합니다.

### 연결 계정에 파이프라인에 대한 액세스 권한 부여(CLI)
<a name="cross-account-pipelines-setting-up-grant-access-cli"></a>

다음 절차에 따라 AWS CLI를 사용하여 연결 계정에 파이프라인에 대한 액세스 권한을 부여합니다.

**연결 계정에 파이프라인에 대한 액세스 권한을 부여하려면**

1. 최신 버전의 AWS CLI (버전 2.0)로 업데이트합니다. 자세한 내용은 [Installing or updating to the latest version of the AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)를 참조하세요.

1. 계정과 공유하려는 파이프라인에서 CLI AWS 리전 를 엽니다.

1. 다음 명령을 실행하여 파이프라인에 대한 리소스 정책을 생성합니다. 이 정책은 파이프라인에 대한 `osis:CreatePipelineEndpoint` 권한을 부여합니다. 이 정책에는 허용할 AWS 계정 ID를 나열할 수 있는 파라미터가 포함되어 있습니다.
**참고**  
다음 명령에서는 12자리 계정 ID만 제공하여 짧은 형태의 계정 ID를 사용해야 합니다. ARN을 사용하면 작동하지 않습니다. 또한 다음과 같이 `Resource`의 CLI 파라미터에 파이프라인의 Amazon 리소스 이름(ARN)을 제공하고 `resource-arn` 아래의 정책 JSON에 제공해야 합니다.

   ```
   aws --region {{region}} osis put-resource-policy \
     --resource-arn arn:aws:osis:{{region}}:{{pipeline-owner-account-ID}}:pipeline/{{pipeline-name}}
     --policy '{{IAM-policy}}'
   ```

   {{IAM 정책}}에 다음과 같은 정책 사용

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

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
     {
     "Sid": "AllowAccess",
     "Effect": "Allow",
     "Principal": {
     "AWS": [
     "{{111122223333}}",
     "{{444455556666}}"
     ]
     },
     "Action": 
     "osis:CreatePipelineEndpoint",
     "Resource": "arn:aws:osis:{{us-east-1}}:{{123456789012}}:pipeline/{{pipeline-name}}"
     }
     ]
    }
   ```

------

## 각 연결 VPC에 대한 파이프라인 엔드포인트 연결 생성
<a name="cross-account-pipelines-setting-up-create-pipeline-endpoints"></a>

파이프라인 소유자가 이전 절차를 사용하여 VPC의 파이프라인에 대한 액세스 권한을 부여한 후, 연결 계정의 사용자가 VPC에 파이프라인 엔드포인트를 생성합니다. 이 섹션에는 OpenSearch Service 콘솔 및 AWS CLI를 사용하여 엔드포인트를 생성하는 절차가 포함되어 있습니다. 엔드포인트를 생성할 때 OpenSearch Ingestion은 다음 작업을 수행합니다.
+ 아직 존재하지 않는 경우 계정에 [AWSServiceRoleForAmazonOpenSearchIngestionService](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/slr-osis.html) 서비스 연결 역할을 생성합니다. 이 역할은 연결 계정의 사용자에게 [CreatePipelineEndpoint](https://docs.aws.amazon.com/opensearch-service/latest/APIReference/API_osis_CreatePipelineEndpoint.html) API 작업을 직접적으로 호출할 수 있는 권한을 부여합니다.
+ 파이프라인 엔드포인트를 생성합니다.
+ 파이프라인 소유자 VPC의 공유 파이프라인에서 데이터를 수집하도록 파이프라인 엔드포인트를 구성합니다.

**Topics**
+ [파이프라인 엔드포인트 연결 생성(콘솔)](#cross-account-pipelines-setting-up-create-pipeline-endpoints-console)
+ [파이프라인 엔드포인트 연결 생성(CLI)](#cross-account-pipelines-setting-up-create-pipeline-endpoints-cli)

### 파이프라인 엔드포인트 연결 생성(콘솔)
<a name="cross-account-pipelines-setting-up-create-pipeline-endpoints-console"></a>

다음 절차에 따라 OpenSearch Service 콘솔을 사용하여 파이프라인 엔드포인트를 생성합니다.

**파이프라인 엔드포인트 연결을 생성하려면**

1. Amazon OpenSearch Service 콘솔의 탐색 창에서 **수집**을 확장한 다음 **VPC 엔드포인트**를 선택합니다.

1. **VPC 엔드포인트** 페이지에서 **생성**을 선택합니다.

1. **파이프라인 위치**에서 옵션을 선택합니다. **현재 계정**을 선택할 경우 목록에서 파이프라인을 선택합니다. **교차 계정**을 선택할 경우 필드에 파이프라인 ARN을 지정합니다. 파이프라인 소유자는 [연결 계정에 파이프라인에 대한 액세스 권한 부여](#cross-account-pipelines-setting-up-grant-access)의 설명과 같이 파이프라인에 대한 액세스 권한을 부여해야 합니다.

1. **VPC 설정** 섹션의 **VPC** 목록에서 VPC를 선택합니다.

1. **서브넷**에서 서브넷을 선택합니다.

1. **보안 그룹**에서 그룹을 선택합니다.

1. **엔드포인트 생성**을 선택합니다.

생성한 엔드포인트의 상태가 `ACTIVE`로 전환될 때까지 기다립니다. 파이프라인이 `ACTIVE` 상태가 되면 `ingestEndpointUrl`(이)라는 새 필드가 표시됩니다. 이 엔드포인트를 사용하여 파이프라인에 액세스하고 FluentBit와 같은 클라이언트를 사용하여 데이터를 수집합니다. FluentBit를 사용하여 데이터를 수집하는 데 대한 자세한 내용은 [Fluent Bit와 함께 OpenSearch Ingestion 파이프라인 사용](configure-client-fluentbit.md) 섹션을 참조하세요.

**참고**  
`ingestEndpointUrl`은 모든 연결 계정에 대해 동일한 URL입니다.

### 파이프라인 엔드포인트 연결 생성(CLI)
<a name="cross-account-pipelines-setting-up-create-pipeline-endpoints-cli"></a>

다음 절차에 따라 AWS CLI를 사용하여 파이프라인 엔드포인트 연결을 크레이트합니다.

**파이프라인 엔드포인트 연결을 생성하려면**

1. 아직 업데이트하지 않았다면의 최신 버전 AWS CLI (버전 2.0)으로 업데이트합니다. 자세한 내용은 [Installing or updating to the latest version of the AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)를 참조하세요.

1. 공유 파이프라인을 AWS 리전 사용하여의 연결 계정에서 CLI를 엽니다.

1. 다음 명령을 실행해 파이프라인 엔드포인트를 생성합니다.
**참고**  
계정 VPC를 연결하려면 하나 이상의 서브넷과 하나의 보안 그룹을 제공해야 합니다. 보안 그룹에는 포트 443이 포함되어야 하며, 계정 VPC 연결 시 클라이언트를 지원해야 합니다.

   ```
   aws osis --region {{region}} create-pipeline-endpoint \
     --pipeline-arn arn:aws:osis:{{region}}:{{connecting-account-ID}}:pipeline/{{shared-pipeline-name}}
     --vpc-options SecurityGroupIds={sg-{{security-group-ID-1}},sg-{{security-group-ID-2}}},SubnetIds=subnet-{{subnet-ID}}
   ```

1. 다음 명령을 실행하여 이전 명령에서 지정된 리전의 엔드포인트를 나열합니다.

   ```
   aws osis --region {{region}} list-pipeline-endpoints
   ```

생성한 엔드포인트의 상태가 `ACTIVE`로 전환될 때까지 기다립니다. 파이프라인이 `ACTIVE` 상태가 되면 `ingestEndpointUrl`(이)라는 새 필드가 표시됩니다. 이 엔드포인트를 사용하여 파이프라인에 액세스하고 FluentBit와 같은 클라이언트를 사용하여 데이터를 수집합니다. FluentBit를 사용하여 데이터를 수집하는 데 대한 자세한 내용은 [Fluent Bit와 함께 OpenSearch Ingestion 파이프라인 사용](configure-client-fluentbit.md) 섹션을 참조하세요.

**참고**  
`ingestEndpointUrl`은 모든 연결 계정에 대해 동일한 URL입니다.

## 파이프라인 엔드포인트 제거
<a name="cross-account-pipelines-remove"></a>

공유 파이프라인에 대한 액세스를 더 이상 제공하지 않으려는 경우, 다음 방법 중 하나를 사용하여 파이프라인 엔드포인트를 제거할 수 있습니다.
+ 파이프라인 엔드포인트(연결 계정)를 삭제합니다.
+ 파이프라인 엔드포인트(파이프라인 소유자)를 취소합니다.

다음 절차에 따라 연결 계정에서 파이프라인 엔드포인트를 삭제합니다.

**파이프라인 엔드포인트를 삭제하려면(연결 계정)**

1. 공유 파이프라인을 AWS 리전 사용하여의 연결 계정에서 CLI를 엽니다.

1. 다음 명령을 실행하여 리전의 파이프라인 엔드포인트를 나열합니다.

   ```
   aws osis --region {{region}} list-pipeline-endpoints
   ```

   삭제할 파이프라인 ID를 기록해 둡니다.

1. 다음 명령을 실행하여 파이프라인 엔드포인트를 제거합니다.

   ```
   aws osis --region {{region}} delete-pipeline-endpoint \
     --endpoint-id '{{ID}}'
   ```

공유 파이프라인의 파이프라인 소유자가 다음 절차에 따라 파이프라인 엔드포인트를 취소합니다.

**파이프라인 엔드포인트를 취소하려면(파이프라인 소유자)**

1. 공유 파이프라인을 AWS 리전 사용하여의 연결 계정에서 CLI를 엽니다.

1. 다음 명령을 실행하여 리전의 파이프라인 엔드포인트 연결을 나열합니다.

   ```
   aws osis --region {{region}} list-pipeline-endpoint-connections
   ```

   삭제할 파이프라인 ID를 기록해 둡니다.

1. 다음 명령을 실행하여 파이프라인 엔드포인트를 제거합니다.

   ```
   aws osis --region {{region}} revoke-pipeline-endpoint-connections \
     --pipeline-arn {{pipeline-arn}} --endpoint-ids {{ID}}
   ```

   이 명령은 엔드포인트 ID를 하나만 지정할 수 있도록 지원합니다.