

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

# Managed Service for Apache Flink 애플리케이션 생성
<a name="how-creating-apps"></a>

이 주제에는 Managed Service for Apache Flink 애플리케이션을 생성하는 방법에 관한 자세한 내용이 포함되어 있습니다.

**Topics**
+ [Managed Service for Apache Flink 애플리케이션 코드 빌드](#how-creating-apps-building)
+ [Managed Service for Apache Flink 애플리케이션 생성](#how-creating-apps-creating)
+ [고객 관리형 키 사용](#how-creating-apps-use-cmk)
+ [Managed Service for Apache Flink 애플리케이션 시작](#how-creating-apps-starting)
+ [Managed Service for Apache Flink 애플리케이션 확인](#how-creating-apps-verifying)
+ [Managed Service for Apache Flink 애플리케이션의 시스템 롤백 활성화](how-system-rollbacks.md)

## Managed Service for Apache Flink 애플리케이션 코드 빌드
<a name="how-creating-apps-building"></a>

이 섹션에서는 Managed Service for Apache Flink 애플리케이션의 애플리케이션 코드를 빌드하는 데 사용하는 구성 요소에 대해 설명합니다.

지원되는 최신 버전의 Apache Flink를 애플리케이션 코드에 사용하는 것이 좋습니다. Managed Service for Apache Flink 애플리케이션 업그레이드에 대한 자세한 내용을 알아보려면 [Apache Flink에 인플레이스 버전 업그레이드 사용](how-in-place-version-upgrades.md) 섹션을 참조하십시오.

[Apache Maven](https://maven.apache.org/)을 사용하여 애플리케이션 코드를 구축합니다. Apache Maven 프로젝트는 `pom.xml` 파일을 사용하여 해당 프로젝트에서 사용하는 구성 요소의 버전을 지정합니다.

**참고**  
Managed Service for Apache Flink는 최대 512MB 크기의 JAR 파일을 지원합니다. 이보다 큰 JAR 파일을 사용하면 애플리케이션이 시작되지 않습니다.

이제 애플리케이션은 모든 Scala 버전에서 Java API를 사용할 수 있습니다. 선택한 Scala 표준 라이브러리를 Scala 애플리케이션에 번들로 제공해야 합니다.

**Apache Beam**을 사용하는 Managed Service for Apache Flink 애플리케이션을 만드는 방법에 대한 자세한 내용을 알아보려면 [Managed Service for Apache Flink 애플리케이션에서 Apache Beam을 사용합니다.](how-creating-apps-beam.md) 섹션을 참조하십시오.

### 애플리케이션의 Apache Flink 버전 지정
<a name="how-creating-apps-building-flink"></a>

Managed Service for Apache Flink 런타임 버전 1.1.0 이상을 사용하는 경우 애플리케이션을 컴파일할 때 애플리케이션에서 사용하는 Apache Flink 버전을 지정합니다. `-Dflink.version` 파라미터와 함께 Apache Flink 버전을 제공합니다. 예를 들어 Apache Flink 2.2.0을 사용하는 경우 다음을 제공합니다.

```
mvn package -Dflink.version=2.2.0
```

이전 버전의 Apache Flink를 사용하여 애플리케이션을 빌드하려면 [이전 버전](earlier.md) 섹션을 참조하세요.

## Managed Service for Apache Flink 애플리케이션 생성
<a name="how-creating-apps-creating"></a>

애플리케이션 코드를 구축한 후에는 다음을 수행하여 Managed Service for Apache Flink(Amazon MSF) 애플리케이션을 생성합니다.
+ **애플리케이션 코드 업로드**: Amazon S3 버킷에 애플리케이션 코드를 업로드합니다. 애플리케이션 코드의 S3 버킷 명칭과 객체 명칭은 애플리케이션을 생성할 때 지정합니다. 애플리케이션 코드를 업로드하는 방법을 보여주는 자습서는 [자습서: Managed Service for Apache Flink에서 DataStream API 사용 시작하기](getting-started.md) 자습서를 참조하세요.
+ **Managed Service for Apache Flink 애플리케이션 만들기**: 다음 방법 중 하나를 사용하여 Amazon MSF 애플리케이션을 생성합니다.
**참고**  
Amazon MSF는 기본적으로를 사용하여 애플리케이션을 암호화합니다 AWS 소유 키. AWS KMS 고객 관리형 키(CMKs)를 사용하여 새 애플리케이션을 생성하여 직접 키를 생성, 소유 및 관리할 수도 있습니다. CMK에 관한 자세한 내용은 [Amazon Managed Service for Apache Flink의 키 관리](key-management-flink.md) 섹션을 참조하세요.
  + ** AWS 콘솔을 사용하여 Amazon MSF 애플리케이션 생성:** AWS 콘솔을 사용하여 애플리케이션을 생성하고 구성할 수 있습니다.

    콘솔을 사용하여 애플리케이션을 생성하면 애플리케이션의 종속 리소스(예: CloudWatch Logs 스트림, IAM 역할, IAM 정책)가 자동으로 생성됩니다.

    콘솔을 사용하여 애플리케이션을 생성할 때는 **Managed Service for Apache Flink - 애플리케이션 생성** 페이지의 풀다운에서 애플리케이션을 선택하여 애플리케이션에서 사용하는 Apache Flink 버전을 지정합니다.

    콘솔을 사용하여 애플리케이션을 생성하는 방법에 대한 자습서는 [자습서: Managed Service for Apache Flink에서 DataStream API 사용 시작하기](getting-started.md) 자습서를 참조하세요.
  + ** AWS CLI를 사용하여 Amazon MSF 애플리케이션 생성:** AWS CLI를 사용하여 애플리케이션을 생성하고 구성할 수 있습니다.

    CLI를 사용하여 애플리케이션을 생성할 때는 애플리케이션의 종속 리소스(예: CloudWatch Logs 스트림, IAM 역할, IAM 정책)도 수동으로 생성해야 합니다.

    CLI를 사용하여 애플리케이션을 만들 때는 `CreateApplication` 작업의 `RuntimeEnvironment` 파라미터를 사용하여 애플리케이션에서 사용하는 Apache Flink 버전을 지정합니다.
**참고**  
기존 애플리케이션의 `RuntimeEnvironment`를 변경할 수 있습니다. 자세한 방법은 [Apache Flink에 인플레이스 버전 업그레이드 사용](how-in-place-version-upgrades.md)을 참조하세요.

## 고객 관리형 키 사용
<a name="how-creating-apps-use-cmk"></a>

Amazon MSF에서 고객 관리형 키(CMKs)는 ()에서 생성, 소유 및 관리하는 키로 애플리케이션의 데이터를 암호화할 수 있는 기능입니다 AWS Key Management Service AWS KMS. Amazon MSF 애플리케이션에서는 Flink [체크포인트](how-fault.md) 또는 [스냅샷](how-snapshots.md) 대상이 되는 모든 데이터가 사용자가 해당 애플리케이션용으로 정의한 CMK로 암호화된다는 의미입니다.

애플리케이션에서 CMK를 사용하려면 먼저 [새 애플리케이션을 생성](#how-creating-apps-creating)한 다음 CMK를 적용해야 합니다. CMK 사용에 관한 자세한 내용은 [Amazon Managed Service for Apache Flink의 키 관리](key-management-flink.md) 섹션을 참조하세요.

## Managed Service for Apache Flink 애플리케이션 시작
<a name="how-creating-apps-starting"></a>

애플리케이션 코드를 구축하고, S3에 업로드하고, Managed Service for Apache Flink 애플리케이션을 생성한 후 애플리케이션을 시작합니다. Managed Service for Apache Flink 애플리케이션을 시작하는 데 일반적으로 몇 분이 걸립니다.

애플리케이션을 시작하려면 다음 방법 중 하나를 사용합니다.
+ ** AWS 콘솔을 사용하여 Managed Service for Apache Flink 애플리케이션을 시작합니다.** AWS 콘솔의 애플리케이션 페이지에서 **실행**을 선택하여 애플리케이션을 실행할 수 있습니다.
+ ** AWS API를 사용하여 Managed Service for Apache Flink 애플리케이션을 시작합니다.** [StartApplication](https://docs.aws.amazon.com/managed-flink/latest/apiv2/API_StartApplication.html) 작업을 사용하여 애플리케이션을 실행할 수 있습니다.

## Managed Service for Apache Flink 애플리케이션 확인
<a name="how-creating-apps-verifying"></a>

다음과 같은 방법으로 애플리케이션이 작동하는지 확인할 수 있습니다.
+ **CloudWatch Logs 사용:** CloudWatch Logs 및 CloudWatch Logs Insights를 사용하여 애플리케이션이 제대로 실행되고 있는지 확인할 수 있습니다. Managed Service for Apache Flink 애플리케이션과 함께 CloudWatch Logs를 사용하는 방법에 대한 자세한 내용을 알아보려면 [Amazon Managed Service for Apache Flink의 로깅 및 모니터링](monitoring-overview.md) 섹션을 참조하십시오.
+ **CloudWatch 지표 사용:** CloudWatch 지표를 사용하여 애플리케이션의 활동 또는 애플리케이션이 입력 또는 출력에 사용하는 리소스(예: Kinesis 스트림, Firehose 스트림 또는 Amazon S3 버킷)에서의 활동을 모니터링할 수 있습니다. CloudWatch 지표에 대한 자세한 내용을 알아보려면 Amazon CloudWatch 사용자 가이드의 [지표 작업](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/working_with_metrics.html)을 참조하세요.
+ **출력 위치 모니터링:** 애플리케이션이 특정 위치(예: Amazon S3 버킷 또는 데이터베이스)에 출력을 기록하는 경우 해당 위치에서 기록된 데이터를 모니터링할 수 있습니다.