

# IPAM으로 접두사 목록 업데이트 자동화
<a name="automate-prefix-list-updates"></a>

[관리형 접두사 목록](https://docs.aws.amazon.com/vpc/latest/userguide/managed-prefix-lists.html)은 개별 IP 주소를 지정하는 대신 보안 그룹 규칙 및 라우팅 테이블에서 참조할 수 있는 CIDR 블록 세트입니다. 예를 들어, `10.1.0.0/16`, `10.2.0.0/16` 및 `10.3.0.0/16`에 대한 별도의 보안 그룹 규칙을 생성하는 대신 세 개의 CIDR 모두 포함된 하나의 접두사 목록을 생성하고 단일 규칙에서 참조할 수 있습니다.

두 가지의 유형이 있습니다.
+ **고객 관리형 접두사 목록**: 사용자가 정의하고 관리하는 IP 주소 범위
+ **AWS관리형 접두사 목록**: AWS 서비스의 IP 범위(예: S3 또는 CloudFront)

이 IPAM 기능은 CIDR 항목을 네트워크 변경 사항과 동기화된 상태로 유지하여 **고객 관리형 접두사 목록**의 관리를 자동화합니다.

## 이 문제 해결
<a name="the-problem-this-solves"></a>

자동화하지 않으면 네트워크 팀은 인프라가 변경될 때 접두사 목록을 수동으로 업데이트하고 환경 및 리전 전체에서 일관된 접두사 목록을 유지하는 데 상당한 시간을 소비합니다.

IPAM은 접두사 목록을 자동으로 채우는 규칙을 생성할 수 있도록 함으로써 이 문제를 해결합니다. IPAM 풀에서 CIDR을 참조하거나 실제 AWS 리소스를 기반으로 규칙을 생성하는 두 가지 접근 방식을 사용할 수 있습니다. 예를 들어 ‘env=prod로 태그가 지정된 모든 VPC 포함’, ‘us-east-1의 모든 서브넷 포함’ 또는 ‘계정 123456789이 소유한 모든 탄력적 IP 주소 포함’ 등이 있습니다. 이러한 리소스를 추가하거나 제거하면 IPAM은 CIDR로 접두사 목록을 자동으로 업데이트합니다.

## 작동 방식
<a name="how-it-works"></a>

접두사 목록에 포함할 IP 주소를 IPAM에 알려주는 규칙을 생성합니다. (예: ‘env=prod로 태그가 지정된 모든 VPC CIDR 포함’) 프로덕션 VPC를 추가하거나 제거하면 IPAM이 접두사 목록을 자동으로 업데이트합니다.

## 이를 사용해야 하는 경우
<a name="when-to-use-it"></a>
+ **보안 그룹**: ‘env=prod 태그가 지정된 모든 VPC 포함’ 규칙을 생성하면 새 프로덕션 VPC 추가할 때 보안 그룹 규칙에서 자동으로 허용
+ **다중 리전**: CIDR 항목을 수동으로 복사하지 않고 동일한 접두사 목록을 유지하기 위해 여러 리전에 동일한 IPAM 규칙 배포
+ **동적 인프라**: VPC 또는 서브넷을 생성/삭제하면 수동 업데이트 없이 해당 CIDR이 접두사 목록에서 자동으로 추가/제거

## 사전 조건
<a name="prerequisites"></a>

시작하기 전에 다음을 갖추었는지 확인하세요.
+ [고급 티어](https://docs.aws.amazon.com/vpc/latest/ipam/mod-ipam-tier.html)가 활성화된 [IPAM](https://docs.aws.amazon.com/vpc/latest/ipam/create-ipam.html)
+ [고객 관리형 접두사 목록](https://docs.aws.amazon.com/vpc/latest/userguide/managed-prefix-lists.html#create-prefix-list)(또는 설정 중에 생성)
+ [IPAM 및 EC2 접두사 목록 작업에 대한 IAM 권한](https://docs.aws.amazon.com/vpc/latest/ipam/iam-ipam.html)

## 설정 단계
<a name="setup-steps"></a>

### 1단계: IPAM 접두사 목록 해석기 생성
<a name="step-1-create-ipam-prefix-list-resolver"></a>

IPAM 접두사 목록 해석기를 생성하여 접두사 목록에 포함할 CIDR을 정의합니다.

------
#### [ AWS Management Console ]

**IPAM 접두사 목록 해석기를 생성하는 방법**

1. [IPAM 콘솔](https://console.aws.amazon.com/ipam/)을 엽니다.

1. 탐색 창에서 **관리형 접두사 목록**을 선택합니다.

1. **접두사 목록 해석기 생성**을 선택합니다.

1. **1단계: 해석기 세부 정보 구성**에서 다음 항목을 선택합니다.
   + **IPAM**: IPAM 인스턴스
   + **주소 패밀리**: IPv4 또는 IPv6
   + **이름 태그 - 선택 사항**: 설명이 포함된 이름
   + **설명 - 선택 사항**: 설명
   + **태그**: 리소스 태그

1. **다음**을 선택합니다.

1. **2단계: 규칙 구성**에서 **규칙 추가**를 선택합니다. 최대 99개의 규칙을 추가할 수 있습니다.
**중요**  
CIDR 선택 규칙 없이 접두사 목록 해석기를 생성할 수 있지만 규칙을 추가할 때까지 빈 버전(CIDR 없음)이 생성됩니다.

1. 규칙 유형 중 하나를 선택합니다.
   + **정적 CIDR**: 변경되지 않는 고정 CIDR 목록(예: 리전 간에 복제된 수동 목록)
   + **IPAM 풀 CIDR**: 특정 IPAM 풀의 CIDR(예: IPAM 프로덕션 풀의 CIDR)

     이 옵션을 설정하는 경우 다음을 선택해야 합니다.
     + **IPAM 범위**: 리소스를 검색할 IPAM 범위 선택
     + **조건**:
       + **속성**
         + **IPAM 풀 ID**: 리소스가 포함된 IPAM 풀 선택
         + **CIDR**(예: 10.24.34.0/23)
       + **작업**: 같음/같지 않음
       + **값**: 조건과 일치시킬 값
   + **범위 리소스 CIDR**: IPAM 범위 내의 VPC, 서브넷, EIP와 같은 AWS 리소스의 CIDR

     이 옵션을 설정하는 경우 다음을 선택해야 합니다.
     + **IPAM 범위**: 리소스를 검색할 IPAM 범위 선택
     + **리소스 유형**: VPC 또는 서브넷과 같은 리소스 선택
     + **조건**:
       + **속성**:
         + 리소스 ID: 리소스의 고유 ID(예: vpc-1234567890abcdef0)
         + 리소스 소유자(예: 111122223333)
         + 리소스 리전(예: us-east-1)
         + 리소스 태그(예: key: 이름, value: dev-vpc-1)
         + CIDR(예: 10.24.34.0/23)
       + **작업**: 같음/같지 않음
       + **값**: 조건과 일치시키는 값

1. **다음**을 선택합니다.

1. **검증 및 생성**을 선택합니다.

------
#### [ Command line ]

이 섹션의 명령은 *AWS CLI 명령 참조*로 연결됩니다. 이 설명서에서는 명령을 실행할 때 사용할 수 있는 옵션에 대한 자세한 설명을 제공합니다.

다음 AWS CLI 명령을 사용하여 IPAM 접두사 목록 해석기를 생성합니다.
+ [create-ipam-prefix-list-resolver](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-ipam-prefix-list-resolver.html) 명령을 사용하고, 반환된 해석기 ID를 2단계에서 사용할 수 있도록 저장합니다.

------

### 2단계: 접두사 목록에 연결할 해석기 대상 생성
<a name="step-2-create-resolver-target"></a>

해석기 대상을 생성하여 해석기를 기존 접두사 목록에 연결합니다. 1단계에서 반환된 해석기 ID를 사용합니다.

------
#### [ AWS Management Console ]

**IPAM 접두사 목록 해석기 대상을 생성하는 방법**

1. IPAM 콘솔에서 **접두사 목록 해석기**를 선택합니다.

1. 1단계에서 생성한 해석기를 선택합니다.

1. 해석기 세부 정보 페이지에서 **대상** 탭을 선택합니다.

1. **대상 생성**을 선택합니다.

1. 대상 구성
   + **리전**: 기존 관리형 접두사 목록이 있거나 생성할 리전을 선택합니다.
   + **접두사 목록**: 기존 관리형 접두사 목록을 선택하거나 새 접두사 목록을 생성합니다.

1. **원하는 버전**에서 다음 중 하나를 선택합니다.
   + **항상 최신 버전 추적**: 수동 개입 없이 인프라 변경으로 접두사 목록을 최신 상태로 유지하려면 자동 업데이트에 이 항목을 선택합니다.
   + **특정 버전 추적**: 예측 가능하고 제어된 업데이트가 필요하고 접두사 목록의 변경 사항을 수동으로 승인하려는 경우 안정성을 위해 이 항목을 선택합니다.

1. **대상 생성**을 선택합니다.

------
#### [ Command line ]

이 섹션의 명령은 *AWS CLI 명령 참조*로 연결됩니다. 이 설명서에서는 명령을 실행할 때 사용할 수 있는 옵션에 대한 자세한 설명을 제공합니다.

다음 AWS CLI 명령을 사용하여 IPAM 접두사 목록 해석기 대상을 생성합니다.
+ 1단계의 해석기 ID 및 기존 접두사 목록 ID와 함께 [create-ipam-prefix-list-resolver-target](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-ipam-prefix-list-resolver-target.html) 명령을 사용합니다.

------

이제 IPAM이 규칙에 따라 접두사 목록을 자동으로 업데이트합니다. 접두사 목록은 기준과 일치하는 CIDR로 채워집니다.

### 3단계: 버전 및 동기화 모니터링
<a name="step-3-monitor-versions-synchronization"></a>

접두사 목록 해석기 및 대상을 생성하고 나면, 접두사 목록 해석기는 규칙에 따라 CIDR 버전을 생성하고, 대상이 해석기에서 해당 CIDR을 특정 관리형 접두사 목록으로 동기화됩니다. 각 버전은 해당 시점에 규칙과 일치하는 CIDR의 스냅샷입니다. 인프라 변경으로 인해 CIDR 목록이 변경될 때마다 버전 번호가 증가합니다.

**버전 예제:**

**초기 상태(버전 1)**

프로덕션 환경:
+ vpc-prod-web(10.1.0.0/16) - 태그가 지정된 env=prod
+ vpc-prod-db(10.2.0.0/16) - 태그가 지정된 env=prod

해석기 규칙: env=prod 태그가 지정된 모든 VPC 포함

**버전 1 CIDR:** 10.1.0.0/16, 10.2.0.0/16

**인프라 변경(버전 2)**

새 VPC가 추가됨:
+ vpc-prod-api(10.3.0.0/16) - 태그가 지정된 env=prod

IPAM은 변경 사항을 자동으로 감지하고 새 버전을 생성합니다.

**버전 2 CIDR:** 10.1.0.0/16, 10.2.0.0/16, 10.3.0.0/16

이 섹션에서는 AWS 콘솔 또는 AWS CLI를 사용하여 버전 생성을 모니터링하고 AWS CLI와 동기화가 성공했는지 모니터링하는 방법을 설명합니다.

또한 버전 및 접두사 목록 크기 제한을 유지하도록 CIDR 선택 규칙을 재평가하고 조정해야 할 수 있으므로 실패 지표에 대한 CloudWatch 경보를 설정하는 것이 좋습니다. IPAM 접두사 목록과 관련된 CloudWatch 지표 목록은 [IPAM 접두사 목록 해석기 지표](cloudwatch-ipam-ip-address-usage.md#cloudwatch-ipam-prefix-list-resolver-metrics) 섹션을 참조하세요.

------
#### [ AWS Management Console ]

**생성된 버전을 보고 대상 동기화를 모니터링하는 방법**

1. IPAM 콘솔에서 **접두사 목록 해석기**를 선택합니다.

1. 1단계에서 생성한 해석기를 선택합니다.

1. 해석기 세부 정보 페이지에서 **버전** 탭을 선택합니다. 여기에는 해석기가 생성한 모든 버전과 해당 버전의 CIDR이 표시됩니다.

1. 해석기 세부 정보 페이지에서 **모니터링** 탭을 선택합니다. 이 보기에서 [IPAM 접두사 목록 해석기 지표](cloudwatch-ipam-ip-address-usage.md#cloudwatch-ipam-prefix-list-resolver-metrics)는 그래프 형식으로 표시됩니다.
   + 접두사 목록 해석기 버전 생성 성공
   + 접두사 목록 해석기 버전 생성 실패

1. **모니터링** 탭에서 **접두사 목록 해석기 버전 생성에 대한 경보 생성**을 선택하여 CloudWatch 경보를 구성할 수도 있습니다. 경보가 지표에 대해 부분적으로 구성된 CloudWatch 콘솔로 이동합니다. 경보 생성을 완료하는 방법에 대한 자세한 내용은 *Amazon CloudWatch 사용 설명서*의 [정적 임계값을 기반으로 CloudWatch 경보 생성](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/ConsoleAlarms.html)을 참조하세요.

------
#### [ Command line ]

이 섹션의 명령은 *AWS CLI 명령 참조*로 연결됩니다. 이 설명서에서는 명령을 실행할 때 사용할 수 있는 옵션에 대한 자세한 설명을 제공합니다.

다음 AWS CLI 명령을 사용하여 버전 및 동기화를 모니터링합니다.

1. [get-ipam-prefix-list-resolver-version-entries](https://docs.aws.amazon.com/cli/latest/reference/ec2/get-ipam-prefix-list-resolver-version-entries.html) 명령을 사용하여 해석기가 생성한 최신 버전을 확인합니다.

1. [describe-ipam-prefix-list-resolver-targets](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-ipam-prefix-list-resolver-targets.html) 명령을 사용하여 해석기 대상 동기화 상태를 모니터링합니다.

모니터 명령에 다음 내용이 표시됩니다.
+ 상태 - 현재 동기화 상태(create-complete, modify-complete 등)
+ lastSyncedVersion - 마지막으로 성공적으로 동기화된 버전
+ desiredVersion - 동기화할 대상 버전
+ stateMessage - 동기화에 실패한 경우 오류 세부 정보

------

**중요**  
롤백 워크플로를 지원하기 위해 IPAM은 각 대상에 대해 이전 10개의 접두사 목록 해석기 버전의 사본을 보존합니다. 또한 IPAM은 추가 7일 동안 참조되지 않은 상태로 유지되는 경우이 임계값보다 오래된 버전을 삭제합니다.

### 4단계: (선택 사항) IPAM 접두사 목록 동기화 활성화 및 비활성화
<a name="step-4-optional-enable-disable-sync"></a>

관리형 접두사 목록이 IPAM 접두사 목록 대상으로 구성되어 있고 IPAM 접두사 목록 해석기 대상에 액세스할 권한 없이 접두사 목록을 변경하려는 경우 [관리형 접두사 목록을 수정](https://docs.aws.amazon.com/vpc/latest/userguide/work-with-cust-managed-prefix-lists.html#modify-managed-prefix-list)하고 IPAM 접두사 목록 해석기와 동기화를 비활성화할 수 있습니다. 비활성화하면 접두사 목록 CIDR이 자동으로 업데이트되지 않으므로 변경할 수 있습니다. 활성화하면 접두사 목록 CIDR은 연결된 해석기의 CIDR 선택 규칙에 따라 자동으로 업데이트됩니다.